[solved] mehrere CostumerBackends

Hilfe zu Znuny Problemen aller Art
Locked
reneberger
Znuny newbie
Posts: 7
Joined: 19 Sep 2011, 13:13
Znuny Version: 2.4

[solved] mehrere CostumerBackends

Post by reneberger »

Hallo zusammen,

wir benötigen in unserer OTRS 2.4 Umgebung 2 CostumerBackends. Derzeitig haben wir unsere Costumer in der DB liegen. Zusätzlich soll ein weiterer Kunde per LDAP angebunden werden. In unserer Testumgebung haben wir erfolgreich ein LDAP einrichten können, nur es geht immer nur 1 von beiden. Wie kann man in Abhängigkeit vom Kunden die Authentifizierung unterscheiden?
Danke für die Infos...
Last edited by reneberger on 23 Sep 2011, 19:19, edited 1 time in total.
diginin
Znuny expert
Posts: 213
Joined: 11 Feb 2008, 12:04
Znuny Version: CVS

Re: mehrere CostumerBackends

Post by diginin »

Shawn Beasley
Contact me per XING
Contact me per LinkedIN

OTRS CVS on Ubuntu Stable.

Image
signature by diginin74, on Flickr

Computers are like air conditioners, when you open windows they are useless.



P.S. (für Leser meiner Deutschtexte) Rechtschreibfehler bitte mit s/.*/$KORREKTUR/ ersetzen.
reneberger
Znuny newbie
Posts: 7
Joined: 19 Sep 2011, 13:13
Znuny Version: 2.4

Re: mehrere CostumerBackends

Post by reneberger »

ja dieses haben wir auch schon angesehen, dieses haben wir in die Config.pm eingetragen. Danach geht nur noch der 1. Eintrag davon, welcher LDAP ist. Wo kann man denn die Zuordnung treffen ob LDAP oder interne DB beim User? Wenn ich eine lokalen User anlegen (geht) und dann versuche mich zu Authentifizieren, sehe ich im Log das er LDAP verwendet. Wo wird die Zuordnung getroffen?
Wolfgangf
Znuny ninja
Posts: 1029
Joined: 13 Apr 2009, 12:26
Znuny Version: 6.0.13
Real Name: Wolfgang Fürtbauer
Company: PBS Logitek GmbH
Location: Pinsdorf

Re: mehrere CostumerBackends

Post by Wolfgangf »

AFAIK geht das einfach in der Reihenfolge der Definition der Backends
ich habe das bei mir so:

1) CustomerDB (OTRS)
2) Active Directory
Produktiv:
OTRS 6.0.13/ ITSM 6.0.13
OS: SUSE Linux (SLES 12, Leap), MySql 5.5.x, 5.6.x
Windows 2012 AD Integration (agents and customers), Nagios integration (incidents, CMDB), Survey, TimeAccounting
reneberger
Znuny newbie
Posts: 7
Joined: 19 Sep 2011, 13:13
Znuny Version: 2.4

Re: mehrere CostumerBackends

Post by reneberger »

Guten Morgen,

das hat leider auch nichts gebracht. Ich habe jetzt die Reihenfolge in der Config.pm getauscht, CustomerUser1 ist DB, CustomerUser2 ist LDAP.
Sobald in der Config.pm der Eintrag

Code: Select all

 $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
steht, dann wird nur noch LDAP angezogen. Kommentiere ich den Eintrag raus, dann geht nur noch DB. Kann man das nicht so einstellen, dass er erst in der der DB und anschließend im LDAP sucht?
Irgendwie stehe ich hier total auf dem Schlauch, mehrere Backends sind möglich, aber wie soll man die ansprechen :? ?
Wolfgangf
Znuny ninja
Posts: 1029
Joined: 13 Apr 2009, 12:26
Znuny Version: 6.0.13
Real Name: Wolfgang Fürtbauer
Company: PBS Logitek GmbH
Location: Pinsdorf

Re: mehrere CostumerBackends

Post by Wolfgangf »

so habe ich das gemacht und bei mir kann sich der Kunde und Agent via LDAP oder Username/password authentizieren
LG

