Active Directory Delegation Wizard
AD-Berechtigungen standardisiert per PowerShell-Vorlagen vergeben.
★ 30 aktualisiert 12. April 2026 GitHub ↗
Aktuelle Version v1.4.0
Delegation in Active Directory ist mächtig, aber fehleranfällig: Rechte werden per Klick im ADUC vergeben, selten dokumentiert und kaum reproduzierbar. Dieser Wizard vergibt AD-Berechtigungen stattdessen über wiederverwendbare JSON-Vorlagen — nachvollziehbar, versionierbar und auf jeder OU identisch anwendbar. Anwenden, prüfen und zurückrollen geschieht in Sekunden; kontextabhängige Sicherheitswarnungen schützen vor risikoreichen Delegationen.
Was das Tool macht
- Wendet Delegations-Templates idempotent auf eine Ziel-OU an — wiederholbar und einheitlich.
- Standardisiert Tiering- und Berechtigungsmodelle über die ganze Domäne hinweg.
- Protokolliert Änderungen und macht sie bei Bedarf per Rollback rückgängig.
- Prüft jede Berechtigung gegen eine Risiko-Datenbank und warnt vor dem Anwenden.
Schnellstart
# Alle verfügbaren Templates auflisten
.\Invoke-ADDelegationTemplate.ps1 -ShowTemplates -TemplatePath .\templates
# Template 101 auf eine OU anwenden
.\Invoke-ADDelegationTemplate.ps1 `
-Identity "Contoso\Helpdesk-Berlin" `
-Path "OU=UsersBerlin,DC=contoso,DC=local" `
-TemplateIDs 101 `
-TemplatePath .\templates
# Mit Änderungsprotokoll anwenden (für späteres Rollback)
.\Invoke-ADDelegationTemplate.ps1 `
-Identity "Contoso\Helpdesk-Berlin" `
-Path "OU=UsersBerlin,DC=contoso,DC=local" `
-TemplateIDs 101,102 `
-TemplatePath .\templates `
-LogChanges `
-LogPath "$env:USERPROFILE\DelegationLog.log"
Wird
-TemplatePathweggelassen, lädt das Skript automatisch aus dem Unterverzeichnistemplates\neben dem Skript.
Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
-Identity | string | AD-Prinzipal (Benutzer/Gruppe), der die Rechte erhält |
-Path | string | Zielobjekt im distinguishedName-Format (z. B. eine OU) |
-TemplateIDs | int[] | Eine oder mehrere anzuwendende Template-IDs |
-TemplatePath | string | Pfad zu einer JSON-Datei oder einem Verzeichnis mit JSON-Dateien |
-ShowTemplates | switch | Alle geladenen Templates anzeigen (gruppiert nach Objekttyp → Kategorie) |
-IncludeDetails | switch | Regeln und Quelldatei je Template einblenden |
-LogChanges | switch | Änderungsprotokoll aktivieren (benötigt -LogPath) |
-LogPath | string | Pfad zur Logdatei |
-WarnSeverity | string | Mindest-Risikostufe für Warnungen: Critical, High, Medium (Standard), Low |
-DisableSecurityWarning | switch | Alle Warnungen und die interaktive Bestätigung unterdrücken |
Anwendung
# Detailansicht der Templates (inkl. Regeln & AppliesTo)
.\Invoke-ADDelegationTemplate.ps1 -ShowTemplates -IncludeDetails -TemplatePath .\templates
# Mehrere Templates auf einmal anwenden
.\Invoke-ADDelegationTemplate.ps1 `
-Identity "Helpdesk-Team" `
-Path "OU=UsersBerlin,DC=contoso,DC=local" `
-TemplateIDs 101,102,103 `
-TemplatePath .\templates
Sicherheitswarnungen
security\security-reference.json enthält eine kuratierte Risiko-Datenbank für
AD-Attribute und erweiterte Rechte. Beim Anwenden gleicht das Skript jede
Berechtigung kontextabhängig pro Objekttyp gegen diese Datenbank ab und warnt bei
Einträgen, die -WarnSeverity (Standard Medium) erreichen oder übersteigen. Eine
[Y/N]-Abfrage blockiert bis zur Bestätigung — mit -DisableSecurityWarning lässt
sie sich für nicht-interaktive bzw. CI-Nutzung überspringen.
| Stufe | Bedeutung |
|---|---|
Critical | Direkte Übernahme von Domäne oder Objekt möglich |
High | Rechteausweitung oder Persistenz möglich |
Medium | Laterale Bewegung oder Informationsabfluss |
Low | Geringes Missbrauchspotenzial |
# Nur bei kritischen Delegationen warnen
.\Invoke-ADDelegationTemplate.ps1 `
-Identity "Helpdesk-Team" `
-Path "OU=UsersBerlin,DC=contoso,DC=local" `
-TemplateIDs 100 `
-TemplatePath .\templates `
-WarnSeverity Critical
Änderungen rückgängig machen
Protokollierte Änderungen lassen sich jederzeit einsehen und zurückrollen:
# Alle protokollierten Änderungen anzeigen
Show-ADDelegationTemplateChanges -LogFilePath "$env:USERPROFILE\DelegationLog.log"
# Alle protokollierten Änderungen zurückrollen
Show-ADDelegationTemplateChanges -LogFilePath "$env:USERPROFILE\DelegationLog.log" | `
Revert-ADDelegationTemplate
# Nur ein bestimmtes Template zurückrollen
Show-ADDelegationTemplateChanges -LogFilePath "$env:USERPROFILE\DelegationLog.log" | `
Where-Object { $_.TemplateID -eq "102" } | `
Revert-ADDelegationTemplate
Mitgelieferte Vorlagen
Die Templates liegen als JSON-Dateien im Ordner templates\:
| Datei | Objekttyp | Beispiele |
|---|---|---|
100-user.json | Benutzer | Passwort zurücksetzen, Eigenschaften bearbeiten, Konten verwalten |
200-group.json | Gruppen | Mitgliedschaft verwalten, Gruppen anlegen/löschen |
300-computer.json | Computer | Domänenbeitritt, Passwort zurücksetzen |
400-organizationalUnit.json | Organisationseinheiten | OUs anlegen, umbenennen, verwalten |
500-groupPolicy.json | Gruppenrichtlinien | GPOs ver-/entknüpfen, RSoP lesen |
600-wmi.json | WMI-Filter | WMI-Filter anlegen, löschen, zuweisen |
700-inetOrgPerson.json | inetOrgPerson | LDAP-/schemabasierte Umgebungen |
Die genauen Template-IDs und Regeln je Datei zeigt -ShowTemplates -IncludeDetails.
Wichtige Änderungen in v1.4
GenericAllaus den Standard-Templates entfernt. Vorlagen wie100,200,300,600,700nutzen jetzt granulare Rechte (ReadProperty|WriteProperty,CreateChild|DeleteChildusw.) stattGenericAll. WerGenericAllbraucht, legt ein eigenes Template an.- Template-IDs neu vergeben. Mehrere IDs haben sich verschoben (z. B. Benutzer
auf
100–152, Gruppen200–214, Computer300–312). Vor dem Update mit-ShowTemplatesabgleichen. - Interaktive Sicherheitsbestätigung. Bei risikoreichen Eigenschaften erscheint
eine Warnung mit
[Y/N]-Abfrage; für CI-Läufe-DisableSecurityWarningsetzen.
Quelle
Vorlagen-Grundlage @Microsoft: Appendix O: Active Directory Delegation Wizard File. Die jeweils aktuelle Fassung samt JSON-Schema und Rights-Migrationsleitfaden liegt im GitHub-Repository.