Nachdem ich hier schon eine Menge herumprobiert habe, dachte ich mir hier zu schreiben wäre vielleicht etwas hilfreicher!
In unserem Netzwerk möchten wir ein Ticket-System einführen und sind zu dem Schluss gekommen, dass OTRS für uns das Beste zu sein scheint. Also runtergeladen, Server fertig gemacht und OTRS 3.2.8 mit ITSM installiert - funktioniert gut und läuft flüssig. Die Kunden sind alle innerhalb der OU "Benutzer", allerdings sollen sich nur diejenigen anmelden können, welche in der Sicherheitsgruppe "OTRS-Customers" befinden.
Hiermit synchronisieren wir die "Kunden" aus der AD:
Code: Select all
$Self->{CustomerUser} = {
Module => 'Kernel::System::CustomerUser::LDAP',
Params => {
Host => 'dc.firma.local',
BaseDN => 'OU=Benutzer, DC=firma, DC=local',
SSCOPE => 'sub',
UserDN => 'CN=OTRS_Searcher,OU=Spezial,DC=firma,DC=local',
UserPw => 'somepass',
AlwaysFilter => '(objectClass=user)',
SourceCharset => 'utf-8',
DestCharset => 'utf-8',
},
CustomerKey => 'sAMAccountName',
CustomerID => 'mail',
CustomerUserListFields => ['sAMAccountName', 'cn', 'mail'],
CustomerUserSearchFields => ['sAMAccountName', 'cn', 'mail'],
CustomerUserPostMasterSearchFields => ['mail'],
CustomerUserNameFields => ['givenname', 'sn'],
Map => [
[ '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', 'sAMAccountName', 0, 1, 'var' ],
[ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var' ],
],
};
Eine Anmeldung der Kunden per LDAP funktioniert hiermit schonmal gut, allerdings ohne SSO:
Code: Select all
#$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
#$Self->{'Customer::AuthModule::LDAP::Host'} = 'dc.firma.local';
#$Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'OU=Benutzer, DC=firma, DC=local';
#$Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
#$Self->{'Customer::AuthModule::LDAP::GroupDN'} = 'CN=OTRS-Customers,OU=OTRS,OU=Berechtigungen,DC=firma,DC=local';
#$Self->{'Customer::AuthModule::LDAP::AccessAttr'} = 'member';
#$Self->{'Customer::AuthModule::LDAP::UserAttr'} = 'DN';
#$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'CN=OTRS AD Searcher,OU=Spezial,OU=Benutzer,DC=firma,DC=local';
#$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'somepass';
Code: Select all
$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::HTTPBasicAuth';
Code: Select all
AlwaysFilter => '(objectClass=user)',
Code: Select all
AlwaysFilter => '(&(objectClass=user)(memberof=CN=OTRS-Customers,OU=OTRS,OU=Berechtigungen,DC=firma,DC=local))',
Jetzt wüsste ich gern, wie ich dieses Problem lösen kann. Vielleicht hat es ja bereits jemand hier umgesetzt?