LDAP-Anbindung für OTRS 3.0.1

Allgemein Fragen, deutsche News, Ankündigungen & Events zum OTRS
Post Reply
Jimi_Jones
Znuny newbie
Posts: 3
Joined: 08 Nov 2011, 13:21
Znuny Version: 3.0

LDAP-Anbindung für OTRS 3.0.1

Post by Jimi_Jones »

Hallo zusammen,

ich bekomme leider die LDAP-Andbindung nicht hin. Hier mal meine Config aus Config.pm:

Code: Select all

################################################################################################################################
#------------------------------------------------------------------------------------------------------------------------------#
#                                                        LDAP Anbindung Firma                                                  #
#------------------------------------------------------------------------------------------------------------------------------#

#------------------------------------------------------------------------------------------------------------------------------#
#                                     Authentifizierung Agenten via LDAP (AD) Firma                                            #
#------------------------------------------------------------------------------------------------------------------------------#

# Hier steht überall 1 hinter (AuthModule1, Host1, ...) 
# habe ich drin gelassen weil ich mehrere ADs abfrage und auch mehrere Firmen im OTRS habe
# wenn ihr nur eine habt kann die 1 überall weg. Ansonsten müsst ihr den ganzen Block halt pro Firma anlegen und einfach durchnummerieren

# Aber hier steht ein wichtiger Beitrag von jojo
# http://forums.otrs.org/viewtopic.php?f=17&t=7423
# da bin ich auch drauf reingefallen bezüglich der Nummerierung, muss man halt erst mal wissen:-)

$Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
$Self->{'AuthModule::LDAP::Host'} = 'IP-Adresse des DC';# hier kann auch ein DNS Eintrag rein
$Self->{'AuthModule::LDAP::BaseDN'} = 'dc=unsere domäne,dc=de'; # lest euch die Seiten die ich oben verlinkt habe durch,
# dann wird DN,OU, DC usw. alles klar:-) 
$Self->{'AuthModule::LDAP::UID'} = 'samaccountname';
$Self->{'AuthModule::LDAP::GroupDN'} = 'cn=OTRSusers,ou=Groups,ou=Administration,dc=unsere Domäne,dc=de'; # nur Mitlieder dieser Gruppe dürfen sich einloggen
$Self->{'AuthModule::LDAP::AccessAttr'} = 'member'; # bei 2008er Domänen ist es 'member' bei 2003er ist es 'memberUID'*
$Self->{'AuthModule::LDAP::UserAttr'} = 'DN';
#$Self->{'AuthModule::LDAP::SearchUserDN'} = 'cn=OTRSLDAP,ou=Users,dc=kjc-netz,dc=de'; #hier geht es auch mit dem user Principal Name, 
# oder eben die DN des Bindusers, war bei mir ne böse Falle weil ich es nicht wörtlich genug genommen habe. Die SearchUserDN ist nicht die DN 
# in der der User liegt sondern die eindeutige des Users, das gleiche gilt für die GroupDNs
# der Search User muss Mitglied in "Domänen-Benutzer" und in "Windows-Authentifizierungszugriffgruppe" sein
$Self->{'AuthModule::LDAP::SearchUserDN'} = 'OTRSL@unseredomäne.de';
$Self->{'AuthModule::LDAP::SearchUserPw'} = 'Passwort;

     $Self->{'UserSyncLDAPMap'} =  {
     'UserEmail' => 'mail',
     'UserFirstname' => 'givenName',
     'UserLastname' => 'sn',
     'UserLogin' => 'sAMAccountName'
	};

################################################################################################################################
#------------------------------------------------------------------------------------------------------------------------------#
#                                                            Customer                                                          #
#------------------------------------------------------------------------------------------------------------------------------#
        $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
        $Self->{'Customer::AuthModule::LDAP::Host'} = 'IP-Adresse des DC';
        $Self->{'Customer::AuthModule::LDAP::BaseDN'} ='OU=Users,OU=Usergruppe,dc=unsere domäne,dc=de'; # hier die DN
		# in der eure User liegen, kommt halt drauf an wie eurer AD strukturiert ist
        $Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
		$Self->{'Customer::AuthModule::LDAP::GroupDN'} = 'CN=Users,CN=Usergruppe,dc=unsere domäne,dc=de'; # das gleiche wie bei den Agents
		# nur wer in der Gruppe 'otrscustomer' ist darf sich einloggen
		$Self->{'Customer::AuthModule::LDAP::AccessAttr'} = 'member'; #s.o.
        $Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'otrs@unseredomäne.de'; #s.o. das hier wäre dann der userPrincipalName
		#ob es irgenwelche Nachteile hat wenn man den userPrincipalName anstatt der DN nimmt weiss ich nicht...
        $Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'Passwort';
		$Self->{'Customer::AuthModule::LDAP::Params'} = {
            port => 389,
            timeout => 120,
            async => 0,
            version => 3,
			};
	
