AD User auslesen, kein Gültigkeit Status

Hilfe zu OTRS Problemen aller Art
Post Reply
swissdmr
Znuny newbie
Posts: 3
Joined: 02 Oct 2012, 10:22
Znuny Version: 3.1.9

AD User auslesen, kein Gültigkeit Status

Post by swissdmr »

Hallo zusammen

Ich hoffe Ihr könnt mir helfen, bin um jede Hilfe dankbar.

Also zu meinem Problem:
Ich lese User aus unserem Active directory aus. Dies funktioniert auch und sie werden mir im Webinterface von OTRS angezeigt.
Wenn ich mich jetzt aber als einer dieser Benutzer einloggen will funktioniert das nicht, es kommt immer die Meldung: Anmeldung fehlgeschlagen! Benutzername oder Passwort falsch.

Im File otrs.log steht dann folgendes:

Code: Select all

[Tue Oct  2 10:32:55 2012][Notice][Kernel::System::Auth::DB::Auth] User: hans.muster doesn't exist or is invalid!!! (REMOTE_ADDR: IP Adresse)
[Tue Oct  2 10:32:55 2012][Error][Kernel::System::User::UserLookup][797] No UserID found for 'hans.muster'!
Ich habe die Vermutung, dass es an dem Gültigkeitsstatus der User liegen könnte. Im Webinterface, unter Admin, Kunden werden alle User aufgelistet. In der letzten Spalte steht "Gültigkeit", dort ist bei allen einfach ein "-" eingetragen. Bei dem Admin User welchen ich erstellt habe steht dort "gültig"


Weiss jemand eine Lösung oder zumindest einen Ansatz dazu?


Schon einmal besten Dank im Voraus,
beste Grüsse swissdmr
FiL
Znuny newbie
Posts: 69
Joined: 13 Jul 2010, 18:02
Znuny Version: 2.4.7

Re: AD User auslesen, kein Gültigkeit Status

Post by FiL »

Dürfte wohl bei deinen Einstellungen des Customer LDAP was falsch sein.

Das mit der Gültigkeit passt schon so. Steht bei mir auch "-" drin.
Dev
OTRS-Version: 3.1.7
System: Ubuntu Linux

Prod
OTRS-Version 3.0.9
System: Ubuntu Linux
swissdmr
Znuny newbie
Posts: 3
Joined: 02 Oct 2012, 10:22
Znuny Version: 3.1.9

Re: AD User auslesen, kein Gültigkeit Status

Post by swissdmr »

Hallo FiL

Besten Dank für die schnelle Antwort.
Ich bin alles nochmals durchgegangen, und habe auch andere LDAP Beispiele welche ich gefunden habe ausprobiert, leider alles ohne Erfolg.
Ich habe hier einmal den Code, vielleicht könntest du dir diesen ja einmal kurz anschauen, wäre echt nett.

Code: Select all

#Start of LDAP authentication

    # CustomerUser
    # (customer user ldap backend and settings)
    $Self->{CustomerUser} = {
        Name => 'LDAP Data Source',
        Module => 'Kernel::System::CustomerUser::LDAP',
        Params => {
            # ldap host
            Host => 'domaincontroller.domain.ch',
            # ldap base dn
            BaseDN => 'OU=Verwaltung,DC=domain,DC=ch',
            # 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=ldap_user, OU=Ressourcen, DC=domain, DC=ch',
            UserPw => 'password',
            # in case you want to add always one filter to each ldap query, use
#            AlwaysFilter => '',
            # if your frontend is e. g. iso-8859-1 and the charset of your
            # ldap server is utf-8, use these options.
#            SourceCharset => 'utf-8',
#            DestCharset => 'iso-8859-1',
            # if both your frontend and your LDAP are unicode, use this:
            SourceCharset => 'utf-8',
            DestCharset   => 'utf-8',

            # Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
            Params => {
#                port => 389,
                port => 3268,
                timeout => 120,
                async => 0,
                version => 3,
            },
        },
		ReadOnly => 1,
		# customer unique id
        CustomerKey => 'sAMAccountName',
        # customer #
        CustomerID => 'mail',
        CustomerUserListFields => ['cn', 'mail'],
        CustomerUserSearchFields => ['cn', 'givenname', 'mail'],
        CustomerUserSearchPrefix => '',
        CustomerUserSearchSuffix => '*',
        CustomerUserSearchListLimit => 2000,
        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 => 120,
        Map => [
            # note: Login, Email and CustomerID are mandatory!
            # if you need additional attributes from AD, just map them here.
            # var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly
#            [ 'UserSalutation', 'Title',      'title',           1, 0, 'var', '', 0 ],
            [ 'UserFirstname',  'Firstname',   'givenname',       1, 1, 'var', '', 0 ],
            [ 'UserLastname',   'Lastname',    'sn',              1, 1, 'var', '', 0 ],
            [ 'UserLogin',      'Username',    'sAMAccountName',             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 ],
            [ 'UserMobile',     'Mobile',      'mobile', 1, 0, 'var', '', 0 ],
            [ 'UserRoom',       'Room',        'physicalDeliveryOfficeName', 1, 0, 'var', '', 0 ],
        ],
    };
Muss ich dem Code noch eine Zeile hinzufügen oder sonst etwas?

Im Log steht noch folgendes:

Code: Select all

[Tue Oct  2 16:08:20 2012][Error][Kernel::System::CustomerUser::LDAP::CustomerSearch][363] Sizelimit exceeded
Das wird aber nichts damit zu tun haben nehme ich an?

Bin leider ein absoluter Neuling in Sachen OTRS, ich hoffe das ist nicht zu viel verlangt.


Nochmals besten Dank bereits im Voraus.
FiL
Znuny newbie
Posts: 69
Joined: 13 Jul 2010, 18:02
Znuny Version: 2.4.7

Re: AD User auslesen, kein Gültigkeit Status

Post by FiL »

Versuch mal das hinzuzfügen.

Code: Select all

 AlwaysFilter => '(&(objectclass=user)(mail=*))',
Dev
OTRS-Version: 3.1.7
System: Ubuntu Linux

Prod
OTRS-Version 3.0.9
System: Ubuntu Linux
swissdmr
Znuny newbie
Posts: 3
Joined: 02 Oct 2012, 10:22
Znuny Version: 3.1.9

Re: AD User auslesen, kein Gültigkeit Status

Post by swissdmr »

Habe den Filter hinzugefügt, jetzt wird alles "unnötige" rausgefilter und der Fehler taucht nicht mehr auf. Danke vielmals.
Der Fehler mit dem Login ist leider immer noch da, aber ich schaue mir das jetzt nochmals an, eventuell kriege ich das ja trotzdem noch hin.

Auf jeden Fall besten Dank für deine Hilfe.
Gruss swissdmr
Post Reply