KIX - Forum

Community => Fragen | Konfiguration | Hilfe => Thema gestartet von: Sebastian am 01.07.2019 16:10:36

Titel: Fehlermeldung nach LDAP-Login: "Need UserID!"
Beitrag von: Sebastian am 01.07.2019 16:10:36
KIX Professional 17.6.0-0

Jedesmal, nachdem sich ein User via LDAP (erfolgreich) einloggt, erscheint folgende Fehlermeldung im Systemprotokoll:

Mon Jul  1 15:38:01 2019 error KIX-CGI-10 Need UserID!


Es scheint keine Auswirkungen, ausser der Fehlermeldung, zu geben.
Titel: Re: Fehlermeldung nach LDAP-Login: "Need UserID!"
Beitrag von: Richard Leis am 16.07.2019 09:50:28
Hallo Sebastian,

wahrscheinlich nutzt Ihr das LDAP nicht nur für die Authentifizierung sondern synchronisiert die User auch.
Bei der Synchronisation scheint die UserID nicht korrekt übergeben zu werden.
Bitte prüfe Deine Config.pm (/opt/kix/Kernel/Config.pm), ob dort beim AuthSyncModule die UserID korrekt gemappt ist.

Viele Grüße

Richard

Titel: Re: Fehlermeldung nach LDAP-Login: "Need UserID!"
Beitrag von: Sebastian am 18.07.2019 16:02:47
Hier ist unsere Konfiguration für die Agenten:

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

    # LDAP AGENT ANBINDUNG

    $Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
    $Self->{'AuthModule::LDAP::Charset'} = 'utf-8';
    $Self->{'AuthModule::LDAP::Host'} = 'xxx';
    $Self->{'AuthModule::LDAP::BaseDN'} = 'xxx';
    $Self->{'AuthModule::LDAP::UID'} = 'uid';
    $Self->{'AuthModule::LDAP::SearchUserDN'} = 'xxx';
    $Self->{'AuthModule::LDAP::SearchUserPw'} = 'xxx';
    $Self->{'AuthModule::LDAP::AlwaysFilter'} = '';

    $Self->{UserSyncLDAPMap} = {
        # DB -> LDAP
        UserTitle     => 'gender',
        UserFirstname => 'givenName',
        UserLastname  => 'sn',
        UserEmail     => 'mail',
    };

    # UserTable
    $Self->{DatabaseUserTable} = 'users';
    $Self->{DatabaseUserTableUserID} = 'id';
    $Self->{DatabaseUserTableUserPW} = 'pw';
    $Self->{DatabaseUserTableUser} = 'login';

    # defines AuthSyncBackend (AuthSyncModule) for AuthModule
    # if this key exists and is empty, there won't be a sync.
    # example values: AuthSyncBackend, AuthSyncBackend2
    $Self->{'AuthModule::UseSyncBackend'} = 'AuthSyncBackend';


    # agent data sync against ldap
    $Self->{'AuthSyncModule'} = 'Kernel::System::Auth::Sync::LDAP';
    $Self->{'AuthSyncModule::LDAP::Host'} = 'xxx';
    $Self->{'AuthSyncModule::LDAP::BaseDN'} = 'xxx';
    $Self->{'AuthSyncModule::LDAP::UID'} = 'uid';
    $Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'xxx';
    $Self->{'AuthSyncModule::LDAP::SearchUserPw'} = 'xxx';
    $Self->{'AuthSyncModule::LDAP::UserSyncMap'} = {
        # DB -> LDAP
        UserTitle     => 'gender',
        UserFirstname => 'givenName',
        UserLastname  => 'sn',
        UserEmail     => 'mail',
    };
Titel: Re: Fehlermeldung nach LDAP-Login: "Need UserID!"
Beitrag von: Richard Leis am 05.08.2019 11:57:06
Hallo Sebastian,

dieser Teil kann schonmal entfernt werden:
$Self->{UserSyncLDAPMap} = {
        # DB -> LDAP
        UserTitle     => 'gender',
        UserFirstname => 'givenName',
        UserLastname  => 'sn',
        UserEmail     => 'mail',
    };


Die Variable UserSyncLDAPMap gibt es nicht.

Der Rest sieht so weit in Ordnung aus.

Kannst Du mir bitte aus dem KIX-Log mal den gesamten Fehler posten? Dort sollte zu sehen sein, aus welchem Modul der Fehler kommt.
(Gerne auch mit der Zeile der erfolgreichen Anmeldung darüber).

Und könntest Du mal in der SQL-Box prüfen, ob die User korrekt synchronisiert werden?

Viele Grüße

Richard