#------------------------------------------------------------------------------------------------------------------------------#
#                                                       LDAP System Users                                                      #
#------------------------------------------------------------------------------------------------------------------------------#
        $Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
        $Self->{'AuthModule::LDAP::Host'} =  'IP-Adresse des DC;
        $Self->{'AuthModule::LDAP::BaseDN'} =  'dc=unsere domäne,dc=de';
        $Self->{'AuthModule::LDAP::UID'} =  'sAMAccountName';
        $Self->{'AuthModule::LDAP::SearchUserDN'} =  'OTRSLDAP@unsere domäne.de';
        $Self->{'AuthModule::LDAP::SearchUserPw'} =  'Passwort';
        $Self->{'AuthModule::LDAP::Params'} =  {
              'async' => '0',
              'timeout' => '120',
              'version' => '3',
              'port' => '389'
			};

		$Self->{'AuthModule::LDAP::Die'} = 1;
	
#------------------------------------------------------------------------------------------------------------------------------#
#                                                           UserSyncLDAPMap                                                    #
#------------------------------------------------------------------------------------------------------------------------------#

      $Self->{'UserSyncLDAPMap'} =  {
      'UserEmail' => 'mail',
      'UserFirstname' => 'givenName',
      'UserLastname' => 'sn',
      'UserLogin' => 'sAMAccountName'
    };      

    $Self->{CustomerUser} = {
    Name => 'Firma Customer',
    Module => 'Kernel::System::CustomerUser::LDAP',
	Params => {
    Host => 'IP-Adresse des DC',
    BaseDN => 'dc=unsere domäne,dc=de', 
    SSCOPE => 'sub',
    UserDN => 'OTRSLDAP@unsere domäne.de', # wieder DN oder UserPrincipalName
    UserPw => 'Passwort',
	AlwaysFilter =>  '(&(objectclass=user)(mail=*.*@Firma.de))',
	# falls ihr was ausschliessen wollt:
	# AlwaysFilter =>  '(&(objectclass=user)(mail=*.*@Firma.de)(!((was auch immer)))',
    },
    CustomerKey => 'sAMAccountName',
    CustomerID => 'mail',
    CustomerUserListFields => ['sAMAccountName', 'cn', 'mail'],
    CustomerUserSearchFields => ['sAMAccountName', 'cn', 'mail'],
	CustomerUserPostMasterSearchFields => ['mail'],
    CustomerUserNameFields => ['givenname', 'sn'],
	CustomerUserSearchListLimit => 1000,  # die Anzahl der User die in euerer Kundenübersicht maximal angezeit werden.
    # die Zeile muss nicht rein, macht aber bei uns hier Sinn.	

    Map => [
    [ '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' ],
    ],
    };

#------------------------------------------------------------------------------------------------------------------------------#
#                                                     Firma Ende                                                               #
#------------------------------------------------------------------------------------------------------------------------------#
################################################################################################################################
Hier noch die Logs wenn ich mich als Agent anmelden will:

First bind failed! 80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 52e, v1db1

Hoffentlich reicht das als Infos.

Beste Grüße
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Re: LDAP-Anbindung für OTRS 3.0.1

Post by jojo »

Du hast einen Fehler (Falscher Benutzer und/oder falsches Passwort) in diesen Zeilen:

$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'otrs@unseredomäne.de'; #s.o. das hier wäre dann der userPrincipalName
#ob es irgenwelche Nachteile hat wenn man den userPrincipalName anstatt der DN nimmt weiss ich nicht...
$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'Passwort';
"Production": OTRS™ 8, OTRS™ 7, STORM powered by OTRS
"Testing": ((OTRS Community Edition)) and git Master

Never change Defaults.pm! :: Blog
Professional Services:: http://www.otrs.com :: enjoy@otrs.com
Jimi_Jones
Znuny newbie
Posts: 3
Joined: 08 Nov 2011, 13:21
Znuny Version: 3.0

Re: LDAP-Anbindung für OTRS 3.0.1

Post by Jimi_Jones »

Danke für die schnelle Antwort.
Das Passwort war tatsächlich falsch, aber leider ohne Erfolg nach Eingabe des richtigen Passworts.
Auch die Fehlermeldung in der Log ist die gleiche.
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Re: LDAP-Anbindung für OTRS 3.0.1

Post by jojo »

dann stimmt der Benutzer nicht, benutze dort den DN des Benutzers
"Production": OTRS™ 8, OTRS™ 7, STORM powered by OTRS
"Testing": ((OTRS Community Edition)) and git Master

Never change Defaults.pm! :: Blog
Professional Services:: http://www.otrs.com :: enjoy@otrs.com
Jimi_Jones
Znuny newbie
Posts: 3
Joined: 08 Nov 2011, 13:21
Znuny Version: 3.0

Re: LDAP-Anbindung für OTRS 3.0.1

Post by Jimi_Jones »

Danke aber mal ne blöde Frage...was genau ist der DN des Benutzers? Wie bekomme ich den raus?
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Re: LDAP-Anbindung für OTRS 3.0.1

Post by jojo »

"Production": OTRS™ 8, OTRS™ 7, STORM powered by OTRS
"Testing": ((OTRS Community Edition)) and git Master

Never change Defaults.pm! :: Blog
Professional Services:: http://www.otrs.com :: enjoy@otrs.com
Post Reply