
Hallo zusammen, ich versuche eine Agent-Auth. via LDAP zu konfigurieren. Anscheinend mangels ausreichender Perl-Kenntnisse habe ich dabei einige Probleme und bitte um Nachhilfe. Die Admin-Doku ist da leider nicht ausreichend für mich und in der Dev.-Doku finde ich nichts entsprechendes. *Wie läuft die Auth. via LDAP ab? Offenbar wird die DB ebenfalls benötigt. *Welche Attribute welcher Objekte werden womit verglichen? *messages sagt: OTRS-CGI-10[29564]: [Error][Kernel::System::Auth::LDAP::Auth][Line:276]: Search failed! base='cn=otrsagent,ou=Abt,o=company', filter='(member=testuser)', Success -Failed und Success in einer Meldung!?!? -member=testuser? Im Attr. member der Gruppe steht aber: 'cn=testuser,ou=Abt,o=company' 'testuser' wäre uid; ========================== System: -Der LDAP-Host ist eDir (KEIN MAD!) -DB (MySQL) ist auf entferntem Host scheint aber zu funktionieren (Ohne LDAP geht's) Vielen Dank für eure Unterstützung Bye Bernd Ab hier kommen Ausschnitte aus config.pm; messages und die Ergebnisse der ldap abfragen. ========================== Config.pm: $Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP'; $Self->{'AuthModule::LDAP::Host'} = 'ldap.domain.tld'; $Self->{'AuthModule::LDAP::BaseDN'} = 'ou=Abt,o=company'; $Self->{'AuthModule::LDAP::UID'} = 'uid'; <=Was soll hier stehen? Wozu ist der Eintrag gut? # Check if the user is allowed to auth in a posixGroup # (e. g. user needs to be in a group xyz to use otrs) $Self->{'AuthModule::LDAP::GroupDN'} = 'cn=otrsagent,ou=Abt,o=company'; $Self->{'AuthModule::LDAP::AccessAttr'} = 'member'; <=Was soll hier stehen? Wozu ist der Eintrag gut? # for ldap posixGroups objectclass (just uid) $Self->{'AuthModule::LDAP::UserAttr'} = 'entryDN'; <=Was soll hier stehen? Wozu ist der Eintrag gut? # for non ldap posixGroups objectclass (with full user dn) #$Self->{'AuthModule::LDAP::UserAttr'} = 'DN'; <=Was soll hier stehen? Wozu ist der Eintrag gut? # The following is valid but would only be necessary if the # anonymous user do NOT have permission to read from the LDAP tree $Self->{'AuthModule::LDAP::SearchUserDN'} = 'cn=ldapproxy,o=company'; #$Self->{'AuthModule::LDAP::SearchUserPw'} = ”; # in case you want to add always one filter to each ldap query, use # this option. e. g. AlwaysFilter => '(mail=*)' or AlwaysFilter => '(objectclass=user)' #$Self->{'AuthModule::LDAP::AlwaysFilter'} = ”; # in case you want to add a suffix to each login name, then # you can use this option. e. g. user just want to use user but # in your ldap directory exists user@domain. #$Self->{'AuthModule::LDAP::UserSuffix'} = '@domain.com'; # Net::LDAP new params (if needed - for more info see perldoc Net::LDAP) $Self->{'AuthModule::LDAP::Params'} = { port => 389, timeout => 120, async => 0, version => 3, }; # # agent data sync against ldap $Self->{'AuthSyncModule'} = 'Kernel::System::Auth::Sync::LDAP'; $Self->{'AuthSyncModule::LDAP::Host'} = 'ldap://ldap.domain.tld/'; $Self->{'AuthSyncModule::LDAP::BaseDN'} = 'ou=Abt,o=company'; $Self->{'AuthSyncModule::LDAP::UID'} = 'uid'; $Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'cn=ldapproxy,o=company'; #$Self->{'AuthSyncModule::LDAP::SearchUserPw'} = 'some_pass'; $Self->{'AuthSyncModule::LDAP::UserSyncMap'} = { # DB -> LDAP UserFirstname => 'givenName', UserLastname => 'sn', UserEmail => 'mail', Phone => 'telephoneNumber', Username => 'uid', comment => 'description', }; ========================== Ausgabe messages: OTRS-CGI-10[29564]: [Error][Kernel::System::Auth::LDAP::Auth][Line:276]: Search failed! base='cn=otrsagent,ou=Abt,o=company', filter='(member=testuser)', Success OTRS-CGI-10[29564]: [Error][Kernel::System::User::UserLookup][Line:696]: No UserID found for 'testuser'! ========================== Ergebnis einer Abfrage via ldapsearch: Nach dem Benutzer: dn: cn=testuser,ou=Abt,o=company homeDirectory: /home/testuser mail: testuser@domain.tld uid: testuser eMailAddress: testuser@domain.tld Nach der Gruppe: dn: cn=otrsagent,ou=Abt,o=company objectClass: groupOfNames objectClass: top member: cn=testuser,ou=Abt,o=company description: