LDAP Customerdaten in DB schreiben?

Hilfe zu Znuny Problemen aller Art
Locked
Schlumpf
Znuny advanced
Posts: 119
Joined: 12 Jan 2010, 14:41
Znuny Version: 3.0.x

LDAP Customerdaten in DB schreiben?

Post by Schlumpf »

Hallo,

ich habe derzeit ein Problem mit den Customerdaten aus dem LDAP. Die Anmeldung der Kunden Benutzer funktioniert soweit erstmal. Login und Passwort wird aus dem LDAP übergeben. Die Suche nach Kunden funktioniert auch, genauso wie das Setzen eines Kunden beim Erstellen eines neuen Telefon-Tickets.
Allerdings lande ich beim Klick auf Customers <-> Groups oder Customer <-> Services immer in einer endlosen Warte- und Ladeschleife.
Ich denke, das liegt daran, dass die Customer nicht in die DB geschrieben werden, sondern immer aus dem LDAP gezogen werden.

Wie kann ich das beheben?? Bitte helft mir, bin ratlos :(

Viele Grüße

Edit: Mein Code:

Code: Select all

$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
    $Self->{'Customer::AuthModule::LDAP::Host'} = 'xxx.xxx.xxx.xxx';
    $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'DC=EXAMPLE,DC=DE';
    $Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
    $Self->{'Customer::AuthModule::LDAP::GroupDN'} = 'CN=OTRSUSER,CN=Users,DC=EXAMPLE,DC=DE';
     $Self->{'Customer::AuthModule::LDAP::UserAttr'} = 'DN';
     $Self->{'Customer::AuthModule::LDAP::AccessAttr'} = 'member';
    $Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'CN=SEARCHUSER,CN=Users,DC=EXAMPLE,DC=DE';
    $Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'PW';
    $Self->{'Customer::AuthModule::LDAP::Params'} = {
        port => 389,
        timeout => 120,
        async => 0,
        version => 3,
    };
	
	
	$Self->{CustomerUser1} = {
      Name => 'LDAP Backend',
      Module => 'Kernel::System::CustomerUser::LDAP',
      Params => {
         Host => 'xxx.xxx.xxx.xxx',
         BaseDN => 'DC=EXAMPLE,DC=DE',
         SSCOPE => 'sub',
         UserDN => 'CN=SEARCHUSER,CN=Users,DC=EXAMPLE,DC=DE',
         UserPw => 'PW',
		 #GroupDN => 'CN=OTRSUSER,CN=Users,DC=EXAMPLE,DC=DE',
		 UserAttr => 'DN',
		 AccessAttr => 'member',
		 AlwaysFilter => '(objectclass=user)',
		 SourceCharset => 'utf-8',
         DestCharset   => 'utf-8',
		 Die => 1,
         Params => {
            port => 389,
            timeout => 120,
            async => 0,
            version => 3,
         },
      },
      CustomerKey => 'sAMAccountName',
      CustomerID => 'mail',
      CustomerUserListFields => ['givenname', 'sn', 'mail'],
      CustomerUserSearchFields => ['sAMAccountName', 'givenname', 'sn', 'mail'],
	   # CustomerUserSearchPrefix => '',
       # CustomerUserSearchSuffix => '*',
       CustomerUserSearchListLimit => 250,
       CustomerUserPostMasterSearchFields => ['mail'],
       CustomerUserNameFields => ['givenname', 'sn'],
       CustomerUserExcludePrimaryCustomerID => 0,
	   CustomerUserValidFilter => '(!(description=gesperrt))',
       AdminSetPreferences => 0,
       Map => [
           #[ '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 ],
            [ 'UserPhone',      'Phone',      'telephonenumber', 1, 0, 'var', '', 0 ],
			[ 'UserMobile',     'Mobile',     'mobile',          1, 0, 'var', '', 0 ],
           #[ 'UserAddress',    'Address',    'postaladdress',   1, 0, 'var', '', 0 ],
           #[ 'UserComment',    'Comment',    'description',     1, 0, 'var', '', 0 ],
       ],

    };
OTRS: 3.0.8
OS: SuSE
Module: Apache2, MySQL
Schlumpf
Znuny advanced
Posts: 119
Joined: 12 Jan 2010, 14:41
Znuny Version: 3.0.x

Re: LDAP Customerdaten in DB schreiben?

Post by Schlumpf »

Ok, hab mir jetzt die sync-ldab2db.pl hergenommen.

Ist das richtig, dass bei dieser keine Unter-CNs und Unter-OUs gezogen werden?

Mit dem Code werden immer nur die User aus der jeweiligen OU gezogen, nicht aber aus bspw. der OU=Testuser, die unter OU=Mitarbeiter,DC=EXAMPLE,DC=DE liegt.

Code: Select all

my $LDAPHost    = 'xxx.xxx.xxx.xxx';
my %LDAPParams  = ();
my $LDAPBaseDN  = 'OU=Mitarbeiter,DC=EXAMPLE,DC=DE';
my $LDAPBindDN  = 'CN=SEARCHUSER,CN=Users,DC=EXAMPLE,DC=DE';
my $LDAPBindPW  = 'PW';
my $LDAPScope   = 'sub';
my $LDAPCharset = 'utf-8';
OTRS: 3.0.8
OS: SuSE
Module: Apache2, MySQL
Locked