Eliminar contas de utilizador do Microsoft 365 com o PowerShell

Pode utilizar o PowerShell para o Microsoft 365 para eliminar e restaurar contas de utilizador.

Nota

Saiba como restaurar uma conta de utilizador com o centro de administração do Microsoft 365.

Para obter uma lista de recursos adicionais, veja Gerir utilizadores e grupos.

Utilizar o PowerShell do Microsoft Graph para eliminar uma conta de utilizador

Nota

O módulo do PowerShell do Azure Active Directory (AzureAD) está a ser preterido e substituído pelo SDK do PowerShell do Microsoft Graph. Pode utilizar o SDK do PowerShell do Microsoft Graph para aceder a todas as APIs do Microsoft Graph. Para obter mais informações, veja Introdução ao SDK do PowerShell do Microsoft Graph.

Veja também Instalar o SDK do PowerShell do Microsoft Graph e Atualizar do Azure AD PowerShell para o Microsoft Graph PowerShell para obter informações sobre como instalar e atualizar para o Microsoft Graph PowerShell, respetivamente.

Para obter informações sobre como utilizar métodos diferentes para autenticar Connect-Graph num script sem supervisão, consulte o artigo Cmdlets do módulo de autenticação no Microsoft Graph PowerShell.

A eliminação de uma conta de utilizador requer o âmbito de permissão User.ReadWrite.All, que está listado na página de referência "Atribuir licença" do Microsoft Graph API.

O âmbito de permissão User.Read.All é necessário para ler os detalhes da conta de utilizador no inquilino.

Primeiro, ligue-se ao seu inquilino do Microsoft 365.

# Connect to your tenant
Connect-MgGraph -Scopes User.Read.All, User.ReadWrite.All

Depois de ligar, utilize a seguinte sintaxe para remover uma conta de utilizador individual:

$userName="<display name>"
# Get the user
$userId = (Get-MgUser -Filter "displayName eq '$userName'").Id
# Remove the user
Remove-MgUser -UserId $userId -Confirm:$false

Este exemplo remove a conta de utilizador Caleb Sills.

$userName="Caleb Sills"
$userId = (Get-MgUser -Filter "displayName eq '$userName'").Id
Remove-MgUser -UserId $userId -Confirm:$false

Restaurar uma conta de utilizador

Para restaurar uma conta de utilizador com o Microsoft Graph PowerShell, primeiro ligue-se ao seu inquilino do Microsoft 365.

Para restaurar uma conta de utilizador eliminada, é necessário o âmbito de permissão Directory.ReadWrite.All . Ligue-se ao inquilino com este âmbito de permisão:

# Connect to your tenant
Connect-MgGraph -Scopes Directory.ReadWrite.All

As contas de utilizador eliminadas já não existem, exceto como objetos no diretório, pelo que não pode procurar a conta de utilizador a restaurar. Em vez disso, utilize o seguinte script do PowerShell para procurar objetos eliminados no diretório do tipo microsoft.graph.user:

$DeletedUsers = Get-MgDirectoryDeletedItem -DirectoryObjectId microsoft.graph.user -Property '*'
$DeletedUsers = $DeletedUsers.AdditionalProperties['value']
foreach ($deletedUser in $DeletedUsers)
{
   $deletedUser | Format-Table
}

O resultado deste script, partindo do princípio de que existem objetos de utilizador eliminados no diretório, terá o seguinte aspeto:

Key               Value
---               -----
businessPhones    {}
displayName       Caleb Sills
givenName         Caleb
mail              CalebS@litware.com
surname           Sills
userPrincipalName cdea706c3fdc4bbd95925d92d9f71eb8CalebS@litware.com
id                cdea706c-3fdc-4bbd-9592-5d92d9f71eb8

Utilize a seguinte sintaxe para restaurar uma conta de utilizador individual:

# Input user account ID
$userId = "<id>"
# Restore the user
Restore-MgDirectoryDeletedItem -DirectoryObjectId $userId

Este exemplo restaura a conta calebs@litwareinc.com de utilizador com o valor $userID de a partir da saída do script acima.

$userId = "cdea706c-3fdc-4bbd-9592-5d92d9f71eb8"
Restore-MgDirectoryDeletedItem -DirectoryObjectId $userId

O resultado deste comando tem o seguinte aspeto:

Id                                   DeletedDateTime
--                                   ---------------
cdea706c-3fdc-4bbd-9592-5d92d9f71eb8

Consulte também

Gerir contas de utilizador, licenças e grupos do Microsoft 365 com o PowerShell

Gerir o Microsoft 365 com o PowerShell

Introdução ao PowerShell para Microsoft 365