activedirectory:addelegate
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende Überarbeitung | |||
activedirectory:addelegate [2016/04/15 13:04] – ronny | activedirectory:addelegate [2016/04/15 13:43] (aktuell) – [funktionierende Powershell-Funktion] ronny | ||
---|---|---|---|
Zeile 47: | Zeile 47: | ||
Dieses Script erzeugt eine PSSession, übergibt dann dem angegebenen Domänencontroller alle wichtigen Werte. Anschließend holt es sich die Sicherheitsbeschreibung des angegebenen AD-Objekts, fügt eine Sicherheitsregel hinzu und schreibt die erweiterte Sicherheitsbeschreibung zurück. Abschließend wird die PSSession zerstört. | Dieses Script erzeugt eine PSSession, übergibt dann dem angegebenen Domänencontroller alle wichtigen Werte. Anschließend holt es sich die Sicherheitsbeschreibung des angegebenen AD-Objekts, fügt eine Sicherheitsregel hinzu und schreibt die erweiterte Sicherheitsbeschreibung zurück. Abschließend wird die PSSession zerstört. | ||
+ | ===== Die ActiveDirectoryRights bestimmen ===== | ||
+ | Suche oder erstelle dir mit den grafischen Werkzeugen die benötigte Delegation beispielhaft an einem AD-Objekt. | ||
+ | Dann gehts weiter in der Powershell: | ||
+ | |||
+ | <code Powershell> | ||
+ | Import-Module ActiveDirectory | ||
+ | </ | ||
+ | |||
+ | Importiert die ActiveDirectory-bezogenen Cmdlets der Powershell und bindet die Active Directory als PSDrive AD: ein. Müssen ggf. durch die RSAT-Werkzeuge nachinstalliert werden. | ||
+ | |||
+ | <code Powershell> | ||
+ | $ACL = Get-Acl AD: | ||
+ | </ | ||
+ | |||
+ | Ruft die Sicherheitsbeschreibung des gewünschten Objekts ab | ||
+ | |||
+ | <code Powershell> | ||
+ | $ACL.Access | ? | ||
+ | </ | ||
+ | |||
+ | Ruft alle Sicherheitsregeln (ACE) ab, die für den Benutzer Netbios\SamAccountName vorhanden sind und sieht in etwa so aus: | ||
+ | |||
+ | < | ||
+ | PS C:\> $ACL.Access | ? | ||
+ | |||
+ | |||
+ | ActiveDirectoryRights : ReadProperty, | ||
+ | InheritanceType | ||
+ | ObjectType | ||
+ | InheritedObjectType | ||
+ | ObjectFlags | ||
+ | AccessControlType | ||
+ | IdentityReference | ||
+ | IsInherited | ||
+ | InheritanceFlags | ||
+ | PropagationFlags | ||
+ | </ | ||
+ | |||
+ | Der erforderliche Wert steckt in der Zeile **ActiveDirectoryRights**. Wir speichern die Sicherheitsregel in einer eigenen Variablen, um leichter darauf zugreifen zu können: | ||
+ | |||
+ | <code Powershell> | ||
+ | $ExampleRule = $ACL.Access | ? | ||
+ | </ | ||
+ | |||
+ | Wenn es mehrere Regeln für den User/die Gruppe gibt, ist ExampleRule ein Array. In diesem Fall kann man die erste Sicherheitsregel mit $ExampleRule[0], | ||
+ | |||
+ | <code Powershell> | ||
+ | $ExampleRule.ActiveDirectoryRights.value__ | ||
+ | </ | ||
+ | |||
+ | Als Ergebnis erhält man eine Zahlenausgabe, | ||
+ | |||
+ | ===== ObjectType ermitteln ===== | ||
+ | |||
+ | Das ObjectType ist eine maskierung, für welche AD-Attribute die in der Sicherheitsregel beschriebenen Rechte gelten sollen. Soll die Berechtigung für alle Attribute gelten, nimmt man den String **00000000-0000-0000-0000-000000000000** | ||
+ | |||
+ | Andernfalls kann man sich ein Testobjekt erzeugen, dem mit grafischen Werkzeugen die gewünschte Delegation vergeben, und sich die Sicherheitsregel wie weiter oben beschrieben holen. Dort steht der angepasste ObjectType dann in der entsprechenden Zeile. | ||
===== Altes Zeugs (Recherche und so) ===== | ===== Altes Zeugs (Recherche und so) ===== | ||
activedirectory/addelegate.1460718299.txt.gz · Zuletzt geändert: 2016/04/15 13:04 von ronny