Kunden aus dem LDAP: Keine Daten gefunden

Hilfe zu Znuny Problemen aller Art
Locked
schleudertrauma
Znuny newbie
Posts: 2
Joined: 29 May 2012, 14:55
Znuny Version: Version 3.1

Kunden aus dem LDAP: Keine Daten gefunden

Post by schleudertrauma »

Servus zusammen,

so langsam bekomm ich hier echt nen Fön. Seit geschlagenen 6 Stunden hock ich hier und versuche, OTRS 3.1 an unser verdammtes LDAP anzubinden. Ich möchte keine Authentifizierung. Mir geht es lediglich darum, dass meine User aus einer bestimmten OU aus dem AD als Kunden ins OTRS gezogen werden. Die Installation läuft auf einem Windows 2003 Server, der sich nicht in der Domain befindet.

Das ganze scheint schon zu funktionieren. Zumindest bekomme ich im Log keine Fehlermeldungen mehr. Auch die Datenquelle unter Kunden wird angezeigt. Nur ist die Liste absolut leer. Es ist jetzt nicht so, dass ich mich zum ersten Mal mit einem AD und dem LDAP auseinandersetzen würde. Generell ist es kein Problem, mir Abfragen zu schreiben. Ich habe extra alle benötigten DNs nochmal mit dsquery überprüft und die Ausgaben direkt mit Copy&Past in die Config-Datei eingefügt.

Außerdem bin ich in meiner Verzweiflung jetzt dazu über gegangen, einfach das Codestück aus der Doku zu kopieren und für mich anzupassen:

Code: Select all


# CustomerUser
# (customer ldap backend and settings)
$Self->{CustomerUser} = {
    Name => 'LDAP Data Source',
    Module => 'Kernel::System::CustomerUser::LDAP',
    Params => {
        # ldap host
        Host => 'DENHPPAD001.PROD.MEINEFIRMA.COM',
        # ldap base dn
        BaseDN => 'OU=Employees,OU=Users,OU=DENH,OU=Germany,OU=EMEA,DC=prod,DC=MEINEFIRMA,DC=com',
        # search scope (one|sub)
        SSCOPE => 'sub',
        # The following is valid but would only be necessary if the
        # anonymous user does NOT have permission to read from the LDAP tree
        
	UserDN => 'CN=SVC-DENH-LDAP,OU=Service Accounts,OU=Users,OU=DENH,OU=Germany,OU=EMEA,DC=prod,DC=MEINEFIRMA,DC=com',
        UserPw => 'MEINPASSWORT',
		
	# in case you want to add always one filter to each ldap query, use
        # this option. e. g. AlwaysFilter => '(mail=*)' or AlwaysFilter => '(objectclass=user)'
        AlwaysFilter => '',
            # if both your frontend and your LDAP are unicode, use this:
            SourceCharset => 'utf-8',
            DestCharset   => 'utf-8',
            # if your frontend is unicode and the charset of your
            # ldap server is iso-8859-1, use these options.
            # SourceCharset => 'iso-8859-1',
            # DestCharset => 'utf-8',
            # Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
            Params => {
                port => 389,
                timeout => 120,
                async => 0,
                version => 3,
            },
    },
    # customer unique id
    CustomerKey => 'uid',
    # customer #
    CustomerID => 'mail',
    CustomerUserListFields => ['cn', 'mail'],
    CustomerUserSearchFields => ['uid', 'cn', 'mail'],
    CustomerUserSearchPrefix => '',
    CustomerUserSearchSuffix => '*',
    CustomerUserSearchListLimit => 250,
    CustomerUserPostMasterSearchFields => ['mail'],
    CustomerUserNameFields => ['givenname', 'sn'],
    # show not own tickets in customer panel, CompanyTickets
    CustomerUserExcludePrimaryCustomerID => 0,
    # add an ldap filter for valid users (expert setting)
#    CustomerUserValidFilter => '(!(description=locked))',
    # administrator can't change customer preferences
    AdminSetPreferences => 0,
#    # cache time to live in sec. - cache any database queries
#    CacheTTL => 0,
    Map => [
        # note: Login, Email and CustomerID are mandatory!
        # var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly
        [ 'UserTitle',      'Title',      'title',           1, 0, 'var', '', 0 ],
        [ 'UserFirstname',  'Firstname',  'givenname',       1, 1, 'var', '', 0 ],
        [ 'UserLastname',   'Lastname',   'sn',              1, 1, 'var', '', 0 ],
        [ 'UserLogin',      'Username',   'uid',             1, 1, 'var', '', 0 ],
        [ 'UserEmail',      'Email',      'mail',            1, 1, 'var', '', 0 ],
        [ 'UserCustomerID', 'CustomerID', 'mail',            0, 1, 'var', '', 0 ],
#        [ 'UserCustomerIDs', 'CustomerIDs', 'second_customer_ids', 1, 0, 'var', '', 0 ],
        [ 'UserPhone',      'Phone',      'telephonenumber', 1, 0, 'var', '', 0 ],
        [ 'UserAddress',    'Address',    'postaladdress',   1, 0, 'var', '', 0 ],
        [ 'UserComment',    'Comment',    'description',     1, 0, 'var', '', 0 ],
    ],
};

Wie gesagt: Fehlermeldungen schmeisst er mir keine. Der User ist ein ganz normaler AD-User, der sich nur in der Gruppe der Domainuser befindet. Das Codestück oben sollte ja eigentlich auch alles sein, wenn ich einfach nur die Kunden abgleichen will oder? Alles was sonst noch irgendwie erwähnt wurde bezog sich ja auf die Authentifizierung. Ich grase jetzt schon seit Stunden das Web und dieses Forum nach einer Lösung ab. Auch das LDAP für Dummis-Topic habe ich natürlich schon gefunden und alle ausprobiert, was dort vorgeschlagen wurde. Das Ergebnis ist immer genau das gleiche: Eine leere Liste.

Ich habe auch schon Spiceworks mit genau dem selben User erfolgreich zur Zusammenarbeit mit unserem AD bewegen können. Also schließe ich ein Problem mit unserem AD-Controller mal aus.

Vielen Dank schonmal im Voraus für Eure Hilfe.

Viele Grüße
Daniel
schleudertrauma
Znuny newbie
Posts: 2
Joined: 29 May 2012, 14:55
Znuny Version: Version 3.1

Re: Kunden aus dem LDAP: Keine Daten gefunden

Post by schleudertrauma »

Problem gelöst.

CustomerKey => 'samaccountname',

Brachte Besserung. Hatte ich vorher zwar auch schon 1000 Mal versucht. Aber beim 1001. Mal ging es dann auf einmal.
Locked