如果更改了 ADSync 服务帐户密码,则不会正常启动同步服务,除非放弃加密密钥并重新初始化 ADSync 服务帐户密码。
重要
如果将 Connect 与 2017 年 3 月的版本或更早版本一起使用,则不应重置服务帐户中的密码,因为出于安全原因,Windows 会销毁加密密钥。 在不重新安装 Microsoft Entra Connect 的情况下,无法将帐户更改为其他任何帐户。 如果升级到 2017 年 4 月的版本或更高版本,则支持更改服务帐户中的密码,但不能更改使用的帐户。
Microsoft Entra Connect 是同步服务的一部分,它使用加密密钥来存储 AD DS 连接器帐户和 ADSync 服务帐户的密码。 这些帐户在存储到数据库之前会进行加密。
所使用的加密密钥通过 Windows 数据保护 (DPAPI) 进行保护。 DPAPI 使用 ADSync 服务帐户来保护加密密钥。
如果需要更改服务帐户密码,可以使用放弃 ADSync 服务帐户加密密钥中的过程来完成该操作。 不管出于何种原因需要放弃加密密钥,都应该可以使用这些过程。
更改服务帐户密码时,需要完成两项操作。
首先,需要在 Windows 服务控制管理器下更改密码。 在解决此问题之前,会看到以下问题:
- 如果尝试在 Windows 服务控制管理器中启动同步服务,会收到“Windows 无法在本地计算机上启动 Microsoft Entra ID 同步服务”错误。 错误 1069:服务因登录失败而无法启动。 “
- 在 Windows 事件查看器中,系统事件日志包含事件 ID 为 7038 且内容为“ADSync 服务无法通过当前配置的密码登录,因为出现以下错误:用户名或密码不正确。”
其次,在特定条件下,如果密码已更新,则同步服务无法再通过 DPAPI 检索加密密钥。 没有加密密钥,同步服务就不能解密在本地 AD 和 Microsoft Entra ID 之间进行同步所需的密码。 会看到以下错误:
- 如果尝试在 Windows 服务控制管理器中启动同步服务,但却无法检索加密密钥,则该服务会失败,并且会出现错误“Windows 无法在本地计算机上启动 Microsoft Entra ID 同步。有关详细信息,请查看系统事件日志。如果该服务是非 Microsoft 服务,请联系服务供应商,并请参阅特定于服务的错误代码 -21451857952。”
- 在 Windows 事件查看器中,应用程序事件日志包含事件 ID 为 6028且内容为“服务器加密密钥无法访问”的错误消息。
要确保不收到这些错误,请在更改密码时,按照放弃 ADSync 服务帐户加密密钥中的过程进行操作。
重要
以下过程仅适用于 Microsoft Entra Connect 1.1.443.0 或更低版本。 不能将其用于更新版本的 Microsoft Entra Connect,因为在更改 AD 同步服务帐户密码时,放弃加密密钥的操作由 Microsoft Entra Connect 本身处理,因此在更新版本中不需要执行以下步骤。
请按以下过程操作,放弃加密密钥。
如果需要放弃加密密钥,请执行以下过程。
首先可以在 Windows 服务控制管理器中停止该服务。 尝试停止该服务时,请确保该服务未在运行。 如果该服务在运行,请等到它完成后再停止它。
- 转到“Windows 服务控制管理器”(“启动”→“服务”)。
- 选择“Microsoft Entra ID 同步”,并单击“停止”。
放弃现有的加密密钥,以便创建新的加密密钥:
以管理员身份登录到 Microsoft Entra Connect 服务器。
启动新的 PowerShell 会话。
导航到文件夹
'$env:ProgramFiles\Azure AD Sync\bin\'
运行命令
./miiskmu.exe /a
由于存储在数据库中的现有密码再也不能解密,因此需要为同步服务提供 AD DS 连接器帐户的密码。 同步服务使用新的加密密钥对密码加密:
- 启动 Synchronization Service Manager(“开始”→ 同步服务)。
- 转到“连接器” 选项卡。
- 选择与本地 AD 对应的“AD 连接器”。 如果有多个 AD 连接器,请针对每个连接器重复以下步骤。
- 在“操作”下面,选择“属性”。
- 在弹出对话框中,选择“连接到 Active Directory 林”:
- 在“密码”文本框中输入 AD DS 帐户的密码。 如果不知道该密码,则必须将其设置为某个已知值,然后再执行此步骤。
- 单击“确定”保存新密码并关闭弹出对话框。
不能直接向同步服务提供 Microsoft Entra 服务帐户的密码, 而只能使用 cmdlet Add-ADSyncAADServiceAccount 重新初始化 Microsoft Entra 服务帐户。 该 cmdlet 重置帐户密码,并使其可供同步服务使用:
登录到 Microsoft Entra Connect 同步服务器并打开 PowerShell。
若要提供 Microsoft Entra 全局管理员凭据,请运行
$credential = Get-Credential
。运行 cmdlet
Add-ADSyncAADServiceAccount -AADCredential $credential
。如果 cmdlet 成功,则会出现 PowerShell 命令提示符。
此 cmdlet 重置服务帐户的密码,并在 Microsoft Entra ID 和同步引擎中更新该密码。
同步服务可以访问加密密钥及其所需的所有密码以后,即可在 Windows 服务控制管理器中重新启动该服务:
- 转到“Windows 服务控制管理器”(“启动”→“服务”)。
- 选择“Microsoft Entra ID 同步”,并单击“重启”。
概述主题