Устранение неполадок с синхронизацией хэшированных паролей в службе синхронизации Microsoft Entra Connect
В этой статье приводятся пошаговые инструкции по устранению неполадок, связанных с синхронизацией хэшированных паролей. Если пароли не синхронизируются должным образом, это может быть как для подмножества пользователей, так и для всех пользователей.
Для развертывания Microsoft Entra Connect с версией 1.1.614.0 или более поздней используйте задачу устранения неполадок в мастере для устранения неполадок синхронизации хэша паролей:
Если пароли не синхронизируются, перейдите к разделу Пароли не синхронизируются: устранение неполадок с помощью задачи устранения неполадок.
Если возникла проблема с отдельными объектами, перейдите к разделу Пароли не синхронизируются одним объектом: устранение неполадок с помощью задачи устранения неполадок.
Для развертывания с версией 1.1.524.0 или более поздней версией существует командлет диагностики, который можно использовать для устранения неполадок синхронизации хэша паролей:
Если пароли не синхронизируются, перейдите к разделу Пароли не синхронизируются: устранение неполадок с помощью командлета диагностики.
Если возникла проблема с отдельными объектами, перейдите к разделу Пароли не синхронизируются одним объектом: устранение неполадок с помощью командлета диагностики.
Для более старых версий развертывания Microsoft Entra Connect:
Если пароли не синхронизируются, перейдите к разделу Пароли не синхронизируются: шаги по устранению неполадок вручную.
Если возникла проблема с отдельными объектами, перейдите к разделу Пароли не синхронизируются одним объектом: шаги по устранению неполадок вручную.
Пароли не синхронизируются: устранение неполадок с помощью задачи устранения неполадок
Вы можете использовать задачу устранения неполадок, чтобы выяснить, почему пароли не синхронизируются.
Примечание.
Задача устранения неполадок доступна только для Microsoft Entra Connect версии 1.1.614.0 или более поздней.
Запуск задачи устранения неполадок
Чтобы устранить неполадки, связанные с синхронизацией паролей, сделайте следующее:
Откройте новый сеанс Windows PowerShell на сервере Microsoft Entra Connect с параметром "Запуск от имени администратора ".
Запустите
Set-ExecutionPolicy RemoteSigned
илиSet-ExecutionPolicy Unrestricted
.Запустите мастер Microsoft Entra Connect.
Перейдите на страницу дополнительных задач, выберите Устранение неполадок, и выберите Далее.
На странице "Устранение неполадок" выберите Начать, чтобы запустить меню диагностики в PowerShell.
В главном меню выберите пункт Troubleshoot password hash synchronization (Устранение неполадок с синхронизацией хэшированных паролей).
В подменю выберите Password hash synchronization does not work at all (Синхронизация хэшированных паролей не выполняется).
Изучение результатов задачи устранения неполадок
Задача устранения неполадок выполняет следующие проверки.
Проверяет, включена ли функция синхронизации хэша паролей для клиента Microsoft Entra.
Проверяет, что сервер Microsoft Entra Connect не в промежуточном режиме.
Для каждого существующего локального соединителя Active Directory (который соответствует существующему лесу Active Directory):
проверяет, включена ли функция синхронизации хэшированных паролей;
ищет события пульса для синхронизации хэшированных паролей в журналах событий приложений Windows.
Для каждого домена Active Directory в локальном соединителе Active Directory:
Проверяет, доступен ли домен с сервера Microsoft Entra Connect.
Проверяет, чтобы учетные записи доменных служб Active Directory (AD DS), используемые локальным соединителем Active Directory, имели правильные имя пользователя, пароль и разрешения, необходимые для синхронизации хэшированных паролей.
На схеме ниже отображаются результаты командлета для локальной топологии Active Directory с одним доменом:
В оставшейся части этого раздела описаны возможные результаты, возвращаемые задачей, и соответствующие неполадки.
Функция синхронизации хэша паролей не включена
Если вы не включили синхронизацию хэша паролей с помощью мастера Microsoft Entra Connect, возвращается следующая ошибка:
Сервер Microsoft Entra Connect находится в промежуточном режиме
Если сервер Microsoft Entra Connect находится в промежуточном режиме, синхронизация хэша паролей временно отключена, и возвращается следующая ошибка:
Отсутствуют события пульса для синхронизации паролей
У каждого локального соединителя Active Directory есть свой собственный канал синхронизации хэшированных паролей. Если установлен канал синхронизации хэшированных паролей, но нет необходимости синхронизировать изменения паролей, в журнале событий приложений Windows каждые 30 минут создается событие пульса с идентификатором EventId 654. Для каждого локального соединителя Active Directory командлет ищет соответствующие события пульса за последние три часа. Если событие пульса не найдено, возвращается следующая ошибка:
Учетная запись AD DS не имеет необходимых разрешений
Если учетная запись AD DS, используемая локальным соединителем Active Directory для синхронизации хэшей паролей, не содержит соответствующих разрешений, возвращается следующая ошибка:
Неправильный пароль или имя пользователя учетной записи AD DS
Если учетная запись AD DS, используемая локальным соединителем Active Directory для синхронизации хэшей паролей, содержит неправильный пароль или имя пользователя, возвращается следующая ошибка:
Один объект не синхронизирует пароли: устранение неполадок с помощью задачи устранения неполадок
Вы можете использовать задачу устранения неполадок, чтобы определить, почему один объект не синхронизирует пароли.
Примечание.
Задача устранения неполадок доступна только для Microsoft Entra Connect версии 1.1.614.0 или более поздней.
Запуск командлета диагностики
Чтобы устранить неполадки для определенного объекта пользователя, сделайте следующее:
Откройте новый сеанс Windows PowerShell на сервере Microsoft Entra Connect с параметром "Запуск от имени администратора ".
Запустите
Set-ExecutionPolicy RemoteSigned
илиSet-ExecutionPolicy Unrestricted
.Запустите мастер Microsoft Entra Connect.
Перейдите на страницу дополнительных задач, выберите Устранение неполадоки выберите Далее.
На странице "Устранение неполадок" выберите Запуск, чтобы открыть меню устранения неполадок в PowerShell.
В главном меню выберите пункт Troubleshoot password hash synchronization (Устранение неполадок с синхронизацией хэшированных паролей).
В подменю выберите Пароль не синхронизируется для определенной учетной записи пользователя.
Изучение результатов задачи устранения неполадок
Задача устранения неполадок выполняет следующие проверки.
Проверяет состояние объекта Active Directory в пространстве соединителя Active Directory, Метавселенной и соединительном пространстве Microsoft Entra.
Проверяет, чтобы были включены и применены к объекту Active Directory правила синхронизации паролей для синхронизации хэшированных паролей.
Пытается извлечь и отобразить результаты последней попытки синхронизации паролей для объекта.
На схеме ниже отображаются результаты выполнения командлета для устранения неполадок синхронизации хэшированных паролей для одного объекта:
В оставшейся части этого раздела описываются определенные результаты, возвращенные командлетом, и соответствующие неполадки.
Объект Active Directory не экспортируется в идентификатор Microsoft Entra
Синхронизация хэша паролей для этой локальной учетной записи Active Directory завершается ошибкой, так как в клиенте Microsoft Entra нет соответствующего объекта. Возвращается следующая ошибка:
У пользователя временный пароль
Старые версии Microsoft Entra Connect не поддерживали синхронизацию временных паролей с идентификатором Microsoft Entra. Пароль может рассматриваться как временный, если для локального пользователя Active Directory установлен параметр смены пароля при следующем входе в систему. Следующая ошибка возвращается с этими старыми версиями:
Чтобы включить синхронизацию временных паролей, необходимо установить Microsoft Entra Connect версии 2.0.3.0 или более поздней, а также включить функцию ForcePasswordChangeOnLogon.
Результаты последней попытки синхронизации пароля недоступны
По умолчанию Microsoft Entra Connect сохраняет результаты попыток синхронизации хэша паролей в течение семи дней. Если для выбранного объекта Active Directory результаты недоступны, возвращается следующее предупреждение:
Пароли не синхронизируются: устранение неполадок с помощью командлета диагностики
Вы можете использовать командлет Invoke-ADSyncDiagnostics
, чтобы выяснить, почему не происходит синхронизация паролей.
Примечание.
Командлет Invoke-ADSyncDiagnostics
доступен только для Microsoft Entra Connect версии 1.1.524.0 или более поздней.
Запуск командлета диагностики
Чтобы устранить неполадки, связанные с синхронизацией паролей, сделайте следующее:
Откройте новый сеанс Windows PowerShell на сервере Microsoft Entra Connect с параметром "Запуск от имени администратора ".
Запустите
Set-ExecutionPolicy RemoteSigned
илиSet-ExecutionPolicy Unrestricted
.Выполните
Import-Module ADSyncDiagnostics
.Выполните
Invoke-ADSyncDiagnostics -PasswordSync
.
У одного объекта не синхронизируются пароли: устраните неполадки с помощью командлета диагностики
Командлет Invoke-ADSyncDiagnostics
можно использовать для определения того, почему один объект не синхронизирует пароли.
Примечание.
Командлет Invoke-ADSyncDiagnostics
доступен только для Microsoft Entra Connect версии 1.1.524.0 или более поздней.
Запуск командлета диагностики
Чтобы устранить неполадки с синхронизацией паролей определенного пользователя, сделайте следующее:
Откройте новый сеанс Windows PowerShell на сервере Microsoft Entra Connect с параметром "Запуск от имени администратора ".
Запустите
Set-ExecutionPolicy RemoteSigned
илиSet-ExecutionPolicy Unrestricted
.Выполните
Import-Module ADSyncDiagnostics
.Запустите следующий командлет:
Invoke-ADSyncDiagnostics -PasswordSync -ADConnectorName <Name-of-AD-Connector> -DistinguishedName <DistinguishedName-of-AD-object>
Например:
Invoke-ADSyncDiagnostics -PasswordSync -ADConnectorName "contoso.com" -DistinguishedName "CN=TestUserCN=Users,DC=contoso,DC=com"
Пароли не синхронизируются: шаги по устранению неполадок вручную
Чтобы выяснить, почему не происходит синхронизация паролей, выполните следующие действия:
Переведен ли сервер Connect в промежуточный режим? Сервер, находящийся в промежуточном режиме, не синхронизирует пароли.
Выполните сценарий, приведенный в разделе Получение состояния параметров синхронизации паролей. В этом разделе рассматривается конфигурация синхронизации паролей.
Если функция не включена в идентификаторе Microsoft Entra или если состояние канала синхронизации не включено, запустите мастер установки Connect. Выберите Настроить параметры синхронизациии снимите флажок "Синхронизация паролей". Это изменение приведет к временному отключению функции. Затем снова запустите мастер и повторно включите синхронизацию паролей. Запустите сценарий еще раз, чтобы убедиться, что конфигурация правильная.
Проверьте журнал событий на наличие ошибок. Найдите следующие события, которые могут указывать на проблему:
Источник: "Синхронизация каталогов"
Идентификатор: 0, 611, 652, 655Если вы видите эти события, возникла проблема с подключением. Сообщение в журнале событий содержит сведения о лесе, в котором возникла проблема.
Если нет пульса или не сработали другие методы, то запустите полную синхронизацию всех паролей. Этот сценарий необходимо выполнить только один раз.
См. раздел "Устранение неполадок одного объекта, который не синхронизируется с паролями".
Проблемы с подключением
У вас есть подключение к идентификатору Microsoft Entra?
Имеет ли учетная запись необходимые разрешения для чтения хэшей паролей во всех доменах? Если при установке Connect вы использовали стандартные параметры, то у вас уже должны быть необходимые разрешения.
Если вы использовали выборочную установку, задайте разрешения вручную следующим образом:
Чтобы найти учетную запись, используемую соединителем Active Directory, запустите Synchronization Service Manager.
Перейдите в раздел Connectors (Соединители), а затем найдите локальный лес Active Directory, в котором устраняются неполадки.
Выберите соединитель, а затем выберите Свойства.
Выберите Подключиться к лесу Active Directory.
Запишите имя пользователя и домен, в котором размещена учетная запись.Запустите Active Directory Users and Computers, а затем убедитесь, что обнаруженная ранее учетная запись имеет следующие разрешения, установленные в корне всех доменов в вашем лесу.
- Репликация изменений каталога
- Репликация всех изменений каталога
Доступны ли контроллеры домена Microsoft Entra Connect? Если серверу Connect не удается подключиться ко всем контроллерам домена, настройте параметр Only use preferred domain controller (Использовать только предпочтительные контроллеры домена).
Вернитесь в меню Synchronization Service Manager и выберите Configure Directory Partitions (Настройка разделов каталога).
Выберите домен в Выберите разделы каталогов, установите флажок использовать только предпочитаемые контроллеры домена, а затем выберите Настроить.
В списке введите контроллеры домена, которые должны использоваться в Connect для синхронизации паролей. Тот же список применяется при импорте и экспорте. Выполните эти действия для всех доменов.
Примечание.
Чтобы применить эти изменения, перезапустите службу синхронизации идентификаторов Microsoft Entra (ADSync).
- Если скрипт показывает, что пульса нет, запустите скрипт в активировать полную синхронизацию всех паролей.
Один объект не синхронизирует пароли: инструкции по устранению неполадок вручную
Проблемы, связанные с синхронизацией паролей, можно легко диагностировать по состоянию объекта.
В средстве Пользователи и компьютеры Active Directory найдите пользователя, а затем убедитесь в отсутствии флажка для параметра Требовать смены пароля при следующем входе в систему.
Если флажок установлен, пользователь должен войти в систему и сменить пароль. Временные пароли не синхронизируются с идентификатором Microsoft Entra.
Если с паролем в Active Directory все в порядке, отследите пользователя в модуле синхронизации. Отслеживая пользователя из локальной службы Active Directory до Microsoft Entra ID, вы можете определить, есть ли описательная ошибка в объекте.
a. Запустите Synchronization Service Manager.
b. Выберите соединители .
c. Выберите соединитель Active Directory, к которому относится пользователь.
d. Выберите Search Connector Space(Поиск пространства соединителя).
д) В поле Scope (Область) выберите DN or Anchor (Различающееся имя или привязка), а затем введите полное различающееся имя пользователя, для которого требуется устранить неполадки.
f. Найдите пользователя, который вы ищете, и выберите Свойства, чтобы просмотреть все атрибуты. Если пользователь не входит в результат поиска, проверьте правила фильтрации и убедитесь, что вы запускаете Применить и проверить изменения, чтобы пользователь отображался в Connect.
ж. Чтобы просмотреть сведения о синхронизации паролей объекта за прошлую неделю, выберите журнал.
Если журнал объектов пуст, Microsoft Entra Connect не удалось прочитать хэш паролей из Active Directory. Перейдите к устранению неполадок, описанных в разделе "Проблема подключения". Если состояние имеет значение, отличное от успешного, то воспользуйтесь таблицей в разделе Журнал синхронизации паролей.
h. Выберите вкладку Lineage (Журнал обращений и преобразований) и убедитесь, что по крайней мере для одного правила синхронизации в колонке PasswordSync задано значение True. В конфигурации по умолчанию правило синхронизации имеет имя In from AD - User AccountEnabled.
i. Выберите свойства объекта Метавселенной, чтобы отобразить список атрибутов пользователя.
Убедитесь, что атрибут cloudFiltered отсутствует среди и. Убедитесь, что атрибуты домена (domainFQDN и domainNetBios) имеют ожидаемые значения.
j. Перейдите на вкладку Соединители. Убедитесь, что соединители отображаются как в локальной Active Directory, так и в Microsoft Entra ID.
k. Выберите строку, представляющую идентификатор Microsoft Entra, выберите Свойства, а затем перейдите на вкладку . Объект пространства соединителя должен иметь правило для исходящего трафика в столбце PasswordSync True. В конфигурации по умолчанию имя правила синхронизации — Out to Microsoft Entra ID — User Join.
Журнал синхронизации паролей
В столбце "Состояние" могут содержаться перечисленные ниже значения.
Состояние | Description |
---|---|
Удачное завершение | Пароль успешно синхронизирован |
FilteredByTarget | Для пароля установлено значение Пользователь должен изменить пароль при следующем входе. Пароль не был синхронизирован. |
NoTargetConnection | Нет объекта в метавселенной или в пространстве соединителя Microsoft Entra. |
SourceConnectorNotPresent | Объект не найден в локальном пространстве соединителя Active Directory. |
TargetNotExportedToDirectory | Объект в пространстве соединителя Microsoft Entra еще не экспортирован. |
MigratedCheckDetailsForMoreInfo | Запись журнала создана до выхода версии 1.0.9125.0 и отображается в исходном состоянии. |
Ошибка | Служба вернула неизвестную ошибку. |
Неизвестно | Произошла ошибка при попытке обработать пакет хэшей паролей. |
MissingAttribute | Определенные атрибуты (например, хэш Kerberos), необходимые доменным службам Microsoft Entra, недоступны. |
RetryRequestedByTarget | Определенные атрибуты (например, хэш Kerberos), необходимые доменным службам Microsoft Entra, ранее недоступны. Предпринята попытка повторно синхронизировать хэш пароля пользователя. |
Сценарии, помогающие при устранении неполадок
Получение состояния параметров синхронизации паролей
Import-Module ADSync
$connectors = Get-ADSyncConnector
$aadConnectors = $connectors | Where-Object {$_.SubType -eq "Windows Azure Active Directory (Microsoft)"}
$adConnectors = $connectors | Where-Object {$_.ConnectorTypeName -eq "AD"}
if ($aadConnectors -ne $null -and $adConnectors -ne $null)
{
if ($aadConnectors.Count -eq 1)
{
$features = Get-ADSyncAADCompanyFeature
Write-Host
Write-Host "Password sync feature enabled in your Azure AD directory: " $features.PasswordHashSync
foreach ($adConnector in $adConnectors)
{
Write-Host
Write-Host "Password sync channel status BEGIN ------------------------------------------------------- "
Write-Host
Get-ADSyncAADPasswordSyncConfiguration -SourceConnector $adConnector.Name
Write-Host
$pingEvents =
Get-EventLog -LogName "Application" -Source "Directory Synchronization" -InstanceId 654 -After (Get-Date).AddHours(-3) |
Where-Object { $_.Message.ToUpperInvariant().Contains($adConnector.Identifier.ToString("D").ToUpperInvariant()) } |
Sort-Object { $_.Time } -Descending
if ($pingEvents -ne $null)
{
Write-Host "Latest heart beat event (within last 3 hours). Time " $pingEvents[0].TimeWritten
}
else
{
Write-Warning "No ping event found within last 3 hours."
}
Write-Host
Write-Host "Password sync channel status END ------------------------------------------------------- "
Write-Host
}
}
else
{
Write-Warning "More than one Azure AD Connectors found. Please update the script to use the appropriate Connector."
}
}
Write-Host
if ($aadConnectors -eq $null)
{
Write-Warning "No Azure AD Connector was found."
}
if ($adConnectors -eq $null)
{
Write-Warning "No AD DS Connector was found."
}
Write-Host
Запуск полной синхронизации всех паролей
Примечание.
Запустите этот сценарий только один раз. Если одного раза мало, то это значит, что проблема в чем-то другом. Для устранения этой проблемы обратитесь в службу поддержки Майкрософт.
Полную синхронизацию всех паролей можно активировать с помощью следующего сценария:
$adConnector = "<CASE SENSITIVE AD CONNECTOR NAME>"
$aadConnector = "<CASE SENSITIVE AAD CONNECTOR NAME>"
Import-Module adsync
$c = Get-ADSyncConnector -Name $adConnector
$p = New-Object Microsoft.IdentityManagement.PowerShell.ObjectModel.ConfigurationParameter "Microsoft.Synchronize.ForceFullPasswordSync", String, ConnectorGlobal, $null, $null, $null
$p.Value = 1
$c.GlobalParameters.Remove($p.Name)
$c.GlobalParameters.Add($p)
$c = Add-ADSyncConnector -Connector $c
Set-ADSyncAADPasswordSyncConfiguration -SourceConnector $adConnector -TargetConnector $aadConnector -Enable $false
Set-ADSyncAADPasswordSyncConfiguration -SourceConnector $adConnector -TargetConnector $aadConnector -Enable $true