
Hi, Thanks for all your help. I now have it working. I copied the bit about filtering out computers and invalid accounts and pasted into the config.pm file and I left the rest alone as this was working correctly. So my complete LDAP config looks like this: ## Set up LDAP for Customer authentication to the Frontend for customers. $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP'; $Self->{'Customer::AuthModule::LDAP::Host'} = '192.168.1.10'; # The ou= is your NT Domain name. The dc= (there may be more than one) is your AD domain name. $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=woodberry, dc=wbhltd, dc=com'; $Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName'; # Our AD requures a valid login to do LDAP searches. Use a generic one, not admin, not your own. $Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'otrs'; $Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'whatever'; # We only need to see users. Not computers and no disabled users. $Self->{'Customer::AuthModule::LDAP::AlwaysFilter'} = '(&(!(objectClass=Computer))(!(userAccountControl:1.2.840.113556.1.4.803:=2)))'; ## Set up LDAP for finding Customers when creating tickets in the Agent Frontend. $Self->{CustomerUser} = { Name => 'Exchange LDAP', Module => 'Kernel::System::CustomerUser::LDAP', Params => { # Parameters are basically the same as above. Host => '192.168.1.10', BaseDN => 'dc=woodberry, dc=wbhltd, dc=com', SSCOPE => 'sub', UserDN => 'otrs', UserPw => 'whatever', # if your frontend is e. g. iso-8859-1 and the charset of your # ldap server is utf-8, use this options (if not, ignore it) ### IMPORTANT FOR NON-ENGLISH USERS WITH SPECIAL CHARACTERS ### # You *have* to specify the SourceCharset below, else OTRS will default to # iso8859-1 (I think), and special characters will be garbled. This took me # half a day to figure out. SourceCharset => 'utf-8', DestCharset => 'utf-8', # We only need to see users. Not computers and no disabled users. AlwaysFilter => '(&(!(objectClass=Computer))(!(userAccountControl:1.2.840.113556.1.4.803:=2)))', }, CustomerKey => 'sAMAccountName', CustomerID => 'mail', CustomerUserListFields => ['sAMAccountName', 'cn', 'mail'], CustomerUserSearchFields => ['sAMAccountName', 'cn', 'mail'], CustomerUserPostMasterSearchFields => ['mail'], CustomerUserNameFields => ['givenname', 'sn'], Map => [ ## Set-up the fields you want to import from LDAP. # note: Login, Email and CustomerID needed! # var, frontend, storage, shown, required, storage-type # [ 'UserSalutation', 'Title', 'title', 1, 0, 'var' ], [ 'UserFirstname', 'Firstname', 'givenname', 1, 1, 'var' ], [ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var' ], [ 'UserLogin', 'Login', 'sAMAccountName', 1, 1, 'var' ], [ 'UserEmail', 'Email', 'mail', 1, 1, 'var' ], [ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var' ], [ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var' ], # [ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var' ], # [ 'UserComment', 'Comment', 'description', 1, 0, 'var' ], ], }; However I still couldn't log in to the customer frontend. So I took your suggestion of looking in the otrs.log file (I didn't know there was one so I never looked before) and this is what it said: "Fri Feb 22 10:38:08 2008][Notice][Kernel::System::CustomerAuth::LDAP::Auth] CustomerUser: Leigh Reed@wbhltd.com@wbhltd.com authentification failed, no LDAP entry found!BaseDN='dc=woodberry, dc=wbhltd, dc=com', Filter='(&(sAMAccountName=Leigh Reed@wbhltd.com@wbhltd.com)(&(!(objectClass=Computer))(!(userAccountControl:1.2.840.113556.1.4.803:=2))))', (REMOTE_ADDR: 127.0.0.1)." Notice the part where it says "CustomerUser: Leigh Reed@wbhltd.com@wbhltd.com mailto:Reed@wbhltd.com@wbhltd.com ". It hit me that I had changed the Customer::AuthModule::LDAP::UserSuffix: to @wbhltd.com in the Frontend::Customer::Auth option in SysConfig > Framework when I first started messing about with the LDAP configuration a few days ago. So instead of sending the login "Leigh Reed@wbhltd.com" which is correct it was adding another @wbhltd.com to end making it incorrect. I literally jumped out of my chair when it worked lol, it's been bugging me for days. Thanks again for everyone's help. Leigh ________________________________ From: otrs-bounces@otrs.org [mailto:otrs-bounces@otrs.org] On Behalf Of Sune T. Tougaard Sent: 22 February 2008 08:06 To: User questions and discussions about OTRS.org Subject: RE: [otrs] LDAP customer authentication with AD not workng, please help? Hi Leigh, The customer data and customer login, i think, is actually two different parts of config.pm. Here's parts of my working config. Replace the obvious enclosed in <>. # Customer Authentication backend. $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP'; # Have seen a few issues when using specific hostnames or IP addresses. Using domain works. $Self->{'Customer::AuthModule::LDAP::Host'} = '<subdom>.<dom>.<tld>'; # Where do you want to start searching? $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'DC=<subdom>,DC=<dom>,DC=<tld>'; # What LDAP attribute would you like to use as User ID in OTRS? $Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName'; # LDAP search credentials. Dunno if a full DN is required or if just the username is enough. Have only tried this. $Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'CN=<username>,OU=<yet another OU>,OU=<users OU>,DC=<subdom>,DC=<dom>,DC=<tld>'; $Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = '<password>'; # We only need to see users. Not computers and no disabled users. $Self->{'Customer::AuthModule::LDAP::AlwaysFilter'} = '(&(!(objectClass=Computer))(!(userAccountControl:1.2.840.113556.1.4.803:=2)))'; ** # Customer DATA backend. $Self->{CustomerUser} = { Name => '<displayname>', Module => 'Kernel::System::CustomerUser::LDAP', Params => { Host => '<subdom>.<dom>.<tld>', BaseDN => 'DC=<sub>,DC=<dom>,DC=<tld>', # Search Scope. (one|sub). One-Level or entire Sub-Tree SSCOPE => 'sub', # LDAP search credentials. Dunno if a full DN is required or if just the username is enough. Have only tried this. UserDN => 'CN=<username>,OU=<yet another OU>,OU=<users OU>,DC=<subdom>,DC=<dom>,DC=<tld>', UserPw => '<password>', # This is needed to avoid issues with ae, oe, aa. Dunno what happens or if it's entirely correct. SourceCharset => 'utf-8', DestCharset => 'utf-8', # We only need to see users. Not computers and no disabled users. AlwaysFilter => '(&(!(objectClass=Computer))(!(userAccountControl:1.2.840.113556.1.4.803:=2)))', }, <i think this matches your config> }; Event though the web-interface says "Login failed! Your username or password was entered incorrectly.", you may be able to find additional info about the error in the OTRS log file. -- /Sune -----Original Message----- From: otrs-bounces@otrs.org [mailto:otrs-bounces@otrs.org] On Behalf Of Leigh Reed Sent: 21. februar 2008 18:07 To: User questions and discussions about OTRS.org Subject: RE: [otrs] LDAP customer authentication with AD not workng, please help? Hi, Thank for the quick reply. For some strange reason that config I posted works to some degree. If I log in to the agent frontend, click on admin and then click Customer Users and do a search I can find every object listed in our AD (including users, computers and even old accounts that were deleted). I don't know why it took such a long time to populate as I couldn't find a single user a couple of hours ago. Thinking I had cracked it I tried to log in to the customer frontend but I still get the same error no matter what I use as a login name. This seems very strange to me. If it is communicating with AD and can find the users, how come I can't login to the customer frontend? Thank you Leigh -----Original Message----- From: otrs-bounces@otrs.org [mailto:otrs-bounces@otrs.org] On Behalf Of Lars Jørgensen Sent: 21 February 2008 16:50 To: User questions and discussions about OTRS.org Subject: Re: [otrs] LDAP customer authentication with AD not workng,please help? Den 21/02/2008 kl. 16.27 skrev leighreed@wbhltd.com:
$Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=woodberry, dc=wbhltd, dc=com';
Try this: $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'ou=woodberry, dc=woodberry, dc=wbhltd, dc=com'; -- Lars _______________________________________________ OTRS mailing list: otrs - Webpage: http://otrs.org/ Archive: http://lists.otrs.org/pipermail/otrs To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/otrs Support or consulting for your OTRS system? => http://www.otrs.com/ _______________________________________________ OTRS mailing list: otrs - Webpage: http://otrs.org/ Archive: http://lists.otrs.org/pipermail/otrs To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/otrs Support or consulting for your OTRS system? => http://www.otrs.com/