Nach Änderung config.pm zwecks Customer login geht nix mehr

Hilfe zu Znuny Problemen aller Art
Locked
spiderling
Znuny newbie
Posts: 8
Joined: 11 Feb 2008, 10:46

Nach Änderung config.pm zwecks Customer login geht nix mehr

Post by spiderling »

Hallo zusammen.

Wir haben bei uns seit ca. 3 Monaten OTRS am laufen, Version 2.2.2
Soweit funktioniert auch alles ganz gut, nun wollte ich die config.pm anpassen um den Customern ein Login über customer.pl zu ermöglichen.
Der Login soll über ihren Windows Benutzernamen und Passwort erfolgen.
Nach Änderung der Datei durch hinzufügen dieses Codes geht aber gar nichts mehr.

Code: Select all


     # Customer Authentifizierung via LDAP            #
     # ---------------------------------------------------- #


$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
$Self->{'Customer::AuthModule::LDAP::Host'} = 'xxx-xx-xxx.zzzz.yyyyy.com';
$Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=zzzz,dc=yyyyy,dc=com';
$Self->{'Customer::AuthModule::LDAP::UID'} = 'samAccountname';
$Self->{'Customer::AuthModule::LDAP::UserSuffix'} = '@yyyyy.com';
$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'dc=zzzz,dc=yyyyy,dc=com';
$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = '';
    port => 389,
    timeout => 120,
    async => 0,
    version => 3,
 };


     # ---------------------------------------------------- #


     #              User Authentifizierung                  #


$Self->{CustomerUser} = {
    Name => 'LDAP Datenquelle',
    Module => 'Kernel::System::CustomerUser::LDAP',
    Params => {
        Host => 'xxx-xxx-xxx.zzz.yyyyy.com',
        BaseDN => 'dc=zzz,dc=yyyyy,dc=com',
        SSCOPE => 'sub',
        AlwaysFilter => ,
        Params => {
            port => 389,
            timeout => 120,
            async => 0,
            version => 3,
        },
    },
    CustomerKey => 'samAccountname',
    CustomerID => 'mail',
    CustomerUserListFields => ['sn', 'cn', 'mail'],
    CustomerUserSearchFields => ['uid', 'cn', 'sn', 'mail'],
    CustomerUserSearchPrefix => ,
    CustomerUserSearchSuffix => '*',
    CustomerUserSearchListLimit => 250,
    CustomerUserPostMasterSearchFields => ['mail'],
    CustomerUserNameFields => ['givenname', 'sn'],
    CustomerUserExcludePrimaryCustomerID => 0,
    AdminSetPreferences => 0,
    Map => [
        [ 'UserSalutation', 'Title',      'title',           1, 0, 'var', , 0 ],
        [ 'UserFirstname',  'Firstname',  'cn',              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 ],
        [ 'UserPhone',      'Phone',      'telephonenumber', 1, 0, 'var', , 0 ],
        [ 'UserAddress',    'Address',    'postaladdress',   1, 0, 'var', , 0 ],
        [ 'UserComment',    'Comment',    'description',     1, 0, 'var', , 0 ],
    ],
};
     #            User Authentifizierung Ende               #

Kann da jemand weiterhelfen und mir sagen wo ich Bockmist gebaut habe?!

Gruss
spiderling
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Nach Änderung config.pm zwecks Customer login geht nix mehr

Post by jojo »

was heisst "gar nix mehr"?

Ist die Config.pm syntaktisch korrekt (mit perl -cw geprüft)?
"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
spiderling
Znuny newbie
Posts: 8
Joined: 11 Feb 2008, 10:46

Nach Änderung config.pm zwecks Customer login geht nix mehr

Post by spiderling »

Hallo.
"Gar nix mehr" bedeutet das OTRS anschliessend nicht mehr erreichbar ist.
Es sieht so aus als wenn OTRS sich nach der Änderung nicht mehr richtig starten läßt.
Während man beim normalen Start von OTRS (OTRS_START) lesen kann "the cron service was started successfully..." blinkt diese Anzeige bei eingebauter Änderung nur kurz auf und schließt direkt wieder.
Geprüft habe ich nix, habe mir auf diversen Seiten Infos gesucht wie ein Customer login aussehen soll und versucht das an unsere Bedürfnisse anzupassen.
Gruss
spiderling
spiderling
Znuny newbie
Posts: 8
Joined: 11 Feb 2008, 10:46

Nach Änderung config.pm zwecks Customer login geht nix mehr

Post by spiderling »

Zum besseren Verständnis habe ich hier nochmal den bisher in der config.pm hinzugefügten Code aufgeführt der alleine einwandfrei funktioniert.
Erst nach HInzufügen des o.a. Codes ist OTRS nicht mehr erreichbar / startet nicht!

