Freigeben über


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

Verwalten von Microsoft 365 mit PowerShell

Erste Schritte mit PowerShell für Microsoft 365