Hallo,

hab jetzt nochmal auf deiner Konfig basierend meine Konfiguration neu 
aufgesetzt 
und habe immer noch das gleiche Problem.

habe dann die Konfiguration nochmal 'from scratch' neu aufgebaut, aber stehe 
noch vor dem selben Problem.

Nochmal zusammengefasst:
- Agents können sich via LDAP problemlos einloggen und OTRS benutzen
- Customer können sich via LDAP authentifizieren
- Customer werden nach einer erfolgreichen LDAP-Authentifizierung nicht mit der 
Datenbank synchronisiert.

Im Detail sieht das bei einer Anmeldung am Customer Interface so aus:

May  6 13:37:44 nx9420 OTRS-CGI-10[15690]: [Debug]
[Kernel::System::Web::InterfaceCustomer::new][87] Global handle started...
May  6 13:37:44 nx9420 OTRS-CGI-10[15690]: [Debug]
[Kernel::System::DB::Connect][230] DB.pm->Do (1) SQL: 'SET NAMES utf8'
May  6 13:37:44 nx9420 OTRS-CGI-10[15690]: [Notice]
[Kernel::System::CustomerAuth::LDAP::Auth] CustomerUser: jdoe (CN=John 
Doe,OU=DieCompany,DC=DIE-COMPANY,DC=local) authentification ok (REMOTE_ADDR: 
127.0.0.1).

Hieraus ist ersichtlich, dass der LDAP-Part überhaupt keine Probleme bereitet.

Ein aktivierter MySQL QueryLog zeigt mir aber dieses Ergebnis:
28 Query  SET NAMES utf8
28 Query  SELECT id FROM valid WHERE name = 'valid'
28 Query  SELECT ts.id, ts.name, tst.name   FROM  ticket_state ts, 
ticket_state_type tst  WHERE  tst.id = ts.type_id AND  tst.name IN ('new', 
'open', 'pending reminder', 'pending auto' ) AND  ts.valid_id IN ( 1 )
28 Query  SELECT ts.id, ts.name, tst.name   FROM  ticket_state ts, 
ticket_state_type tst  WHERE  tst.id = ts.type_id AND  tst.name IN ('new', 
'open', 'pending reminder', 'pending auto' ) AND  ts.valid_id IN ( 1 )
28 Query  SELECT id FROM valid WHERE name = 'valid'
28 Query  SELECT id, name FROM ticket_lock_type WHERE  name IN ( 'unlock', 
'tmp_lock' ) AND  valid_id IN ( 1 )
28 Query  SELECT id, name FROM ticket_lock_type WHERE  name IN ( 'unlock', 
'tmp_lock' ) AND  valid_id IN ( 1 )
28 Query  SELECT  salutation,  first_name,  last_name,  login,  pw,  email,  
customer_id,  comments,  valid_id, login FROM customer_user WHERE LOWER(login) 
= LOWER('jdoe')
28 Query  SELECT  salutation,  first_name,  last_name,  login,  pw,  email,  
customer_id,  comments,  valid_id, login FROM customer_user WHERE LOWER(login) 
= LOWER('jdoe')
28 Quit

Hieraus ist ersichtlich, dass zwar geprüft wird, ob der User in der DB-Tabelle 
(customer_user) vorhanden ist, aber daraufhin wird dieser Benutzer nicht 
angelegt, wenn er nicht vorhanden ist.

Da ich aber die Option UserSyncLDAPMap gesetzt habe, sollte dies ja passieren:
$Self->{UserSyncLDAPMap} = {
    UserLogin => 'sAMAccountName',
    UserFirstname => 'givenName',
    UserLastname => 'sn',
    UserEmail => 'mail',
};

Meine gesamte Konfiguration, die ich jetzt in der Kernel/Config.pm 
zusammengezogen habe, sieht jetzt wie folgt aus:

