Bloquear contas de usuário do Microsoft 365 com o PowerShell

Esse artigo se aplica ao Microsoft 365 Enterprise e ao Office 365 Enterprise.

Ao bloquear o acesso a uma conta do Microsoft 365, você impede que qualquer pessoa use a conta para entrar e acessar os serviços e dados em sua organização do Microsoft 365. Você pode usar o PowerShell para bloquear o acesso a contas de usuário individuais ou múltiplas.

Bloquear o acesso a contas de usuário individuais

Observação

O módulo do Azure Active Directory está sendo substituído pelo SDK do Microsoft Graph PowerShell. Você pode usar o Microsoft Graph SDK do PowerShell para acessar todas as APIs do Microsoft Graph. Para saber mais, confira Introdução ao SDK do PowerShell do Microsoft Graph.

Primeiro, conecte-se ao locatário do Microsoft 365.

Bloquear e desbloquear contas de usuário requer o escopo de permissão User.ReadWrite.All ou uma das outras permissões listadas na página de referência 'Lista subscritoSkus' API do Graph.

Connect-Graph -Scopes User.ReadWrite.All

Use a seguinte sintaxe para bloquear uma conta de usuário individual:

$params = @{
	accountEnabled = $false
}
Update-MgUser -UserId <sign-in name of the user account> -BodyParameter $params

Observação

O parâmetro -UserId no cmdlet Update-MgUser aceita o nome de entrada da conta, também conhecido como Nome da Entidade de Usuário ou ID do objeto da conta.

Este exemplo bloqueia o acesso à conta fabricec@litwareinc.comde usuário .

$params = @{
	accountEnabled = $false
}
Update-MgUser -UserId "fabricec@litwareinc.com" -BodyParameter $params

Para desbloquear essa conta de usuário, execute o seguinte comando:

$params = @{
	accountEnabled = $true
}
Update-MgUser -UserId "fabricec@litwareinc.com" -BodyParameter $params

Para exibir a conta de usuário UPN com base no nome de exibição do usuário, use os seguintes comandos:

$userName="<display name>"
Write-Host (Get-MgUser -All | where {$_.DisplayName -eq $userName}).UserPrincipalName

Este exemplo exibe a UPN da conta de usuário para o usuário Caleb Sills.

$userName="Caleb Sills"
Write-Host (Get-MgUser -All | where {$_.DisplayName -eq $userName}).UserPrincipalName

Para bloquear uma conta com base no nome de exibição do usuário, use os seguintes comandos:

$userName="<display name>"
$user = Get-MgUser -Filter "displayName eq '$userName'"
$params = @{
	accountEnabled = $false
}
Update-MgUser -UserId $user.Id -BodyParameter $params

Para marcar o status bloqueado de uma conta de usuário use o seguinte comando:

Get-MgUser -ObjectID <UPN of user account> -Property "displayName,accountEnabled" | Select displayName, accountEnabled

Bloquear várias contas de usuário

Para bloquear o acesso a várias contas de usuário, crie um arquivo de texto que contenha um nome de entrada de conta em cada linha como esta:

akol@contoso.com
tjohnston@contoso.com
kakers@contoso.com

Nos comandos a seguir, o arquivo de texto de exemplo é C:\My Documents\Accounts.txt. Substitua esse nome de arquivo pelo caminho e pelo nome do arquivo de texto.

Para bloquear o acesso às contas listadas no arquivo de texto, execute o seguinte comando:

$params = @{
	accountEnabled = $false
}
Get-Content "C:\My Documents\Accounts.txt" | ForEach {Update-MgUser -UserId $_ -BodyParameter $params}

Para desbloquear as contas listadas no arquivo de texto, execute o seguinte comando:

$params = @{
	accountEnabled = $true
}
Get-Content "C:\My Documents\Accounts.txt" | ForEach {Update-MgUser -UserId $_ -BodyParameter $params}

Confira também

Gerenciar contas de usuário, licenças e grupos do Microsoft 365 com o PowerShell

Gerenciar o Microsoft 365 com o PowerShell

Introdução ao Windows PowerShell para o Microsoft 365