LDAP Anbindung mit Gruppenzugehörigkeit

Hilfe zu Znuny Problemen aller Art
Locked
neoman
Znuny newbie
Posts: 13
Joined: 04 Mar 2011, 19:25
Znuny Version: 3.0

LDAP Anbindung mit Gruppenzugehörigkeit

Post by neoman »

Hallo Forum,

ich beschäftige mich gerade mit otrs. Finde das Teil sehr gut, stehe aber noch am Anfang. Muss dazu sagen das ich in otrs und Perl keine Kenntnisse habe.

Ich versuche i.M. die Agenten- und Kundenanmeldung via LDAP zu konfigurieren. Ich bin soweit gekommen, dass, ich eine Gruppe admins_otrs im AD erstellt habe und alle Mitglieder dieser Gruppe können sich an der Admin-Oberflöche von OTRS anmelden, die kein Mitglied dieser Gruppe sind können sich nicht anmdlen. Soweit so gut.

Bei den Customer bin ich soweit, das sich alle am Frontend von otrs anmelden können. Auch das ist wunderbar.

Was ich aber nun möchte ist folgendes:

Ich verwalte über 1500 Nutzer im AD auf einen Windows Server 2003. Nun möchte ich z.B. eine Grußße otrs_customer im AD anlegen, dort sollen alles User aus den AD Mitglied werden, die sich als Customer an otrs anmelden dürfen und halt ein Ticket aufgeben dürfen.

Nach meiner jetztigen Konfiguration werden mir aber alle Benutzer, einschließlich alles Systemaccounts u.s.w. unter Kunden im orts aus dem AD angezeigt. Dort sollen aber nur User angezeigt werden, die in der Gruppe otrs_customer Mitglied sind und auch nur die sollen Zugriff bekommen. Ich habe schon alle Varianten in meine Comfig.pm ausprobiert und stundenlang im Netz nach einer Lösung gesucht, nur funktioniert es einfach nicht.

Ich war sehr dankbar wenn mir jemand helfen könnte.

Der relevante Teil meiner Config.pm

Code: Select all

### LDAP-Anbindung der Kunden
	
	$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
        $Self->{'Customer::AuthModule::LDAP::Host'} = 'IPmeinesServers';
        $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=smallbusiness, dc=local';
        $Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
        $Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'cn=otrs, ou=admins_otrs, dc=smallbusiness, dc=local';
        $Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'Passwort';
	$Self->{'Customer::AuthModule::LDAP::GroupDN'} = 'cn=otrs,ou=admins_otrs,dc=smallbusiness,dc=local';
        $Self->{'Customer::AuthModule::LDAP::AccessAttr'} = 'member';
        $Self->{'Customer::AuthModule::LDAP::Params'} = {
            port => 389,
            timeout => 120,
            async => 0,
            version => 3,
        };
	
	$Self->{CustomerUser} = {
       Name => '',
       Module => 'Kernel::System::CustomerUser::LDAP',
          Params => {
          Host => 'IPmeinesServers',
          BaseDN => 'dc=smallbusiness, dc=local',
          SSCOPE => 'sub',
          UserDN => 'cn=otrs, ou=admins_otrs, dc=smallbusiness, dc=local',
          UserPw => 'Passwort',
       },
       CustomerKey => 'sAMAccountName',
       CustomerID => 'mail',
       CustomerUserListFields => ['sAMAccountName', 'cn', 'mail'],
       CustomerUserSearchFields => ['sAMAccountName', 'cn', 'mail'],
       CustomerUserPostMasterSearchFields => ['mail'],
       CustomerUserNameFields => ['givenname', 'sn'],
       Map => [
          # note: Login, Email and CustomerID needed!
          # var, frontend, storage, shown, required, storage-type
          [ 'UserSalutation', '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' ],
          [ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var' ],
          [ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var' ],
          # [ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var' ],
          # [ 'UserComment', 'Comment', 'description', 1, 0, 'var' ],
       ],
    };
neoman
Znuny newbie
Posts: 13
Joined: 04 Mar 2011, 19:25
Znuny Version: 3.0

Re: LDAP Anbindung mit Gruppenzugehörigkeit

Post by neoman »

Konnte inzwischen das Problem selbst lösen. Die entscheidenden Zeilen waren folgende:

Code: Select all

$Self->{'Customer::AuthModule::LDAP::GroupDN'} = 'cn=otrs_customer,ou=Customer,dc=smallbusiness,dc=local';
    $Self->{'Customer::AuthModule::LDAP::AccessAttr'} = 'member';
Dabei werden nun alle Kunden angezeigt, die in der ou Customer sind, auch in Unter-ou's und Zugriff auf otrs haben alle die in der Gruppe otrs_customer sind.

MfG neoman
Locked