Code: Select all

   # ---------------------------------------------------- #
    
    #                  SMTP Konfiguration                  #
    
    $Self->{'SendmailModule'} = 'Kernel::System::Email::SMTP';
    $Self->{'SendmailModule::Host'} = 'IP-Adresse';
    $Self->{'SendmailModule::Port'} = '25';
    $Self->{'SendmailModule::AuthUser'} = '';
    $Self->{'SendmailModule::AuthPassword'} = '';

   #               SMTP Konfiguration Ende                 #

   #                  LDAP Konfiguration                  #

    
    # CustomerUser
    # (customer user ldap backend and settings)
    $Self->{CustomerUser} = {
        Name => 'LDAP Backend',
        Module => 'Kernel::System::CustomerUser::LDAP',
        Params => {
            # ldap host
            Host => 'xxx-xx-xxx.zzzz.yyyyy.com',
            # ldap base dn
            BaseDN => 'dc=zzzz,dc=yyyyy,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 => 'Username',
            UserPw => 'userpasswort',
            # 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 your frontend is e. g. iso-8859-1 and the charset of your
            # ldap server is utf-8, use this options (if not, ignore it)
            SourceCharset => 'utf-8',
            DestCharset => 'iso-8859-1',
            # die if backend can't work, e. g. can't connect to server
            Die => 1,
            # Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
            Params => {
                port => 389,
                timeout => 120,
                async => 0,
                version => 3,
            },
        },
        # customer uniq id
        CustomerKey => 'samAccountname',
        # customer #
        CustomerID => 'mail',
        CustomerUserListFields => ['cn', 'mail'],
        CustomerUserSearchFields => ['samAccountname', 'cn', 'mail'],
        CustomerUserSearchPrefix => '',
        CustomerUserSearchSuffix => '*',
        CustomerUserSearchListLimit => 250,
        CustomerUserPostMasterSearchFields => ['mail'],
        CustomerUserNameFields => ['givenname', 'sn'],
        # show now own tickets in customer panel, CompanyTickets
        CustomerUserExcludePrimaryCustomerID => 0,
        # add a ldap filter for valid users (expert setting)
        # CustomerUserValidFilter => '(!(description=gesperrt))',
        # admin can't change customer preferences
        AdminSetPreferences => 0,
        # cache time to life in sec. - cache any ldap queris
        CacheTTL => 0,
        Map => [
            # note: Login, Email and CustomerID needed!
            # 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 ],
            [ 'UserPhoneMobile',      'Mobile',      'mobile', 1, 0, 'var', '', 0 ],
            [ 'UserAddress',    'Address',    'postaladdress',   1, 0, 'var', '', 0 ],
#            [ 'UserComment',    'Comment',    'description',     1, 0, 'var', '', 0 ],
            [ 'Organization',    'Abteilung',    'department',     1, 0, 'var', '', 0 ],
            [ 'Company',    'Company',    'company',     1, 0, 'var', '', 0 ],
        ],
    };

     #              LDAP Konfiguration Ende                 #
  
    
}

Gruss
spiderling
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Nach Änderung config.pm zwecks Customer login geht nix mehr

Post by jojo »

Hast Du den angesprochenen Syntaxcheck gemacht?
"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
spiderling
Znuny newbie
Posts: 8
Joined: 11 Feb 2008, 10:46

Nach Änderung config.pm zwecks Customer login geht nix mehr

Post by spiderling »

Hallo

perl -c zeigt an:

"Unmatched curly right bracket..."

Habe die Klammer entfernt, nun ist eine Verbindung zum OTRS zumindest wieder möglich.
Allerdings kann ich nicht einloggen.
Fehlermeldung ist:
"Anmeldung fehlgeschlagen! Benutzername oder Passwort falsch."
Die Meldung erscheint sowohl als Agent als auch als User.

:(
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Nach Änderung config.pm zwecks Customer login geht nix mehr

Post by jojo »

Dann schau ins Logfile, warum die Anmeldung fehl schlägt...
"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
spiderling
Znuny newbie
Posts: 8
Joined: 11 Feb 2008, 10:46

Nach Änderung config.pm zwecks Customer login geht nix mehr

Post by spiderling »

Das ist die Fehlermeldung:

First bind failed! 80090308: LdapErr: DSID-0C090334, comment: AcceptSecurityContext error, data 525, vece

spiderling
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Nach Änderung config.pm zwecks Customer login geht nix mehr

Post by jojo »

Der User, den Du zur Abfrage benutzt darf sich nicht mit dem angegebenen Passwort anmelden, das kann verschiedene Ursachen haben:

- falscher Username
- falsches 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
spiderling
Znuny newbie
Posts: 8
Joined: 11 Feb 2008, 10:46

Nach Änderung config.pm zwecks Customer login geht nix mehr

Post by spiderling »

Hallo jojo,

vorab erstmal vielen Dank für die schnelle Hilfe.
Momentan sieht es so aus:
Login als Agent möglich
Login als Customer nicht möglich, weiterhin: First bind failed! 80090308: LdapErr: DSID-0C090334, comment: AcceptSecurityContext error, data 525, vece
Leider geht auch die ldap Anbindung nicht mit der geänderten .pm, Kunden müßten zu den Tickets wieder manuell hinzugefügt werden.

Mit perl -c bekomme ich für die einwandfrei laufende config.pm und die unfertige config.pm mit Customer login die gleiche Ausgabe.

System läuft nun erstmal wieder mit der alten config.pm werde mich nächste Woche wieder damit beschäftigen.
Werde es dann mal mit meinen Daten für Usernamen und Passwort probieren

Gruss und schönes Wochenende
ferrosti
Znuny superhero
Posts: 723
Joined: 10 Oct 2007, 14:30
Znuny Version: 3.0
Location: Hamburg, Germany

Nach Änderung config.pm zwecks Customer login geht nix mehr

Post by ferrosti »

Der SearchUser für die Customer Anmeldung am LDAP ist nicht richtig eingerichtet. Wenn der bind fehlschlägt gibt es nicht viele Möglichkeiten, wo der Fehler liegt.
Zum Ausprobieren könntest Du Dir ein LDAP Tool runterladen und den User ausprobieren, mit dem Du die LDAP DB abfragst. Ein Tool wäre z.B. "LDAPBrowser" oder die Linux "ldapsearch" Programme.
In dem funktionierenden Script hast Du dennoch einen Fehler. Du machst ein Mapping mit der 'uid', welche im LDAP aber als 'saMAccountname' bekannt ist. Dieses Feld wird als CustomerKey verwendet und wird damit nach erfolgreicher Anmeldung wahrscheinlich keine Daten in der DB finden.

Ferrosti
Locked