Code: Select all

    $Self->{CustomerUser1} = {
        Name => 'Active Directory',
        Module => 'Kernel::System::CustomerUser::LDAP',
        Params => {
            Host => \@ldaphosts,
            BaseDN => '<base_dn>',
            SSCOPE => 'sub',
            UserDN => '<account>',
            UserPw => '<pass>',
            AlwaysFilter =>  '(&(objectclass=user)(mail=*))',
            DestCharset => 'utf-8',
            SourceCharset => 'utf-8',
            Params => {
                port => 3268,
                timeout => 10,
                async => 0,
                version => 3,
            },
        },
        CustomerKey => 'sAMAccountName',
        CustomerID => 'mail',
        CustomerUserListFields => ['cn', 'mail'],
        CustomerUserSearchFields => ['sAMAccountName', 'cn', 'mail'],
        CustomerUserSearchListLimit => 1000,
        CustomerUserPostMasterSearchFields => ['mail'],
        CustomerUserNameFields => ['givenname', 'sn'],
        CustomerUserExcludePrimaryCustomerID => 0,
        AdminSetPreferences => 0,
        Map => [
            [ '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 ],
            [ 'UserPhone',      'Phone',      'telephoneNumber', 1, 0,'var', 'click2dial.pl?agent=$Env{"UserComment"}&customer=$Data{"UserPhone"}', 0 ],
            [ 'UserMobile',     'Mobile',      'mobile',         1, 0,'var', 'click2dial.pl?agent=$Env{"UserComment"}&customer=$Data{"UserMobile"}', 0 ],
        ],
    };


  # This is the auth. module against the otrs db
    $Self->{'Customer::AuthModule1'} = 'Kernel::System::CustomerAuth::DB';
    $Self->{'Customer::AuthModule::DB::Table1'} = 'customer_user';
    $Self->{'Customer::AuthModule::DB::CustomerKey1'} = 'login';
    $Self->{'Customer::AuthModule::DB::CustomerPassword1'} = 'pw';
  # This is the auth. module against LDAP
    $Self->{'Customer::AuthModule2'} = 'Kernel::System::CustomerAuth::LDAP';
    $Self->{'Customer::AuthModule::LDAP::Host2'} = \@ldaphosts;
    $Self->{'Customer::AuthModule::LDAP::BaseDN2'} = '<base_dn>';
    $Self->{'Customer::AuthModule::LDAP::UID2'} = 'sAMAccountName';
    $Self->{'Customer::AuthModule::LDAP::SearchUserDN2'} = '<account>';
    $Self->{'Customer::AuthModule::LDAP::SearchUserPw2'} = '<passwd>';
    $Self->{'Customer::AuthModule::LDAP::AlwaysFilter2'} = '(&(objectclass=user)(mail=*))';
    $Self->{'Customer::AuthModule::LDAP::Params2'} = {
        port => 3268,
        timeout => 10,
        async => 0,
        version => 3,
    };
Produktiv:
OTRS 6.0.13/ ITSM 6.0.13
OS: SUSE Linux (SLES 12, Leap), MySql 5.5.x, 5.6.x
Windows 2012 AD Integration (agents and customers), Nagios integration (incidents, CMDB), Survey, TimeAccounting
reneberger
Znuny newbie
Posts: 7
Joined: 19 Sep 2011, 13:13
Znuny Version: 2.4

Re: mehrere CostumerBackends

Post by reneberger »

Super, danke Wolfgang! Mit den Einstellungen aus der gezeigten Config.pm funktioniert es nun auch endlich bei uns 8) .
Wir hatten die interessanterweise Sektion

Code: Select all

 $Self->{CustomerUser1} = {
...
}
einmal für DB (CustomerUser1) und einmal für LDAP (CustomerUser2) in der Config. So stand das meiner Meinung nach auch in der Anleitung. Wie auch immer, nun gibts den Teil nur noch 1x und dafür gehen beide Auth-Methoden!

Vielen Dank für die Hilfe.
René
Wolfgangf
Znuny ninja
Posts: 1029
Joined: 13 Apr 2009, 12:26
Znuny Version: 6.0.13
Real Name: Wolfgang Fürtbauer
Company: PBS Logitek GmbH
Location: Pinsdorf

Re: mehrere CostumerBackends

Post by Wolfgangf »

kein Problem
Produktiv:
OTRS 6.0.13/ ITSM 6.0.13
OS: SUSE Linux (SLES 12, Leap), MySql 5.5.x, 5.6.x
Windows 2012 AD Integration (agents and customers), Nagios integration (incidents, CMDB), Survey, TimeAccounting
Locked