Bloquer les comptes d’utilisateur Microsoft 365 avec PowerShell
Cet article est valable pour Microsoft 365 Entreprise et Office 365 Entreprise.
Lorsque vous bloquez l’accès à un compte Microsoft 365, vous empêchez quiconque d’utiliser le compte pour se connecter et accéder aux services et données de votre organization Microsoft 365. Vous pouvez utiliser PowerShell pour bloquer l’accès à des comptes d’utilisateur individuels ou multiples.
Bloquer l’accès à des comptes d’utilisateur individuels
Remarque
Le module Azure Active Directory est remplacé par le Kit de développement logiciel (SDK) Microsoft Graph PowerShell. Vous pouvez utiliser le kit de développement logiciel (SDK) PowerShell Microsoft Graph pour accéder à toutes les API Microsoft Graph. Pour plus d’informations, consultez Démarrage avec le kit de développement logiciel (SDK) PowerShell Microsoft Graph.
Tout d’abord, connectez-vous à votre locataire Microsoft 365.
Le blocage et le déblocage des comptes d’utilisateur nécessitent l’étendue d’autorisation User.ReadWrite.All ou l’une des autres autorisations répertoriées dans la page de référence « List subscribedSkus » API Graph.
Connect-Graph -Scopes User.ReadWrite.All
Utilisez la syntaxe suivante pour bloquer un compte d’utilisateur individuel :
$params = @{
accountEnabled = $false
}
Update-MgUser -UserId <sign-in name of the user account> -BodyParameter $params
Remarque
Le paramètre -UserId dans l’applet de commande Update-MgUser accepte soit le nom de connexion au compte, également appelé nom d’utilisateur principal, soit l’ID d’objet du compte.
Cet exemple bloque l’accès au compte fabricec@litwareinc.comd’utilisateur .
$params = @{
accountEnabled = $false
}
Update-MgUser -UserId "fabricec@litwareinc.com" -BodyParameter $params
Pour débloquer ce compte, exécutez la commande suivante :
$params = @{
accountEnabled = $true
}
Update-MgUser -UserId "fabricec@litwareinc.com" -BodyParameter $params
Pour afficher l’UPN du compte d’utilisateur en fonction du nom d’affichage de l’utilisateur, utilisez les commandes suivantes :
$userName="<display name>"
Write-Host (Get-MgUser -All | where {$_.DisplayName -eq $userName}).UserPrincipalName
Cet exemple montre comment afficher l’UPN du compte d’utilisateur pour l’utilisateur Caleb Sills.
$userName="Caleb Sills"
Write-Host (Get-MgUser -All | where {$_.DisplayName -eq $userName}).UserPrincipalName
Pour bloquer un compte en fonction du nom d’affichage de l’utilisateur, utilisez les commandes suivantes :
$userName="<display name>"
$user = Get-MgUser -Filter "displayName eq '$userName'"
$params = @{
accountEnabled = $false
}
Update-MgUser -UserId $user.Id -BodyParameter $params
Pour case activée les status bloqués d’un compte d’utilisateur, utilisez la commande suivante :
Get-MgUser -ObjectID <UPN of user account> -Property "displayName,accountEnabled" | Select displayName, accountEnabled
Bloquer plusieurs comptes d’utilisateur
Pour bloquer l’accès de plusieurs comptes d’utilisateur, créez un fichier texte contenant un nom de connexion de compte sur chaque ligne, comme suit :
akol@contoso.com
tjohnston@contoso.com
kakers@contoso.com
Dans les commandes suivantes, l’exemple de fichier texte est C :\My Documents\Accounts.txt. Remplacez ce nom de fichier par le chemin d’accès et le nom de fichier de votre fichier texte.
Pour bloquer l’accès aux comptes indiqués dans le fichier texte, exécutez la commande suivante :
$params = @{
accountEnabled = $false
}
Get-Content "C:\My Documents\Accounts.txt" | ForEach {Update-MgUser -UserId $_ -BodyParameter $params}
Pour débloquer les comptes répertoriés dans le fichier texte, exécutez la commande suivante :
$params = @{
accountEnabled = $true
}
Get-Content "C:\My Documents\Accounts.txt" | ForEach {Update-MgUser -UserId $_ -BodyParameter $params}
Voir aussi
Gérer les comptes d’utilisateurs, les licences et les groupes Microsoft 365 avec PowerShell