ich habe folgendes Problem. Mein OTRS 2.3.4 authentifiziert sich gegen AD, inkl. fallback auf die DB, was soweit auch super funktioniert.
Leider ist das Syncen der Gruppen nicht so wie ich mir es erhofft hätte.
Zum Eingesetzen Systemen:
- Ubuntu JeOS 8.04 LTS
-- Apache 2
-- MySQL 5
-- PHP 5
- Windows Server 2003
Zum IST Zustand:
OTRS authentifiziert gegen Ad und lädt per "UserSyncLDAPGroupsDefination" die in der Configfile eingetragenen Gruppenberechtigungen nach.
Das funktioniert auch, hier ist nur das Problem das eine Mehrfachzuweisung eines Users in mehrere Gruppen nicht möglich ist da dieser dann die Rechte der zuletzt abgefragten Gruppe bekommt.
Das nächste Problem ist das jede Gruppe die erstellt wird in der Config.pm nach gepflegt werden muss.
Code: Select all
$Self->{'UserSyncLDAPGroupsDefination'} = {
'CN=otrs_admin,OU=otrs,DC=xxx' => {
# otrs Gruppe
'admin' => { rw => 1, ro => 1, },
'faq' => { rw => 1, ro => 1, },
'faq_admin' => { rw => 1, ro => 1, },
'itsm-configitem' => { rw => 1, ro => 1, },
'itsm-service' => { rw => 1, ro => 1, },
'stats' => { rw => 1, ro => 1, },
'users' => { rw => 1, ro => 1, }
}
};
SOLL oder eher Wunschziel:
Sinnvoller oder besser noch am elegantesten wäre es wenn ich im AD eine OU habe die alle Gruppen beinhaltet. Diese OU sollte sich per Script über Cron mit der Datenbank Syncen und neu angelegte Gruppen im AD in der Datenbank anlegen (allerdings nicht löschen). Danach sollte per Script alle User die den Gruppen zugewiesen sind abgefragt werden und entsprechend auf die Gruppe berechtigt werden. Wobei wir hier außer acht lassen das es mehr als 2 Berechtigungszustände gibt. Für mich wäre nur wichtig wer in dieser Gruppe ist darf alles oder wenn nicht in der Gruppe nichts.
Toll wäre natürlich wenn jetzt jemand sagt klar hammer fertig so geht es

Ne Spaß bei Seite. Wäre super wenn jemand eine Idee hat die mich weiter bringt sitze schon etwas länger an diesem Problem.
Was ich bis jetzt hab:
Per ldapsearch frag ich eine Liste der Gruppen ab.
Code: Select all
ldapsearch -b ou=otrs,dc=xxx -H ldap://HOSTNAME -x -D "BENUTZER" -w PASSWORT objectclass=* name | grep name | grep -v requesting: | awk '{ print $2 }'
Code: Select all
ldapsearch -b ou=otrs,dc=xxx -H ldap://HOSTNAME -x -D "BENUTZER" -w PASSWORT member