![Пользователь не может изменить пароль из-за его сложности](https://rvso.com/image/697011/%D0%9F%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%20%D0%BD%D0%B5%20%D0%BC%D0%BE%D0%B6%D0%B5%D1%82%20%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B8%D1%82%D1%8C%20%D0%BF%D0%B0%D1%80%D0%BE%D0%BB%D1%8C%20%D0%B8%D0%B7-%D0%B7%D0%B0%20%D0%B5%D0%B3%D0%BE%20%D1%81%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D0%B8.png)
На одном из дочерних доменов моего клиента у него возникла проблема, что ряд (похоже) случайных пользователей не могут изменить свой пароль из-за "сложности бла-бла". Однако это не так, когда:
а) Администратор сбрасывает пароль на новый или
б) у пользователя был установлен флаг «необходимо сбросить пароль при входе в систему»
Что я уже попробовал:
GPO: Есть только политика домена по умолчанию с настройками пароля в ней. Настройки следующие:
- Длина 10
- Сложность включена
- история установлена на 5, но в данном случае это не имеет значения (пробовал разные пароли)
- Все остальное не определено или 0
Поставщик паролей на PDC: Я читал, что можно использовать пользовательских поставщиков паролей через реестр. Я проверил это с доменом, где все работает. Кажется, это по умолчанию. Единственное, что я увидел, это настройка
EveryoneIncludesAnonymous = 0
.Пользователь все еще не мог изменить свой PW после того, как я создал для него PSO с конфигурацией, которая должна работать. Похоже, они не были применены.
PDC доступен
Set-ADAccountPassword
на контроллере домена тоже не работало.Дескриптор безопасности учетной записи пользователя выглядит вполне нормально. Каждый имеет право изменить пароль.
В ADUC свойства пользователя в порядке. Пользователь не может изменить пароль = $false и т. д.
Выходnet user /domain Myuser
User name cardm004
Full Name Cardman, Michael
Comment Test User
User's comment
Country/region code 000 (System Default)
Account active Yes
Account expires Never
Password last set 16.01.2017 13:14:58
Password expires Never
Password changeable 15.02.2017 13:14:58
Password required Yes
User may change password Yes
Workstations allowed All
Logon script login.cmd
User profile
Home directory
Last logon 18.01.2017 08:14:01
Logon hours allowed All
Local Group Memberships
Global Group memberships *Domain Users
The command completed successfully.
Выходnet accounts
Force user logoff how long after time expires?: Never
Minimum password age (days): 0
Maximum password age (days): 37201
Minimum password length: 10
Length of password history maintained: 5
Lockout threshold: Never
Lockout duration (minutes): 30
Lockout observation window (minutes): 30
Computer role: Workstation
У меня больше нет идей. Что я могу попробовать, чтобы узнать, почему пользователи не могут менять свои пароли?
Обновлять
Я обнаружил, что моделирование групповой политики показывает разные конфигурации для разных пользователей. Часть «параметры пароля» и «политика блокировки учетной записи» не отображаются для пользователей, которые не могут менять свои пароли. Поэтому я предполагаю, что на контроллерах домена может быть проблема с репликацией. Я проверил replicationstatus с помощью, repadmin /showrepl
и результаты были в порядке. Я проверил содержимое файлов в sysvol на всех 3 контроллерах домена, и они были идентичны. Так что каким-то образом контроллеры домена обновлены, но компьютеры не получают конфигурацию.
GPUpdate /force
и GPResult /r
, или GPResult /h file.html
выглядят хорошо и не показывают никаких ошибок. Перезагрузка после GPUpdate /force
не изменила ошибку.
GPResult /r
показывает правильный сайт, и отображает быстрое соединение, Default Domain Policy
(где сделаны настройки) отображается как примененный.
Обновление 2
Я создал дополнительный GPO для установки настроек пароля. Для этого я создал OU, куда переместил компьютер и учетную запись пользователя, и связал этот GPO с enforced = $true
этим OU. GPResult /h
показывает правильную примененную конфигурацию, Net user /domain testuser
не показывает. Настройки локальной политики идентичны GPO.
Проблема все еще существует.
Обновление 3
Клиент открыл тикет в Microsoft. У них пока нет решения, но они обнаружили, что, похоже, есть проблема с GP: пользователь и его устройство были перемещены в отдельное OU для тестирования с отключенным наследованием. Они применили к нему новый GPO с несколькими настройками пароля. GPResult
показал обновленные настройки, но пользователь по-прежнему не мог изменить свой пароль.
Затем они удалили GP-ссылку и снова включили наследование, настройки тестового GPO остались в системе. НастройкиПолитика домена по умолчаниюне применялись (они были ниже, чем в тестовом GPO), и пользователь по-прежнему не мог изменить свой пароль.
Я буду держать вас в курсе, возможно, кто-то из вас когда-нибудь столкнется с этой проблемой или найдет решение раньше, чем это сделает Microsoft.
решение1
Если я правильно помню, эта ошибка характерна для любой проблемы со сменой пароля.
На основании вашего комментария:
Однако это неверно, когда:
а) Администратор сбрасывает пароль на новый или
б) у пользователя был установлен флаг «необходимо сбросить пароль при входе в систему»
Я собираюсь сказать, что проблема в том, что ваша политика паролей имеет настройку для одного Minimum Password Age
или Enforce Password History
обоих. Вероятно, первый вариант здесь является виновником.
РЕДАКТИРОВАТЬ:
На основе вашего последнего обновления вы можете увидеть:
Password changeable 15.02.2017 13:14:58
Там указано, что пароль нельзя будет изменить в течение 30 дней.
Итак, вы заявили, что минимальный срок действия вашего пароля установлен на 0.
Это приводит меня к двум возможным выводам:
Либо учетные записи, либо подразделения блокируют наследование политики... несмотря на то, что отображается правильная политика с «чистыми учетными записями», к конкретному пользователю она, похоже, не применяется.
Есть некоторые контроллеры домена, которые блокируют наследование и не получают правильные настройки. Смотрите здесь:https://community.spiceworks.com/topic/1838052-минимальный-возраст-пароля-пароль-изменяемый
Проверьте и убедитесь, что в GPMC не блокируется GPO. Затем проверьте и убедитесь, что DC, на котором пользователь проходит аутентификацию, а также его компьютер и его учетная запись пользователя... все 3 имеют "Включить наследуемые разрешения от родителя этого объекта".
решение2
Ваш вывод команды net user /domain Myuser
в настоящее время отражает минимальный возраст пароля 31 день. Похоже, вам нужноизмените свой PSO для этого пользователя и установите минимальный срок действия пароля равным 0 в этом объекте.
Также, подтвердили ли вы, что PSO был успешно применен к пользователю или группе? Если это так, вы должны увидеть msDS-ResultantPSO
атрибут, заполненный в учетной записи пользователя AD. Вы можете легко проверить это с помощью ADUC на вкладке атрибутов или выполнив следующие команды PowerShell:
Import-Module ActiveDirectory
Get-ADUser cardm004 -Properties msDS-ResultantPSO | FL
Кстати, запуск net accounts
вернет настройки дляучетные записи локальных компьютеров. Настройки локальной учетной записи настраиваются отдельно от настроек учетной записи домена.
решение3
Глупое предложение, но вы проверили, что пароль пользователя соответствует требованиям:
- Пароли не должны содержать весь пароль пользователя.samAccountName(Имя учетной записи) значение или всеотображаемое имяЗначение (Полное имя). Обе проверки нечувствительны к регистру:
- ThesamAccountNameпроверяется полностью только для того, чтобы определить, является ли он частью пароля. ЕслиsamAccountNameдлина менее трех символов, эта проверка пропускается.
- Theотображаемое имяанализируется на предмет разделителей: запятые, точки, тире или дефисы, подчеркивания, пробелы, знаки решетки и табуляции. Если какой-либо из этих разделителей найден,отображаемое имяразделяется, и все проанализированные разделы (токены) подтверждаются как не включаемые в пароль. Токены длиной менее трех символов игнорируются, а подстроки токенов не проверяются. Например, имя "Erin M. Hagens" разделяется на три токена: "Erin", "M" и "Hagens". Поскольку второй токен имеет длину всего один символ, он игнорируется. Следовательно, у этого пользователя не может быть пароля, включающего "erin" или "hagens" в качестве подстроки где-либо в пароле.
- Пароли должны содержать символы из трех из следующих пяти категорий:
- Заглавные буквы европейских языков ( Aчерез Z, с диакритическими знаками, греческие и кириллические символы)
- Строчные буквы европейских языков ( aчерез z, диез-с, с диакритическими знаками, греческие и кириллические буквы)
- Основа 10 цифр ( 0до 9)
- Небуквенно-цифровые символы:~!@#$%^&*_-+=`|\(){}[]:;"',.?/
- Любой символ Unicode, который классифицируется как алфавитный символ, но не является ни заглавным, ни строчным. Сюда входят символы Unicode из азиатских языков
В соответствии с:https://technet.microsoft.com/en-us/library/cc786468%28v=ws.10%29.aspx
решение4
Честно говоря, это звучит так, будто вы сталкиваетесь с политикой настройки вторичного продукта через локальные правки GPO. Что-то вроде ScriptLogic (он же Desktop Authority).
Вот некоторые симптомы, которые можно увидеть на старых ПК:
- Наличие SLStart или wKiX32 на ПК в system32 или корне C:.
- Если бы он там был и был удален, вы бы увидели, что все ранее установленные на ПК программы не отображаются в окне «Установка и удаление программ».
Прошло... несколько лет. Есть идеи, что в итоге исправили?