Active Directory:
Auslesen der Gruppenmitgliedschaft eines Benutzers auch für OU-Admins
Tipp
von Matthias Dähn, Systemingenieur SoftEd Systems
Oktober 2008
Wie Sie Ihre Arbeit mit weiteren Admin-Skripten erleichtern, zeigen wir Ihnen in folgenden Seminaren:
Damit in einer größeren Active Directory-Umgebung nicht jeder Administrator alles verwaltet, werden die Rechte an Organisational Units (OU)-Admins delegiert. Diese haben nur Zugriff auf die Objekte innerhalb einer bestimmten OU des Active Directory.
Problem:
Möchte der OU-Admin nachschauen, in welchen Gruppen ein bestimmter Benutzer Mitglied ist (Registerkarte "Mitglied von"), wird ihm lediglich die Gruppe "Domänen-Benutzer" angezeigt. Warum? Und wie kann er alles sehen?
Ursache:
Innerhalb der Registerkarte "Mitglied von" wird das AD-Attribut "member of" angezeigt. Dieses Feld ist ein sog. Backlink-Attribut. Die Gruppenmitgliedschaft eines Benutzers ist im AD nur bei dieser Gruppe gespeichert (im Feld "members"). Das Feld "memberof" wird "on the fly" durch den Domänencontroller aufgrund der Felder "members" der verschiedenen Gruppen berechnet. Das Recht zu dieser Berechnung haben aber nur Domänen-Admins und verschiedene Operatoren. Aus diesem Grunde werden den OU-Admins keine Gruppenmitgliedschaften angezeigt. Bemerkung: Die Gruppe "Domänen-Benutzer" ist die primäre Gruppe eines Benutzers und die Mitgliedschaft in dieser Gruppe wird direkt bei dem Benutzer gespeichert (und kann damit auch angezeigt werden).
Lösung:
Die Gruppenmitgliedschaft des Benutzers wird noch einmal in einem anderen Feld ("tokengroups") direkt gespeichert. Leider wird hier nicht der Gruppenname sondern die SID der Gruppe gespeichert. Diese muss über ein kleines Script in den richtigen Gruppennamen umgewandelt werden. Microsoft gibt in KB-Artikel 301916 eine kleine Hilfestellung.