AD DS - Создание нескольких политик паролей Password Settings objects (PSOs) в домене Windows Server 2008/2008 R2

imageВ службах AD DS Windows Server 2008 появился новый механизм AD DS Fine-Grained Password and Account Lockout Policy, позволяющий в рамках домена создавать несколько разных политик паролей, применяемых к конкретным доменным пользователям или доменным глобальным группам безопасности. Такой механизм может быть полезен в случае, если, например, необходимо для определенной группы пользователей иметь ослабленные/усиленные политики безопасности, отличающиеся от тех, что заданы на уровне всего домена в Default Domain Policy.

Рассмотрим сценарий создания объекта PSO в домене соответствующего следующим критериям:

clip_image001

clip_image002

Для начала создадим в домене глобальную группу безопасности, в которую будут включены все пользователи, для которых необходимо переопределить политики безопасности паролей:

clip_image003

 

Создание объекта PSO с помощью MMC-оснастки Active Directory Services Interface editor (ADSI Edit)

Откроем оснастку ADSIEDIT.MSC и подключимся к контексту именования по умолчанию нашего домена указав в поле Name FQDN имя нашего домена

clip_image004

Перейдём в контейнер DC=holding, DC=com -> CN=System -> CN=Password Settings Container

clip_image005

И в контекстном меню на контейнере Password Settings Container выберем создание нового объекта PSO (msDC-PasswordSettings)

clip_image006

Укажем имя нашего нового объекта PSO

clip_image007

Укажем значение атрибута msDS-PasswordSettingsPrecedence. Значение этого атрибута определяет приоритет в случае конфликта нескольких PSO, применяемых к одной и той же группе безопасности или пользователю.

clip_image008

Значение атрибута msDS-PasswordReversibleEncryptionEnabled определяет возможность обратимого шифрования пароля для учетных записей пользователей. Устанавливаем его в false как рекомендуемое.

clip_image009

Зададим значение атрибута msDS-PasswordHistoryLength определяющего количество неповторяемых паролей для учетных записей пользователей.

clip_image010

Значение атрибута msDS-PasswordComplexityEnabled, установленное нами в true, определяет включение требования соблюдения сложности паролей и является рекомендуемым.

clip_image011

Значение атрибута msDS-MinimumPasswordLength, установленное нами в 8, определяет минимальную длину паролей учетных записей пользователей.

clip_image012

Значение атрибута msDS-MinimumPasswordAge, установленное нами в 1:00:00:00 (1 день), определяет минимальный срок действия паролей учетных записей пользователей.

clip_image013

Значение атрибута msDS-MaximumPasswordAge, установленное нами в 90:00:00:00 (90 дней), определяет максимальный срок действия паролей учетных записей пользователей.

clip_image014

Значение атрибута msDS-LockoutThreshold, установленное нами в 5, определяет порог блокировки учетных записей пользователей (после 5 неудачных попыток авторизации срабатывает механизм блокировки учетной записи).

clip_image015

Значение атрибута msDS-LockoutObservationWindow, установленное нами в 0:00:30:00 (30 минут), определяет период сброса счетчика блокировок учетных записей пользователей.

clip_image016

Значение атрибута msDS-LockoutDuration, установленное нами в 0:00:30:00 (30 минут), определяет продолжительность блокировки заблокированных учетных записей пользователей.

clip_image017

На этом работа мастера создания PSO завершается.

clip_image018

После того как только что созданный объект PSO появляется в консоли, открываем его свойства.

clip_image019

Среди списка атрибутов находим атрибут msDS-PSOAppliesTo и убедившись в том что его значение не определено, открываем его редактирование.

clip_image020

В окне редактирования Multi-valued Distinguished Name With Security Principal Editor нажимаем Add Windows Account и выбираем соответствующую доменную глобальную группу безопасности, которую мы создали ранее.

clip_image021

clip_image022

