Löschen von Microsoft 365-Benutzerkonten mit PowerShell
Sie können PowerShell für Microsoft 365 verwenden, um Benutzerkonten zu löschen und wiederherzustellen.
Hinweis
Erfahren Sie, wie Sie ein Benutzerkonto mithilfe der Microsoft 365 Admin Center wiederherstellen.
Eine Liste mit zusätzlichen Ressourcen finden Sie unter Verwalten von Benutzern und Gruppen.
Verwenden von Microsoft Graph PowerShell zum Löschen eines Benutzerkontos
Hinweis
Das PowerShell-Modul azure Active Directory (AzureAD) wird veraltet und durch das Microsoft Graph PowerShell SDK ersetzt. Sie können das Microsoft Graph PowerShell-SDK verwenden, um auf alle Microsoft Graph-APIs zuzugreifen. Weitere Informationen finden Sie unter Erste Schritte mit dem Microsoft Graph PowerShell-SDK.
Informationen zur Installation bzw. zum Upgrade auf Microsoft Graph PowerShell finden Sie auch unter Installieren des Microsoft Graph PowerShell-SDK und Upgrade von Azure AD PowerShell auf Microsoft Graph PowerShell .
Informationen zur Verwendung verschiedener Methoden zur Authentifizierung Connect-Graph
in einem unbeaufsichtigten Skript finden Sie im Artikel Cmdlets für das Authentifizierungsmodul in Microsoft Graph PowerShell.
Zum Löschen eines Benutzerkontos ist der Berechtigungsbereich User.ReadWrite.All erforderlich, der auf der Microsoft Graph-API-Referenzseite "Lizenz zuweisen" aufgeführt ist.
Der Berechtigungsbereich User.Read.All ist erforderlich, um die Benutzerkontodetails im Mandanten zu lesen.
Stellen Sie zunächst eine Verbindung mit Ihrem Microsoft 365-Mandanten her.
# Connect to your tenant
Connect-MgGraph -Scopes User.Read.All, User.ReadWrite.All
Nachdem Sie eine Verbindung hergestellt haben, verwenden Sie die folgende Syntax, um ein einzelnes Benutzerkonto zu entfernen:
$userName="<display name>"
# Get the user
$userId = (Get-MgUser -Filter "displayName eq '$userName'").Id
# Remove the user
Remove-MgUser -UserId $userId -Confirm:$false
In diesem Beispiel wird das Benutzerkonto Caleb Sills entfernt.
$userName="Caleb Sills"
$userId = (Get-MgUser -Filter "displayName eq '$userName'").Id
Remove-MgUser -UserId $userId -Confirm:$false
Wiederherstellen eines Benutzerkontos
Um ein Benutzerkonto mithilfe von Microsoft Graph PowerShell wiederherzustellen, stellen Sie zunächst eine Verbindung mit Ihrem Microsoft 365-Mandanten her.
Zum Wiederherstellen eines gelöschten Benutzerkontos ist der Berechtigungsbereich Directory.ReadWrite.All erforderlich. Stellen Sie mit diesem Berechtigungsbereich eine Verbindung mit dem Mandanten her:
# Connect to your tenant
Connect-MgGraph -Scopes Directory.ReadWrite.All
Gelöschte Benutzerkonten sind nur als Objekte im Verzeichnis vorhanden, sodass Sie nicht nach dem wiederherzustellenden Benutzerkonto suchen können. Verwenden Sie stattdessen das folgende PowerShell-Skript, um das Verzeichnis nach gelöschten Objekten des Typs microsoft.graph.user zu durchsuchen:
$DeletedUsers = Get-MgDirectoryDeletedItem -DirectoryObjectId microsoft.graph.user -Property '*'
$DeletedUsers = $DeletedUsers.AdditionalProperties['value']
foreach ($deletedUser in $DeletedUsers)
{
$deletedUser | Format-Table
}
Die Ausgabe dieses Skripts sieht unter der Annahme, dass alle gelöschten Benutzerobjekte im Verzeichnis vorhanden sind, wie folgt aus:
Key Value
--- -----
businessPhones {}
displayName Caleb Sills
givenName Caleb
mail CalebS@litware.com
surname Sills
userPrincipalName cdea706c3fdc4bbd95925d92d9f71eb8CalebS@litware.com
id cdea706c-3fdc-4bbd-9592-5d92d9f71eb8
Verwenden Sie die folgende Syntax, um ein einzelnes Benutzerkonto wiederherzustellen:
# Input user account ID
$userId = "<id>"
# Restore the user
Restore-MgDirectoryDeletedItem -DirectoryObjectId $userId
In diesem Beispiel wird das Benutzerkonto calebs@litwareinc.com mithilfe des Werts für $userID
aus der Ausgabe des obigen Skripts wiederhergestellt.
$userId = "cdea706c-3fdc-4bbd-9592-5d92d9f71eb8"
Restore-MgDirectoryDeletedItem -DirectoryObjectId $userId
Die Ausgabe dieses Befehls sieht wie folgt aus:
Id DeletedDateTime
-- ---------------
cdea706c-3fdc-4bbd-9592-5d92d9f71eb8
Siehe auch
Verwalten von Microsoft 365-Benutzerkonten, -Lizenzen und -Gruppen mit PowerShell