$Self->{AgentCanBeCustomer} = 1;
$Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
$Self->{'AuthModule::LDAP::Host'} = '192.168.1.1';
$Self->{'AuthModule::LDAP::BaseDN'} = 'ou=DIE-USER,dc=DIE-COMPANY,dc=LOCAL';
$Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'AuthModule::LDAP::SearchUserDN'} = 'cn=QueryUser,cn=Users,dc=DIE-
COMPANY,dc=LOCAL';
$Self->{'AuthModule::LDAP::SearchUserPw'} = 'MyPassword';
$Self->{'CustomerUser::CustomerID'} = 'sAMAccountName';
$Self->{'CustomerUser::CustomerKey'} = 'cn';
$Self->{'CustomerUser::ListFields'} = ['cn', 'mail'];
$Self->{'CustomerUser::SearchFields'} = ['uid', 'cn', 'mail'];
$Self->{'CustomerUser::PostMasterSearchFields'} = ['mail'];
$Self->{'CustomerUser::NameFields'} = ['givenname', 'sn'];
$Self->{'CustomerUser::Map'} = [
        [ 'User Salutation', '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' ],
        [ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var' ],
        [ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var' ],
        [ 'UserComment', 'Comment', 'description', 1, 0, 'var' ],
];
$Self->{'Customer::AuthModule'} =  'Kernel::System::CustomerAuth::LDAP';
$Self->{'Customer::AuthModule::LDAP::Host'} =  '192.168.1.1';
$Self->{'Customer::AuthModule::LDAP::BaseDN'} =  'dc=DIE-COMPANY,dc=local';
$Self->{'Customer::AuthModule::LDAP::UID'} =  'sAMAccountName';
$Self->{'Customer::AuthModule::LDAP::UserAttr'} =  'DN';
$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} =  
'cn=QueryUser,cn=users,dc=DIE-COMPANY,dc=local';
$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} =  'MyPassword';
$Self->{UserSyncLDAPMap} = {
    UserLogin => 'sAMAccountName',
    UserFirstname => 'givenName',
    UserLastname => 'sn',
    UserEmail => 'mail',
};

Ich habe in der Zwischenzeit angefangen, im Source Debug Statements 
einzubauen. So habe ich z.B. in Kernel/System/Auth/LDAP.pm in Zeile 124 
folgendes eingebaut:

$Self->{LogObject}->Log(
    Priority => 'error',
    Message  => "1234567890abcdefghijklmnopqrstuvwxyz",
);

Im Logfile taucht meine Message aber nicht auf. Dabei sollte diese Position 
doch bei jedem LDAP-Auth Vorgang durchlaufen werden.
Findet hier irgendein Caching der Module statt oder so?

Sobald ich in der Lage bin mir hier Debug Messages auszugeben, kann ich auf 
eigene Faust viel besser nachforschen und das eigentliche Problem (warum nach 
einem LDAP Auth der Benutzer nicht nach customer_user synchronisiert wird) 
ergründen.

Vielen Dank im Voraus,

Elias



On Wednesday 06 May 2009 03:12:46 Elias Probst wrote:
> Hallo,
>
> das Problem ist nicht die LDAP-Authentifizierung, die geht ja problemlos
> (siehe Logmeldung).
>
> Das Problem ist viel mehr der nächste Schritt: die Verwendung bzw.
> Zuordnung der Daten in der customer_user Tabelle.
>
> Gruß, Elias
>
> On Tuesday 05 May 2009 21:35:59 Daniel Lindner wrote:
> > Hallo Zusammen,
> >
> > Ich würde bei der Authentifizierung folgende Hilfestellung geben:
> >
> >     - Prüfe einen anderen Port: 3268
> >     - User DN: u...@die-company.local
> >     - die komplette Liste des Active Directory-Namespace findest du hier:
> >
> > http://admin.hopplin.net/ldap_namespace.pdf
> >
> > Ich hoffe, damit kommst du erstmal weiter.
> >
> > VG
> >
> > Daniel
> > -------------------------------------------
> > HOPPLIN GmbH
> > Daniel Lindner
> >
> > Grünwalder Weg 13a
> > D-82008 Unterhaching
> > Tel: +49 (89) 61 20 95 - 52
> > Fax: +49 (89) 61 20 95 - 60
> > mailto:daniel.lind...@hopplin.com

Attachment: signature.asc
Description: This is a digitally signed message part.

---------------------------------------------------------------------
OTRS mailing list: otrs-de - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/otrs-de
To unsubscribe: http://lists.otrs.org/mailman/listinfo/otrs-de

NEU! ENTERPRISE SUBSCRIPTION - JETZT informieren und buchen!
http://www.otrs.com/de/support/enterprise-subscription/

Antwort per Email an