Tags: Active Directory, PowerShell
Wird ein AD-Objekt wie zum Beispiel ein User-Objekt gelöscht, ist es noch nicht ganz verloren. Es wird bekanntlich in einen speziellen Container (auch Tombstone genannt) mit dem Namen "CN=Deleted Objects" verschoben, indem es in der Regel noch 180 Tage (dieser Wert kann variieren) frisch gehalten wird. Dieser Container wird in der regulären Active Directory Benutzer- und Computer-Konsole nicht angezeigt, kann aber mit dem Tool Ldp.exe sichtbar gemacht werden.
Um ein solches Objekt per PowerShell und den Cmdlets aus dem ActiveDirectory-Modul wiederherzustellen, muss beim Abrufen des Objekts per Get-ADObject der Parameter IncludeDeletedObjects gesetzt werden. Die auf diese Weise gefunden Objekte werden per Restore-AdObject-Cmdlet wiederhergestellt.
User anlegen, löschen und wiederherstellen
Ein einfaches Beispiel soll das Prinzip veranschaulichen. Zu Testzwecken wird in der aktuellen Domäne per New-AdUser ein neuer User angelegt:
New-AdUser –Name Hannes
Dieser User wird gleich danach wieder per Remove-AdObject gelöscht:
Get-AdUser–Identity Hannes | Remove-AdObject –Confirm:$False
Beim Abrufen per Get-AdObject wird der Parameter IncludeDeletedObjects gesetzt:
Get-AdObject –Filter { objectClass –eq "user" –and Name –like "*Hannes*” –IncludeDeletedObjects
Der gelöschte User sollte dabei ausgegeben werden. Der nächste Aufruf stellt den gelöschten User wieder her:
Get-AdObject –Filter { objectClass –eq "user" –and Name –like "*Hannes*” –IncludeDeletedObjects | Restore-AdObject
Die hier beschriebene Funktionalität hat nichts mit dem AD-Papierkorb zu tun, der mit Windows 2008 R2 eingeführt wurde.
Täglich Know-how für IT-Pros mit unserem Newsletter
Verwandte Beiträge
- Security- und Health-Checks für Active Directory mit PowerShell-Scripts
- Split-brain DNS in Active Directory einrichten
- AD-Konten mit DES- und RC4-Algorithmus für Kerberos-Verschlüsselung finden
- UserAccountControl: Sicherheitseinstellungen für AD-Konten prüfen und ändern
- Gruppen in Azure Active Directory mit PowerShell verwalten
Weitere Links
1 Kommentar
Warum so umständlich mit einzelnen PowerShell Cmdlets wo es doch den AD-Papierkorb seit Server 2012 gibt?
Gut, der basiert auch auf PowerShell, aber es werden lediglich 2 Mausklicks benötigt, dann sind die AD-Objekte vollständig und sofort nutzbar wiederhergestellt. Im Tombstone-Container liegen ja nur die "kastrierten rudimentären Überreste" des ehemaligen Objekts, die nach Wiederherstellung wieder vervollständigt werden müssen.