A while back I moved my rt instance, mostly debianized it, and stabilized on RT 3.6.7 (decompressed on top of the 3.6.5 deb). I recently found that external emails were no longer creating new accounts.
It’s possible that I fixed the problem along the way and that my email account I was testing from was sending my ‘RealName’ and we were matching on that.
[Thu Nov 6 01:54:45 2008] [error]: RT could not load a valid user, and RT's configuration does not allow for the creation of a new user for your email. (/usr/share/request-tracker3.6/lib/RT/Interface/Email.pm:243) [Thu Nov 6 01:54:45 2008] [error]: Could not record email: Could not load a valid user (/usr/share/request-tracker3.6/html/REST/1.0/NoAuth/mail-gateway:75) [Thu Nov 6 02:09:46 2008] [crit]: User creation failed in mailgateway: Name in use (/usr/share/request-tracker3.6/lib/RT/Interface/Email.pm:243) [Thu Nov 6 02:09:46 2008] [crit]: User 'test@example.org' could not be loaded in the mail gateway (/usr/share/request-tracker3.6/lib/RT/Interface/Email.pm:243) [Thu Nov 6 02:09:47 2008] [err]: Couldn't load from the users database. (/usr/share/request-tracker3.6/lib/RT/CurrentUser.pm:147) [Thu Nov 6 02:09:47 2008] [err]: Couldn't load from the users database. (/usr/share/request-tracker3.6/lib/RT/CurrentUser.pm:147) [Thu Nov 6 02:09:47 2008] [error]: Couldn't create ticket from message with commands, fallback to standard mailgate. Error: No permission to create tickets in the queue 'lposupport' (/usr/share/perl5/RT/Interface/Email/Filter/TakeAction.pm:504) [Thu Nov 6 02:09:47 2008] [crit]: Couldn't create ticket from message with commands, fallback to standard mailgate. Error: No permission to create tickets in the queue 'lposupport' (/usr/share/request-tracker3.6/lib/RT/Interface/Email.pm:243) [Thu Nov 6 02:09:47 2008] [error]: RT could not load a valid user, and RT's configuration does not allow for the creation of a new user for this email (test@example.org). You might need to grant 'Everyone' the right 'CreateTicket' for the queue lposupport. (/usr/share/request-tracker3.6/lib/RT/Interface/Email.pm:243)
I had to reconfigure my configs during the move. Of course I checked the queue permissions, then expected that $AutoCreateNonExternalUsers was not set to 1. Neither was the solution. I installed the latest versions of RT and ExternalAuth from source. Still not working. The trick? I found a recommended change to the LDAP attr_match_list, reducing it to just Name and EmailAddress. This makes sense from the newer logs I saw in debugging.
Upgrading also led me to a new error about d_filter not being set. I used the following, taken from this thread:
'd_filter' => '(userAccountControl:1.2.840.113556.1.4.803:=2)',
And the logs:
[Thu Nov 6 05:02:00 2008] [debug]: Going to create user with address 'test@example.org' (/opt/rt3/bin/../lib/RT/Interface/Email/Auth/MailFrom.pm:94) [Thu Nov 6 05:02:00 2008] [debug]: RT::User::CanonicalizeUserInfo called by RT::User /opt/rt3/bin/../lib/RT/User_Overlay.pm 128 with: Comments: Autocreated on ticket submission, Disabled: 0, EmailAddress: test@example.org, Name: info@imob.org, Password: , Privileged: 0, RealName: Bryan McLellan (/usr/share/perl5/RT /User_Vendor.pm:400) [Thu Nov 6 05:02:00 2008] [debug]: Attempting to get user info using this external service: My_LDAP (/usr/share/perl5/RT/User_Vendor.pm:408) [Thu Nov 6 05:02:00 2008] [debug]: Attempting to use this canonicalization key: Name (/usr/share/perl5/RT/User_Vendor.pm:417) [Thu Nov 6 05:02:01 2008] [debug]: LDAP Search === Base: dc=corp,dc=example,dc=org == Filter: (&(objectclass=user)(sAMAccountName=test@example.org)) == Attrs : l,cn,st,mail,sAMAccountName,co,streetAddress,postalCode,telephoneNumber,sAMAccountName,physicalDeliveryOfficeName,sAMAccountName (/usr/share/perl5/RT/User_ Vendor.pm:538) [Thu Nov 6 05:02:01 2008] [info]: RT::User::LookupExternalUserInfo : Returning: EmailAddress: , Name: , RealName: (/usr/share/perl5/RT/User_Vendor.pm:703) [Thu Nov 6 05:02:01 2008] [debug]: RT::User::LookupExternalUserInfo No user was found this time (/usr/share/perl5/RT/User_Vendor.pm:706) [Thu Nov 6 05:02:01 2008] [debug]: Attempting to use this canonicalization key: EmailAddress (/usr/share/perl5/RT/User_Vendor.pm:417) [Thu Nov 6 05:02:02 2008] [debug]: LDAP Search === Base: dc=corp,dc=example,dc=org == Filter: (&(objectclass=user)(mail=test@example.org)) == Attrs: l,cn,st,mail,sAMAccountName,co,streetAddress,postalCode,telephoneNumber,sAMAccountName,physicalDeliveryOfficeName,sAMAccountName (/usr/share/perl5/RT/User_Vendor.pm:538) [Thu Nov 6 05:02:02 2008] [info]: RT::User::LookupExternalUserInfo : Returning: EmailAddress: , Name: , RealName: (/usr/share/perl5/RT/User_Vendor.pm:703) [Thu Nov 6 05:02:02 2008] [debug]: RT::User::LookupExternalUserInfo No user was found this time (/usr/share/perl5/RT/User_Vendor.pm:706) [Thu Nov 6 05:02:02 2008] [debug]: Attempting to use this canonicalization key: RealName (/usr/share/perl5/RT/User_Vendor.pm:417) [Thu Nov 6 05:02:03 2008] [debug]: LDAP Search === Base: dc=corp,dc=example,dc=org == Filter: (&(objectclass=user)(cn=Bryan McLellan)) == Attrs: l,cn,st,mail,sAMAccountName,co,streetAddress,postalCode,telephoneNumber,sAMAccountName,physicalDeliveryOfficeName,sAMAccountName (/usr/share/perl5/RT/User_Vendor.pm:538) [Thu Nov 6 05:02:03 2008] [info]: RT::User::LookupExternalUserInfo : Returning: Address1: , City: , Country: , EmailAddress: bryanm@widemile.com, ExternalAuthId: bryanm, Gecos: bryanm, Name: bryanm, Organization: , RealName: Bryan Mclellan, State: , WorkPhone: 206-985-7171 x117, Zip: (/usr/share/perl5/RT/User_Vendor.pm:703) [Thu Nov 6 05:02:03 2008] [info]: RT::User::CanonicalizeUserInfo returning Address1: , City: , Comments: Autocreated on ticket submission, Country: , Disabled: 0, EmailAddress: bryanm@widemile.com, ExternalAuthId: bryanm, Gecos: bryanm, Name: bryanm, Organization: , Password: , Privileged: 0, RealName: Bryan Mclellan, State: , WorkPhone: 206-985-7171 x117, Zip: (/usr/share/perl5/RT/User_Vendor.pm:444) [Thu Nov 6 05:02:03 2008] [crit]: User creation failed in mailgateway: Name in use (/opt/rt3/bin/../lib/RT/Interface/Email.pm:244) [Thu Nov 6 05:02:04 2008] [warning]: Couldn't load user 'test@example.org'.giving up (/opt/rt3/bin/../lib/RT/Interface/Email.pm:806) [Thu Nov 6 05:02:04 2008] [crit]: User 'info@imob.org' could not be loaded in the mail gateway (/opt/rt3/bin/../lib/RT/Interface/Email.pm:244) [Thu Nov 6 05:02:04 2008] [error]: RT could not load a valid user, and RT's configuration does not allow for the creation of a new user for this email (test@example.org). You might need to grant 'Everyone' the right 'CreateTicket' for the queue lposupport. (/opt/rt3/bin/../lib/RT/Interface/Email.pm:244)