使用 PowerShell 封鎖Microsoft 365使用者帳戶

本文適用於 Microsoft 365 企業版和 Office 365 企業版。

當您封鎖對Microsoft 365帳戶的存取時,您會防止任何人使用該帳戶來登入及存取您Microsoft 365組織中的服務和資料。 您可以使用 PowerShell 來封鎖對個別或多個使用者帳戶的存取。

針對 Graph 模組,請使用 Azure Active Directory PowerShell

首先,連線到您的Microsoft 365租使用者

封鎖對個別使用者帳戶的存取

使用下列語法來封鎖個別使用者帳戶:

Set-AzureADUser -ObjectID <sign-in name of the user account> -AccountEnabled $false

注意

Set-AzureAD Cmdlet 中的 -ObjectID 參數會接受帳戶登入名稱,也稱為使用者主體名稱或帳戶的物件識別碼。

本範例會封鎖存取使用者帳戶 fabricec@litwareinc.com

Set-AzureADUser -ObjectID fabricec@litwareinc.com -AccountEnabled $false

若要將使用者帳戶解除封鎖,請執行下列命令:

Set-AzureADUser -ObjectID fabricec@litwareinc.com -AccountEnabled $true

若要根據使用者的顯示名稱顯示使用者帳戶 UPN,請使用下列命令:

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

此範例會顯示使用者 Caleb Sills 的 使用者帳戶 UPN。

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

若要根據使用者的顯示名稱封鎖帳戶,請使用下列命令:

$userName="<display name>"
Set-AzureADUser -ObjectID (Get-AzureADUser | where {$_.DisplayName -eq $userName}).UserPrincipalName -AccountEnabled $false

若要檢查使用者帳戶的封鎖狀態,請使用下列命令:

Get-AzureADUser  -ObjectID <UPN of user account> | Select DisplayName,AccountEnabled

封鎖多個使用者帳戶

若要封鎖多個使用者帳戶的存取,請建立一個文字檔,其中包含每一行的一個帳戶登入名稱,如下所示:

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

在下列命令中,範例文字檔為 C:\My Documents\Accounts.txt。 將此檔案名取代為文字檔的路徑和檔案名。

若要封鎖對文字檔中所列帳戶的存取,請執行下列命令:

Get-Content "C:\My Documents\Accounts.txt" | ForEach {Set-AzureADUser -ObjectID $_ -AccountEnabled $false}

若要解除封鎖文字檔中列出的帳戶,請執行下列命令:

Get-Content "C:\My Documents\Accounts.txt" | ForEach {Set-AzureADUser -ObjectID $_ -AccountEnabled $true}

使用適用於 Windows PowerShell 的 Microsoft Azure Active Directory 模組。

首先,連線到您的Microsoft 365租使用者

封鎖個別使用者帳戶

使用下列語法來封鎖個別使用者帳戶的存取:

Set-MsolUser -UserPrincipalName <sign-in name of user account>  -BlockCredential $true

注意

PowerShell Core 不支援Windows PowerShell模組和名稱中有 Msol 的 Cmdlet Microsoft Azure Active Directory模組。 您必須從 Windows PowerShell 執行這些 Cmdlet。

本範例會封鎖存取使用者帳戶 fabricec @ litwareinc.com

Set-MsolUser -UserPrincipalName fabricec@litwareinc.com -BlockCredential $true

若要將使用者帳戶解除封鎖,請執行下列命令:

Set-MsolUser -UserPrincipalName <sign-in name of user account>  -BlockCredential $false

若要檢查使用者帳戶的封鎖狀態,請執行下列命令:

Get-MsolUser -UserPrincipalName <sign-in name of user account> | Select DisplayName,BlockCredential

封鎖多個使用者帳戶的存取

首先,在每一行建立一個包含一個帳戶的文字檔,如下所示:

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

在下列命令中,範例文字檔為 C:\My Documents\Accounts.txt。 將此檔案名取代為文字檔的路徑和檔案名。

若要封鎖文字檔中所列帳戶的存取權,請執行下列命令:

Get-Content "C:\My Documents\Accounts.txt" | ForEach { Set-MsolUser -UserPrincipalName $_ -BlockCredential $true }

若要解除封鎖對文字檔中所列帳戶的存取,請執行下列命令:

Get-Content "C:\My Documents\Accounts.txt" | ForEach { Set-MsolUser -UserPrincipalName $_ -BlockCredential $false }

另請參閱

以 PowerShell 管理 Microsoft 365 使用者帳戶、授權和群組

使用 PowerShell 管理 Microsoft 365

開始使用適用於 Microsoft 365 的 PowerShell