Блокировка аккаунта пользователя в Active Directory происходит, если он несколько раз подряд неправильно набрал пароль. В этой статья я покажу, как найти и разблокировать аккаунт одного конкретного пользователя или сразу всех заблокированных пользователей в домене AD с помощью консоли ADUC и PowerShell.
Пороговое значение количества попыток набора неправильного пароля и длительность блокировки аккаунта пользователя определяется доменной политике (обычно это Default Domain Policy_ в секции Computer Configuration -> Windows Settings -> Security Settings -> Account Policy -> Account Lockout Policy.
В моем домене Active Directory эта политика настроена следующим образом:
- Account lockout threshold (длительность блокировки аккаунта)– 30 minutes;
- Account lockout duration (количество неверных попыток набора пароля, после которых пользователь блокируется) – 10 invalid logon attempts;
- Reset account lockout counter after (время сброса счетчика, учитывающего неверные пароли) -10 minutes.
В моем случае после 10 попыток ввести неправильный пароль учетная запись пользователя блокируется на 30 минут. В это время пользователь не может авторизоваться в домене под своим аккаунтом с ошибкой “1909: The referenced account is currently locked out and may not be logged on to”.
Администратора домена может досрочно разблокировать акккаунт пользователя, чтобы он не дожидался 30 минут. Для этого можно использовать графическую консоль Active Directory Users and Computers (ADUC).
Чтобы разблокировать аккаунт пользователя, найдите его учетную запись, откройте свойства пользователя, перейдите на вкладку Account, поставьте чекбокс в поле “Unlock account. This account is currently locked out on this Active Directory Domain Controller” (если учетная запись пользователя не заблокирована, это поле не отображается).
Однако вы можете гораздо быстрее разблокировать учетную запись пользователя в Active Directory с помощью PowerShell. Для этого вам понадобится установить модуль Active Directory module для Windows PowerShell.
В Windows Server 2012 R2/2016/2019 вы можете установить этот модуль командой:
Add-WindowsFeature RSAT-AD-Powershell
В Windows 10 этот модуль входит в состав RSAT.
Проверим, что учетная запись пользователя заблокирована. Для этого выполните следующую однострочную команду PowerShell:
Get-ADUser -Identity sspetrov -Properties LockedOut | Select-Object samaccountName,Lockedout| ft -AutoSize
Аккаунт заблокирован (Lockedout=True).
Чтобы разблокировать учетную запись пользователя домена можно использовать командлет Unlock-ADAccount:
Unlock-ADAccount sspetrov –Confirm
Для подтверждения разблокировки аккаунта нажмите Y -> Enter.
Также вы можете использовать синтаксис конвейера совместно с командлетом Get-ADUser:
Get-ADUser -Identity sspetrov | Unlock-ADAccount
Проверим, что данный аккаунт теперь разблокирован (Lockedout=False):
Get-ADUser -Identity sspetrov -Properties LockedOut | Select-Object samaccountName,Lockedout
Теперь пользователь может авторизоваться в домене под своей учетной записью.
Вы можете быстро найти в домене все заблокированные аккаунты пользователей. Используйте такую команду PowerShell:
Search-ADAccount -lockedout | Select-Object SamAccountName, LastLogonDate, Lockedout
Чтобы разблокировать всех найденных пользователей, выполните команду:
Search-ADAccount -Lockedout | Unlock-AdAccount –Confirm