Blockera Microsoft 365-användarkonton med PowerShell

Denna artikel gäller för både Microsoft 365 Enterprise och Office 365 Enterprise.

När du blockerar åtkomst till ett Microsoft 365-konto förhindrar du att någon använder kontot för att logga in och komma åt tjänsterna och data i din Microsoft 365-organisation. Du kan använda PowerShell för att blockera åtkomst till enskilda eller flera användarkonton.

Blockera åtkomst till enskilda användarkonton

Obs!

Azure Active Directory-modulen ersätts av Microsoft Graph PowerShell SDK. Du kan använda Microsoft Graph PowerShell SDK för att komma åt alla Microsoft Graph API:er. Mer information finns i Komma igång med Microsoft Graph PowerShell SDK.

Anslut först till din Microsoft 365-klientorganisation.

För att blockera och avblockera användarkonton krävs behörighetsomfånget User.ReadWrite.All eller någon av de andra behörigheterna som anges på referenssidan "Lista prenumerationskus" Graph API.

Connect-Graph -Scopes User.ReadWrite.All

Använd följande syntax för att blockera ett enskilt användarkonto:

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

Obs!

Parametern -UserId i cmdleten Update-MgUser accepterar antingen kontots inloggningsnamn, även kallat användarens huvudnamn, eller kontots objekt-ID.

Det här exemplet blockerar åtkomsten till användarkontot fabricec@litwareinc.com.

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

Om du vill avblockera det här användarkontot kör du följande kommando:

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

Om du vill visa användarkontots UPN baserat på användarens visningsnamn använder du följande kommandon:

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

Det här exemplet visar användarkontot UPN för användaren Caleb Sills.

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

Om du vill blockera ett konto baserat på användarens visningsnamn använder du följande kommandon:

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

Om du vill kontrollera den blockerade statusen för ett användarkonto använder du följande kommando:

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

Blockera flera användarkonton

Om du vill blockera åtkomst för flera användarkonton skapar du en textfil som innehåller ett kontoinloggningsnamn på varje rad så här:

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

I följande kommandon är exempeltextfilen C:\My Documents\Accounts.txt. Ersätt det här filnamnet med sökvägen och filnamnet för textfilen.

Om du vill blockera åtkomsten till de konton som anges i textfilen kör du följande kommando:

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

Om du vill avblockera de konton som visas i textfilen kör du följande kommando:

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

Se även

Hantera Microsoft 365-användarkonton,-licenser och-grupper med PowerShell

Hantera Microsoft 365 med PowerShell

Börja använda PowerShell för Microsoft 365