Блокировка учетных записей пользователей Microsoft 365 с помощью PowerShell
Эта статья относится к Microsoft 365 корпоративный и Office 365 корпоративный.
При блокировке доступа к учетной записи Microsoft 365 запрещается использовать ее для входа и доступа к службам и данным в вашей организации Microsoft 365. PowerShell можно использовать для блокировки доступа к отдельным или нескольким учетным записям пользователей.
Блокировка доступа к отдельным учетным записям пользователей
Примечание.
Модуль Azure Active Directory заменяется пакетом SDK Для Microsoft Graph PowerShell. Можно использовать пакет SDK Microsoft Graph PowerShell для доступа ко всем API Microsoft Graph. Дополнительные сведения см. разделе Начало работы с пакетом SDK Microsoft Graph PowerShell.
Сначала подключитесь к клиенту Microsoft 365.
Для блокировки и разблокировки учетных записей пользователей требуется разрешение User.ReadWrite.All область или одно из других разрешений, перечисленных на странице справочника API Graph "List subscribedSkus".
Connect-Graph -Scopes User.ReadWrite.All
Чтобы заблокировать отдельную учетную запись пользователя, используйте следующий синтаксис:
$params = @{
accountEnabled = $false
}
Update-MgUser -UserId <sign-in name of the user account> -BodyParameter $params
Примечание.
Параметр -UserId в командлете Update-MgUser принимает имя для входа в учетную запись, также известное как имя участника-пользователя, или идентификатор объекта учетной записи.
В этом примере блокируется доступ к учетной записи fabricec@litwareinc.comпользователя .
$params = @{
accountEnabled = $false
}
Update-MgUser -UserId "fabricec@litwareinc.com" -BodyParameter $params
Чтобы разблокировать эту учетную запись пользователя, выполните следующую команду:
$params = @{
accountEnabled = $true
}
Update-MgUser -UserId "fabricec@litwareinc.com" -BodyParameter $params
Чтобы отобразить имя участника-пользователя учетной записи пользователя на основе отображаемого имени пользователя, используйте следующие команды:
$userName="<display name>"
Write-Host (Get-MgUser -All | where {$_.DisplayName -eq $userName}).UserPrincipalName
В этом примере отображается имя участника-пользователя учетной записи пользователя Caleb Sills.
$userName="Caleb Sills"
Write-Host (Get-MgUser -All | where {$_.DisplayName -eq $userName}).UserPrincipalName
Чтобы заблокировать учетную запись на основе отображаемого имени пользователя, используйте следующие команды:
$userName="<display name>"
$user = Get-MgUser -Filter "displayName eq '$userName'"
$params = @{
accountEnabled = $false
}
Update-MgUser -UserId $user.Id -BodyParameter $params
Чтобы проверка состояние заблокированной учетной записи пользователя, используйте следующую команду:
Get-MgUser -ObjectID <UPN of user account> -Property "displayName,accountEnabled" | Select displayName, accountEnabled
Блокировка нескольких учетных записей пользователей
Чтобы заблокировать доступ для нескольких учетных записей пользователей, создайте текстовый файл, содержащий одно имя для входа в учетную запись в каждой строке следующим образом:
akol@contoso.com
tjohnston@contoso.com
kakers@contoso.com
В следующих командах примером текстового файла является C:\My Documents\Accounts.txt. Замените это имя файла путем и именем текстового файла.
Чтобы заблокировать доступ к учетным записям, перечисленным в текстовом файле, выполните следующую команду:
$params = @{
accountEnabled = $false
}
Get-Content "C:\My Documents\Accounts.txt" | ForEach {Update-MgUser -UserId $_ -BodyParameter $params}
Чтобы разблокировать учетные записи, перечисленные в текстовом файле, выполните следующую команду:
$params = @{
accountEnabled = $true
}
Get-Content "C:\My Documents\Accounts.txt" | ForEach {Update-MgUser -UserId $_ -BodyParameter $params}
См. также
Управление учетными записями пользователей Microsoft 365, лицензиями и группами с помощью PowerShell