Сохраняем свойства объекта PSO и убеждаемся в том, что привязка к соответствующей группе безопасности произведена (для этого можно проверить значение атрибута msDS-PSOApplied в свойствах самой группы безопасности).

clip_image023

Теперь на всех пользователей, включенных в эту группу безопасности, будут действовать параметры, заданные в нашем объекте PSO независимо от текущих настроек в Default Domain Policy.

Создание объекта PSO с посмощью CLI-утилиты LDIF Directory Exchange (LDIFDE)

Помимо создания объекта PSO через оснастку ADSIEDIT.MSC, мы можем создать его с помощью утилиты командной строки LDIFDE. В некоторых сценариях это может быть более быстро и удобно. Для этого нам предварительно нужно подготовить файл в формате *.LDF (LDAP Data Interchange Format) следующего содержания:

dn: CN=KOM-SRV-PSO-Users,CN=Password Settings Container,CN=System,DC=holding,DC=com
changetype: add
objectClass: msDS-PasswordSettings
msDS-MaximumPasswordAge: -77760000000000
msDS-MinimumPasswordAge:-864000000000
msDS-MinimumPasswordLength:8
msDS-PasswordHistoryLength:5
msDS-PasswordComplexityEnabled:TRUE
msDS-PasswordReversibleEncryptionEnabled:FALSE
msDS-LockoutObservationWindow:-18000000000
msDS-LockoutDuration:-18000000000
msDS-LockoutThreshold:5
msDS-PasswordSettingsPrecedence:1
msDS-PSOAppliesTo:CN=KOM-SRV-PSO-Users,CN=Users,DC=holding,DC=com

Обратите внимание на то, что значения атрибутов связанных со временем указываются в формате I8 (интервалы по -100 наносекунд). Преобразование в данный формат производится по следующей схеме

Единица времени

Множитель

1 минута

-60*(10^7) = - 600000000

1 час

-60*60* (10^7) = -36000000000

1 день

-24*60*60*(10^7) = -864000000000

То есть, например, чтобы установить значение атрибута msDS-LockoutDuration равным 30 минутам, для получения значения в формате I8 нужно умножить 30 на -600000000 (в этом примере значение равно -18000000000). Более подробную информацию по этому поводу можно получить в приложении Appendix B: PSO Attribute Constraints

После того как мы подготовили LDF файл, произведём импорт указанной в нём информации командой:

LDIFDE -i -f NewPSO.ldf

clip_image024

Более подробную информацию об использовании утилиты LDIFDE можно найти в статье KB237677 - Использование средства LDIFDE для импорта и экспорта объектов каталогов в Active Directory

Дополнительные источники информации:

Windows Server TechCenter - AD DS Fine-Grained Password and Account Lockout Policy Step-by-Step Guide

TechDays.ru - Active Directory: политика паролей

Всего комментариев: 7 Комментировать

  1. Обратная ссылка: PowerShell – Поддержание группы безопасности для Password Settings objects (PSOs) в актуальном состоянии « ИТ Блог Алексея Максимова /

  2. Алексей /

    Здорово! Работаю в ВУЗе. Применил этот способ и теперь у учётной записи Student пароля нет вообще. А у обычных пользователей пароли сложные. Отлично!

  3. vkhacker /

    Ошибка операции. Код ошибки 0x20e7
    По соображениям безопасности это изменение не разрешено.

  4. vkhacker /

    Отбой. Всё установил. О результате пока не могу судить. Наверно нужно выйти из системы или перезагрузиться, что пока нельзя.

  5. Илья /

    Что-то не могу придумать смысл этому инструменту. Зачем изобретать 5-е колесо, уже ведь есть политики!?

  6. Обратная ссылка: Cisco 802.1x + Windows 2012R2 NPS – BesLand /

  7. Обратная ссылка: Способы смены пароля учётной записи пользователя в RDP-сессии – Блог IT-KB /

Добавить комментарий