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

 

適用版本:Office 365 Enterprise, Office 365 Midsize Business, Office 365 Small Business

上次修改主題的時間:2017-05-17

說明如何使用 Office 365 PowerShell 來鎖定、停用和封鎖對 Office 365 帳戶的存取。

封鎖對 Office 365 帳戶的存取,可防止其他人使用此帳戶來登入和存取您的 Office 365 組織中的服務和資料。當您封鎖帳戶的存取時,使用者會在嘗試登入時收到下列錯誤訊息:

封鎖的 Office 365 帳戶。

您可以使用 Office 365 PowerShell 來封鎖對個別和多個使用者帳戶的存取。

  • 本主題中的程序需要您連線到 Office 365 PowerShell。如需詳細指示,請參閱 連線至 Office 365 PowerShell

  • 當您封鎖使用者帳戶時,可能需要 24 小時才會在所有使用者的裝置和用戶端上生效。

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

Set-MsolUser -UserPrincipalName <Account> -BlockCredential $true

此範例會封鎖對使用者帳戶 fabricec@litwareinc.com 的存取。

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

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

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

  1. 建立一個文字檔,其中每一行上都包含一個帳戶,如下所示:

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

    在這個範例中,文字檔為 C:\My Documents\Accounts.txt。

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

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

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

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

若要從 Azure Active Directory V2 PowerShell 模組使用 New-AzureADUser Cmdlet,您必須先連接至您的訂用帳戶。如需相關指示,請參閱與 Azure Active Directory V2 PowerShell 模組連接

連接之後,使用下列語法來封鎖個別使用者帳戶:

Set-​AzureADUser -ObjectID <Account> -AccountEnabled $false

此範例會封鎖對使用者帳戶 fabricec@litwareinc.com 的存取。

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

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

Set-​AzureADUser -ObjectID fabricec@litwareinc.com -AccountEnabled $true
註記注意事項:
Set-AzureAD Cmdlet 中的 -ObjectID 參數接受帳戶名稱,也稱為使用者主體名稱,或帳戶的物件 ID。

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

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

本範例針對名為 Caleb Sills 的使用者顯示帳戶名稱。

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

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

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

若要封鎖對多個使用者帳戶的存取:

  1. 建立一個文字檔,其中每一行上都包含一個帳戶名稱,如下所示:

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

    在這個範例中,文字檔為 C:\My Documents\Accounts.txt。

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

    Get-Content "C:\My Documents\Accounts.txt" | Set-​AzureADUSer -ObjectID $_.ObjectID -AccountEnabled $true
    

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

    Get-Content "C:\My Documents\Accounts.txt" | Set-​AzureADUSer -ObjectID $_.ObjectID -AccountEnabled $false
    
 
顯示: