Блокировка учетной записи пользователя в домене – одна из наиболее частых причин обращений пользователей в техподдержку. В подавляющем большинстве случае причиной блокировки является забытый пользователем пароль или приложение, которое пытается использовать предыдущий (сохраненный) пароль для аутентификации, после того как пользователь сменил его.
Содержание:
- Политика блокировки пользователей в Active Directory
- Как разблокировать учетную запись пользователя с помощью ADUC?
- Разблокировать учетную запись пользователя с помощью PowerShell
Политика блокировки пользователей в Active Directory
Функция блокировки учетной записи пользователя включена в стандартных настройках политики безопасности домена Active Directory.
Обычно параметры политики блокировки пользователей настраиваются в Default Domain Policy GPO в разделе Computer Configuration -> Windows Settings -> Security Settings -> Account Policy -> Account Lockout Policy. Здесь есть три параметра:
- Account lockout threshold – количество неудачных попыток набрать пароль, после которых пользователя блокируется;
- Account lockout duration – длительность блокировки (в минутах). По истечению этого времени пользователь разблокируется автоматически;
- Reset account lockout counter after – через сколько минут нужно сбросить счетчик неудачных попыток входа.
Эти настройки политики блокировки действуют на всех пользователей домена, кроме групп, на которые назначены особые настройки с помощью детальных политик паролей (Fine Grained Password Policy).
Microsoft Security baseline рекомендуют блокировать пользователей после 10 попыток. Это значение считается оптимальным, которое защитит вас от подбора пароля, DoS атак на AD, и не вызовет неудобств для пользователей, которые часто ошибаются при вводе пароля.
В парольной политике Azure AD по умолчанию учетная запись пользователя блокируется после 10 неудачных попыток ввода пароля.
Как разблокировать учетную запись пользователя с помощью ADUC?
Если учетная запись пользователя заблокирована, при попытке входа в Windows появится сообщение:
Учетная запись пользователя заблокирована и не может быть использована для входа в сеть.
The referenced account is currently locked out and may not be logged on to.
Если пользователь домена жалуется на постоянную блокировку его учетной записи, вы можете найти компьютер и процесс, с которых происходят постоянные блокировки, по событиям в 4740 и 4625 в журнале PDC. Это подробно описано в статье Почему постоянно блокируется аккаунт в AD.
Пользователь сможет войти в Windows только после того, как истечет время блокировки, или администратор вручную разблокирует аккаунт.
Чтобы разблокировать пользователя в AD можно использовать графическую консоль Active Directory Users and Computers (ADUC):
- Запустите консоль
dsa.msc
и найдите пользователя AD, которого нужно разблокировать; - Перейдите на вкладку Account. Если пользователь заблокирован, здесь должна присутствовать надпись Unlock account. This account is currently locked out on this Active Directory Domain Controller (
Разблокируйте учетную запись. Учетная запись на этом контроллере домена Active Directory на данный момент заблокирована
); - Включите эту опцию и нажмите Ok чтобы сохранить изменения;
- Учетная запись пользователя теперь разблокирована и может быть использована для входа в домен.
По-умолчанию разблокировать учетные записи пользователей в AD могут администраторы домена. Вы можете в Active Directory делегировать права на разблокировку обычным (не-административным) пользователям.
- Щелкните по Organization Unit (OU) с пользователями, на чьи учетные записи нужно предоставить права и выберите Delegate Control;
- Укажите группу пользователей, которым нужно предоставить права (например, spbHelpDesk);
- Затем выберите Create a custom task -> Only the following objects in the folder -> User objects;
- В списке разрешений выберите Write lockout Time.
- Теперь пользователи из группы spbHelpDesk могут разблокировать пользователей.
Вы можете включить политику аудита, которая позволит узнать, кто конкретно разблокировал учетную запись пользователя:
- Включите политику Audit User Account Management в Default Domain Controller GPO (Computer Configuration -> Policies -> Windows Settings -> Security Settings -> Advanced Audit Policy Configuration -> Audit Policies -> Account Management);
- После этого вы можете вы можете отслеживать события разблокировки пользователей по EventID 4767 в журнале Security на контроллере домена (
A user account was unlocked
). В событии указано кто и кого разблокировал. - Также вы можете найти события по event ID с помощью PowerShell:
Get-WinEvent -FilterHashtable @{logname='Security';id=4767}|ft TimeCreated,Id,Message
Разблокировать учетную запись пользователя с помощью PowerShell
Вы можете использовать PowerShell командлет Unlock-ADAccount для разблокировки пользователей. Этот комадлет входит в состав модуля AD для Windows PowerShell. Это модуль можно установить, как в Windows Server, так и в дескопных версиях Windows 10 и 11 (Pro и Enterprise).
Проверьте, что пользователь заблокирован (
Lockedout = true
):
Get-ADUser -Identity a.novak -Properties LockedOut,DisplayName | Select-Object samaccountName, displayName,Lockedout
Разблокируйте пользователя командой:
Unlock-ADAccount a.novak
С помощью PowerShell можно вывести время блокировки, последнего входа и даты смены пароля пользователя:
Get-ADUser a.novak -Properties Name,Lockedout, lastLogonTimestamp,lockoutTime,,pwdLastSet | Select-Object Name, Lockedout,@{n='LastLogon'; e={[DateTime]::FromFileTime($_.lastLogonTimestamp)}}, @{n='lockoutTime';e={[DateTime]::FromFileTime($_.lockoutTime)}}, @{n='pwdLastSet';e={[DateTime]::FromFileTime($_.pwdLastSet)}}
С помощью командлета Search-ADAccount вы можете найти всех заблокированных пользователей:
Search-ADAccount -UsersOnly -lockedout
С помощью простого однострочника PowerShell можно разблокировать сразу всех пользователей домена:
Search-ADAccount -UsersOnly -lockedout| Unlock-ADAccount
Друзья, привет. Сегодняшняя статья пригодится в первую очередь корпоративным пользователям компьютеров на базе Windows, работающим со стандартными локальными учётными записями. Тогда как вход в учётные записи со статусом администратора могут выполнять только доверенные лица компании в виде сотрудников IT-раздела. Хотя при определённом семейном микроклимате с описываемой ниже проблемой можно столкнуться, используя домашние устройства. Что же за проблема такая? А это невозможность доступа к Windows с уведомлением на экране блокировки «Учётная запись пользователя заблокирована и не может быть использована для входа в сеть». Что за блокировка такая, и как с ней бороться?
Итак, не можем войти в Windows, потому что на экране блокировки видим это.
Такая блокировка является результатом определённого количества неудачных попыток авторизации в локальной учётке, если администратором компьютера внесены соответствующие настройки локальной групповой политики.
Администратор компьютера в локальных групповых политиках может установить то или иное число попыток входа в учётные записи пользователей. При превышении этого числа попыток учётка блокируется для входа. Это такая защита от подбора паролей. Даже если дело имеем не с ситуацией попытки подбора пароля к чужой учётке, а просто её истинный владелец невнимательно вводил символы или не посмотрел на раскладку клавиатуры, войти в систему не удастся даже при вводе верного пароля. Придётся выждать установленное администратором время, пока не будет сброшен счётчик попыток входа. И, естественно, пока не истечёт время самой блокировки.
Устанавливается такая защита от подбора паролей в редакторе локальной групповой политики, в политике блокировки учётных записей.
Здесь вводится пороговое значение блокировки, т.е. допустимое число попыток ввода пароля.
При установке такого порогового значения другие параметры политики – время до сброса счётчика блокировки и длительность самой блокировки – автоматически будут установлены на 30 минут.
Их при необходимости можно сменить. И, к примеру, установить меньшее время для сброса счётчика неудачных попыток ввода пароля.
А время блокировки самой учётной записи, наоборот, увеличить.
Распространяется такая защита только на локальные учётки и не работает при попытках подбора пароля или пин-кода для подключённых аккаунтов Microsoft.
Разблокировать заблокированную учётную запись можно несколькими путями:
• Дождаться завершения времени блокировки. Но здесь есть нюанс: сколько времени нужно ждать, система не уведомляет. Об этом знает только администратор компьютера;
• Войти в систему с учётки администратора и снять блокировку;
• Если доступ к учётке администратора невозможен, снять блокировку, загрузившись со съёмного устройства и подправив кое-что в реестре Windows.
Если своя учётка заблокирована, но есть доступ к учётке администратора, необходимо войти в последнюю и разблокировать свою таким образом. Жмём клавиши Win+R, вводим:
lusrmgr.msc
В открывшемся окне в папке «Пользователи» ищем свою учётную запись и делаем на ней двойной клик.
В окошке открывшихся свойств снимаем галочку «Заблокировать учётную запись». Применяем.
Пробуем войти в свою учётку.
- Примечание: если у вас нет пароля к учётке администратора, не стоит пытаться войти с помощью подбора. Защита от подбора паролей действует на все локальные учётные записи, в том числе и на администратора. Его учётка после определённого количества неудачных попыток авторизации также будет заблокирована.
Если доступа к учётной записи администратора нет, добываем DVD-диск или флешку с процессом установки любой версии Windows или Live-диск с возможностью правки реестра операционной системы. Загружаем компьютер со съёмного устройства, в нашем случае это флешка установки Windows 10. Важно: запуск со съёмного устройства должен проводиться только при перезагрузке систем Windows 8.1 и 10. Нельзя использовать обычное завершение работы, поскольку в этих версиях из-за функции ускоренного запуска системное ядро загружается из ранее сохранённого на диске файла. Нам же нужно, чтобы ядро загрузилось с изменёнными параметрами реестра.
На первом этапе установки Windows жмём Shift+F10. Запускаем реестр командной строкой:
regedit
Кликаем раздел HKEY_LOCAL_MACHINE. Далее жмём меню «Файл», здесь нам нужен пункт «Загрузить куст».
В окне обзора выходим в корень устройств «Этот компьютер» и заходим в раздел Windows. У нас он обозначен как диск (C:\), но диск системы также может значиться и под другой буквой. Тут нужно ориентироваться по объёму раздела. На системном разделе раскрываем папки «Windows», далее – «System32», далее – «config». Внутри последней нам нужен файл SAM, это так называемый куст реестра, открываем его.
Открытый куст нужно как-то назвать, имя непринципиально. Назовём его 777.
Внутри раздела реестра HKEY_LOCAL_MACHINE теперь наблюдаем новую ветвь 777. Раскрываем внутри неё путь:
777 – SAM – Domains – Account – Users – Names
Находим имя своей учётки в папке «Names». Нам, например, нужен пользователь Вася. Смотрим, что при выборе Васи отображается на панели реестра справа. У нас значение 0x3f8. Такое же значение, но только в ином формате написания — с лишними нулями спереди и капсом – ищем теперь выше, внутри папки «Users».
Ставим курсор теперь на это значение с нулями и капсом. В правой панели реестра ищем параметр «F» и двойным кликом раскрываем его.
В окошке параметра нам нужна строка 0038. Её первые два значения (у нас это 10 и 00) заменяем.
Двойным кликом ЛКМ щёлкаем по очереди на каждом из двух значений, и когда те выделятся синим, вписываем другие значения. А эти другие значения должны быть 10 и 02 соответственно. В итоге жмём «Ок».
Теперь в окне реестра кликаем на загруженный и отредактированный куст, у нас это 777. И выгружаем его: жмём «Файл», далее- «Выгрузить куст».
Перезагружаемся. И можем снова пытаться войти в свою учётку. Друзья, если блокировка вашей учётки – это следствие превышения допустимого числа авторизаций из-за того, что вы забыли пароль (или его, возможно, сменил кто-то без вашего ведома), вы можете просто убрать пароль. Сделать это можно, в частности, тем же способом путём правки реестра со съёмного носителя, что описан выше, только там нужны чуть другие действия. Какие – читаем здесь.
Реализация DI в PHP
Jason-Webb 13.05.2025
Когда я начинал писать свой первый крупный PHP-проект, моя архитектура напоминала запутаный клубок спагетти. Классы создавали другие классы внутри себя, зависимости жостко прописывались в коде, а о. . .
Обработка изображений в реальном времени на C# с OpenCV
stackOverflow 13.05.2025
Объединение библиотеки компьютерного зрения OpenCV с современным языком программирования C# создаёт симбиоз, который открывает доступ к впечатляющему набору возможностей. Ключевое преимущество этого. . .
POCO, ACE, Loki и другие продвинутые C++ библиотеки
NullReferenced 13.05.2025
В C++ разработки существует такое обилие библиотек, что порой кажется, будто ты заблудился в дремучем лесу. И среди этого многообразия POCO (Portable Components) – как маяк для тех, кто ищет. . .
Паттерны проектирования GoF на C#
UnmanagedCoder 13.05.2025
Вы наверняка сталкивались с ситуациями, когда код разрастается до неприличных размеров, а его поддержка становится настоящим испытанием. Именно в такие моменты на помощь приходят паттерны Gang of. . .
Создаем CLI приложение на Python с Prompt Toolkit
py-thonny 13.05.2025
Современные командные интерфейсы давно перестали быть черно-белыми текстовыми программами, которые многие помнят по старым операционным системам. CLI сегодня – это мощные, интуитивные и даже. . .
Конвейеры ETL с Apache Airflow и Python
AI_Generated 13.05.2025
ETL-конвейеры – это набор процессов, отвечающих за извлечение данных из различных источников (Extract), их преобразование в нужный формат (Transform) и загрузку в целевое хранилище (Load). . . .
Выполнение асинхронных задач в Python с asyncio
py-thonny 12.05.2025
Современный мир программирования похож на оживлённый мегаполис – тысячи процессов одновременно требуют внимания, ресурсов и времени. В этих джунглях операций возникают ситуации, когда программа. . .
Работа с gRPC сервисами на C#
UnmanagedCoder 12.05.2025
gRPC (Google Remote Procedure Call) — открытый высокопроизводительный RPC-фреймворк, изначально разработанный компанией Google. Он отличается от традиционых REST-сервисов как минимум тем, что. . .
CQRS (Command Query Responsibility Segregation) на Java
Javaican 12.05.2025
CQRS — Command Query Responsibility Segregation, или разделение ответственности команд и запросов. Суть этого архитектурного паттерна проста: операции чтения данных (запросы) отделяются от операций. . .
Шаблоны и приёмы реализации DDD на C#
stackOverflow 12.05.2025
Когда я впервые погрузился в мир Domain-Driven Design, мне показалось, что это очередная модная методология, которая скоро канет в лету. Однако годы практики убедили меня в обратном. DDD — не просто. . .
Смена пароля AD
Это руководство описывает процедуру изменения пароля для сервера со службой домена Active Directory
Для этого откройте «Пуск» -> «Администрирование» -> «Пользователи и компьютеры Active Directory»
В новом окне, откройте раздел c именем Вашего домена, на скриншоте это «neo.adminad.ru» и нажмите на папку «Users»
Слева появится список пользователей, выберите одного из пользователей по имени и правой кнопкой мыши откройте пункт «Смена пароля…»
В окне смена пароля,
1. Введите новый пароль (пароль должен быть не меньше 8 символов)
2. Установите галочку на пункте «Требовать смену пароля при следующем входе в систему» — если требуется.
3. Разблокировать учетную запись пользователя — если пользователь был заблокирован системой.
Нажмите «ОК»
Если все данные ввели правильно то появится окно об удачной смене пароля
Готово
Теперь мы рассмотрим процедуру изменения срока пароля для сервера со службой домена Active Directory
Срок истечения пароля AD
Откройте «Пуск» -> «Администрирование» -> «Управление групповой политикой»
Далее откроется окно «Управление групповой политикой», в блоке слева откройте дерево
«Лес: Имя Вашего домена»
-> «Домены»
-> «Имя Вашего домена»
-> «Default Domain Policy»
затем в блоке справа выберите вкладку «Параметры».
Во вкладке «Параметры» откройте вкладки «Политики» -> «Конфигурация Windows» -> «Параметры безопасности» -> «Политика учетных записей / Политика паролей»
В списке «Политика учетных записей / Политика паролей» нажмите правой кнопкой мыши на «Максимальный срок действия пароля 42 дня» и в контекстном меню выберите «Изменить»
Перед Вами откроется «Редактор управления групповыми политиками»
В этом редакторе, в блоке слева откройте дерево:
«Конфигурация компьютера» -> «Политики» -> «Конфигурация Windows» -> «Параметры безопасности» -> «Политики учетных записей» -> «Политика паролей»
В блоке справа откройте «Максимальный срок действия пароля 42 дня»
В открывшемся окне в значении «Срок истечения действия пароля» введите 0 или нужное Вам значение
Значение «0» — говорит системе о том что — функция «Срок истечения действия пароля» — отключена.
В таком режиме срок действия пароля — бесконечный.
И нажмите кнопку «Применить» , готово.
Блокировка аккаунта пользователя в 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