本主題提供如何針對密碼雜湊同步處理問題進行疑難排解的步驟。 如果密碼未如預期同步,可能是因部分使用者或所有用戶的密碼造成。
對於 1.1.614.0 版或更新版本的 Microsoft Entra Connect 部署,請使用精靈導覽中的疑難排解任務,針對密碼雜湊同步問題進行疑難排解。
如果是未同步任何密碼的問題,請參閱未同步任何密碼:使用疑難排解工作進行疑難排解一節。
如果是個別物件的問題,請參閱一個物件未同步密碼:使用疑難排解工作進行疑難排解一節。
對於部署版本為 1.1.524.0 或更新版本的情況,您可以使用診斷命令來排除密碼雜湊同步問題。
如果是未同步任何密碼的問題,請參閱未同步任何密碼:使用診斷 Cmdlet 進行疑難排解一節。
如果是個別物件的問題,請參閱一個物件未同步密碼:使用診斷 Cmdlet 進行疑難排解一節。
針對舊版本的 Microsoft Entra Connect 部署:
如果是未同步任何密碼的問題,請參閱未同步任何密碼:手動疑難排解步驟一節。
如果是個別物件的問題,請參閱一個物件未同步密碼:手動疑難排解步驟一節。
未同步任何密碼:使用疑難排解工作進行疑難排解
您可以使用疑難排解工作來查明未同步任何密碼的原因。
注意
疑難排解工作僅適用於 Microsoft Entra Connect 1.1.614.0 版或更新版本。
執行疑難排解工作
針對未同步任何密碼的問題進行疑難排解:
使用 [以系統管理員身分執行] 選項,在您的 Microsoft Entra Connect 伺服器上開啟新的 Windows PowerShell 工作階段。
執行
Set-ExecutionPolicy RemoteSigned或Set-ExecutionPolicy Unrestricted。啟動 Microsoft Entra Connect 精靈。
流覽至 [其他工作] 頁面,選取 [疑難解答],然後選取 [下一步]。
在 [疑難解答] 頁面上,選取 [啟動],以在 PowerShell 中啟動疑難解答功能表。
在主功能表中,選取 [針對密碼雜湊同步處理進行疑難排解]。
在子功能表中,選取 [密碼哈希同步處理無法運作]。
了解疑難排解工作的結果
疑難排解工作會執行下列檢查:
確認已針對您的 Microsoft Entra 租用戶啟用密碼雜湊同步處理功能。
驗證Microsoft Entra Connect 伺服器不在預備模式中。
針對每個現有的內部部署 Active Directory 連接器 (對應至現有的 Active Directory 樹系):
確認已啟用密碼雜湊同步處理功能。
在應用程式事件記錄檔中搜尋密碼雜湊同步心跳事件。
針對本機 Active Directory 連接器下的每個 Active Directory 網域:
確認可從 Microsoft Entra Connect 伺服器存取網域。
確認內部部署 Active Directory 連接器所使用的 Active Directory Domain Services (AD DS) 帳戶具有密碼雜湊同步處理所需的正確使用者名稱、密碼及權限。
下圖說明 Cmdlet 在單一網域、內部部署的 Active Directory 拓撲上的執行結果:
本節的其餘部分說明工作傳回的特定結果和對應的問題。
密碼雜湊同步處理功能未啟用
如果未使用 Microsoft Entra Connect 精靈啟用密碼雜湊同步處理,則會傳回下列錯誤:
Microsoft Entra Connect 伺服器處於預備模式
如果 Microsoft Entra Connect 伺服器處於預備模式,就會暫時停用密碼雜湊同步處理,而會傳回下列錯誤:
沒有密碼哈希同步心跳事件
每個內部部署 Active Directory 連接器都會維護自己的密碼雜湊同步處理通道。 當通道處於作用中狀態,但沒有擱置的密碼變更時,Windows 應用程式事件記錄檔每 30 分鐘會記錄一次心跳事件(事件標識碼 654)。
為了驗證通道健康情況,Cmdlet 會在過去三小時內檢查每個連接器的活動訊號事件。 如果找不到任何結果,則會傳回下列錯誤:
AD DS 帳戶沒有正確的權限
如果內部部署 Active Directory 連接器用來同步密碼雜湊的 AD DS 帳戶沒有適當的權限,則會傳回下列錯誤:
不正確的 AD DS 帳戶使用者名稱或密碼
如果內部部署 Active Directory 連接器用來同步密碼雜湊的 AD DS 帳戶有不正確的使用者名稱或密碼,則會傳回下列錯誤:
有一個物件未同步密碼:使用疑難排解工具進行檢查
您可以使用疑難解答工作來判斷為何一個物件未同步處理密碼。
注意
疑難排解工作僅適用於 Microsoft Entra Connect 1.1.614.0 版或更新版本。
執行診斷 cmdlet
若要針對特定使用者物件的問題進行疑難排解:
使用 [以系統管理員身分執行] 選項,在您的 Microsoft Entra Connect 伺服器上開啟新的 Windows PowerShell 工作階段。
執行
Set-ExecutionPolicy RemoteSigned或Set-ExecutionPolicy Unrestricted。啟動 Microsoft Entra Connect 精靈。
流覽至 [其他工作] 頁面,選取 [疑難解答],然後選取 [下一步]。
在 [疑難解答] 頁面上,選取 [啟動],以在 PowerShell 中啟動疑難解答功能表。
在主功能表中,選取 [針對密碼雜湊同步處理進行疑難排解]。
在子選單中,選取 密碼未同步至特定使用者帳戶。
了解疑難排解工作的結果
疑難排解工作會執行下列檢查:
在 Active Directory 連接器空間、Metaverse 和 Microsoft Entra 連接器空間中,檢查 Active Directory 物件的狀態。
確認有已啟用密碼雜湊同步處理的同步處理規則,且已套用至 Active Directory 物件。
試著擷取並顯示上次嘗試同步物件密碼的結果。
下方的圖示說明在對單一物件進行密碼雜湊同步處理的疑難排解時,cmdlet 執行的結果:
本節的其餘部分說明 Cmdlet 所傳回的特定結果和對應的問題。
Active Directory 物件未匯出至 Microsoft Entra ID
內部部署的 Active Directory 帳戶的密碼哈希同步失敗,因為 Microsoft Entra 租戶中沒有對應的物件。 系統會傳回下列錯誤:
使用者有暫時密碼
舊版的 Microsoft Entra Connect 不支援使用 Microsoft Entra ID 同步處理暫時密碼。 如果對內部部署 Active Directory 使用者設定 [在下次登入時變更密碼] 選項,密碼就視為暫時。 使用這些過時版本會傳回下列錯誤:
若要啟用暫時密碼的同步處理,您必須安裝 Microsoft Entra Connect 2.0.3.0 版或更高版本,且必須啟用 ForcePasswordChangeOnLogon 功能。
上次嘗試同步密碼沒有結果
根據預設,Microsoft Entra Connect 會將密碼雜湊同步處理嘗試的結果儲存達七天。 如果選取的 Active Directory 物件沒有可用的結果,則會傳回下列警告:
尚未同步任何密碼:請使用診斷 Cmdlet 進行疑難排解。
您可以使用 Invoke-ADSyncDiagnostics Cmdlet 來查明未同步任何密碼的原因。
注意
Invoke-ADSyncDiagnostics Cmdlet 僅適用於 Microsoft Entra Connect 1.1.524.0 版或更新版本。
執行診斷 cmdlet
針對未同步任何密碼的問題進行疑難排解:
使用 [以系統管理員身分執行] 選項,在您的 Microsoft Entra Connect 伺服器上開啟新的 Windows PowerShell 工作階段。
執行
Set-ExecutionPolicy RemoteSigned或Set-ExecutionPolicy Unrestricted。執行
Import-Module ADSyncDiagnostics。執行
Invoke-ADSyncDiagnostics -PasswordSync。
一個對象未同步處理密碼:使用診斷 cmdlet 指令進行故障排除
您可以使用 Invoke-ADSyncDiagnostics Cmdlet 來判斷為何一個物件未同步處理密碼。
注意
Invoke-ADSyncDiagnostics Cmdlet 僅適用於 Microsoft Entra Connect 1.1.524.0 版或更新版本。
執行診斷 cmdlet
針對未同步任何使用者密碼的問題進行疑難排解:
使用 [以系統管理員身分執行] 選項,在您的 Microsoft Entra Connect 伺服器上開啟新的 Windows PowerShell 工作階段。
執行
Set-ExecutionPolicy RemoteSigned或Set-ExecutionPolicy Unrestricted。執行
Import-Module ADSyncDiagnostics。取得使用者的
DistinguishedName(DN)並執行下列命令: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 ID 中未啟用此功能或同步通道狀態未啟用,請執行「連接安裝精靈」。 選取 [自訂同步處理選項] 並取消選取密碼同步。這項變更會暫時停用此功能。 然後再次執行精靈並重新啟用密碼同步處理。再次執行指令碼,確認組態正確無誤。
查看事件記錄中是否有錯誤。 尋找下列事件,這些事件會指出問題所在︰
來源:「目錄同步」
識別碼:0、611、652、655如果您看到這些事件,即表示有連線問題。 發生問題的樹系資訊已包含在事件記錄訊息中。
如果您沒有看到任何活動訊號,或任何其他操作都沒有作用,請執行觸發所有密碼的完整同步。 只執行一次指令碼。
請參閱「無法同步密碼的單一物件疑難解答」一節。
連線問題和 AD DS 權限
檢查 Microsoft Entra Connect 是否可以連線到 Microsoft Entra ID。
AD DS 連接器帳戶必須具有讀取所有網域中密碼哈希的必要許可權。
如果您使用快速設定安裝Microsoft Entra Connect,則會自動設定必要的許可權。
如果您使用自訂安裝,請依照下列步驟手動指派許可權:
若要尋找 Active Directory 連接器所使用的帳戶,請啟動 Synchronization Service Manager。
移至 [連接器],然後尋找您要進行疑難排解的內部部署 Active Directory 樹系。
選取連接器,然後選擇 屬性。
前往 [連線至 Active Directory 樹系] 。
記下使用者名稱和帳戶所在的網域。啟動 Active Directory 使用者和電腦工具,然後確認您稍早找到的帳戶具有樹系中所有網域根目錄設定的下列權限:
- 複寫目錄變更
- 複寫目錄變更 (全部)
Microsoft Entra Connect 是否可以連線到網域控制站? 如果 Connect 伺服器無法連線到所有網域控制站,請設定 [ 僅使用慣用的網域控制站]。
返回 Synchronization Service Manager,並設定目錄磁碟分割。
在 選取目錄分割區中選擇您的網域,勾選僅使用慣用的網域控制器選項,然後選擇設定。
在清單中,輸入 Connect 應該用來進行密碼同步的網域控制站。此相同清單也用於匯入和匯出。 針對您的所有網域執行這些步驟。
注意
若要套用這些變更,請重新啟動「Microsoft Entra ID 同步」(ADSync) 服務。
- 如果文稿顯示沒有活動訊號,請在 觸發所有密碼的完整同步處理中執行腳本。
有一個物件未同步密碼:手動疑難排解步驟
您可以藉由檢閱物件的狀態,輕鬆地針對密碼雜湊同步處理問題進行疑難排解。
在 Active Directory 使用者和電腦中,搜尋使用者,然後確認已清除 [使用者必須在下次登入時變更密碼] 核取方塊。
如果選取此核取方塊,請要求使用者登入並變更密碼。 暫時密碼不會與 Microsoft Entra ID 同步。
如果 Active Directory 中的密碼看起來正確,請在同步處理引擎中追蹤使用者。 若您追蹤使用者從內部部署 Active Directory 移轉到 Microsoft Entra ID,可查看物件上是否存在描述性錯誤。
一。 啟動 Synchronization Service Manager。
b。 選擇 連線器。
丙. 選取使用者所在的 Active Directory 連接器。
d。 選取《搜尋連接器空間》。
e。 在 [範圍] 方塊中,選取 [DN 或錨點],然後輸入您要進行疑難排解之使用者的完整 DN。
f。 找出您要尋找的使用者,然後選取 [[屬性] 以查看所有屬性。 如果使用者不在搜尋結果中,請確認您的 篩選規則,並確定您執行 套用並確認變更,讓使用者出現在 Connect 中。
g。 若要檢視過去一周物件的密碼同步詳細資料,請選擇 記錄檔。
如果對象記錄檔是空的,Microsoft Entra Connect 無法從 Active Directory 讀取密碼哈希。 請繼續進行連線錯誤疑難排解。 如果您看到 [成功] 以外的任何其他值,請參考密碼同步記錄中的表格。
h。 選取 [系譜] 索引標籤,並確認至少有一個 [PasswordSync] 資料行中的同步規則為 True。 在預設組態中,同步規則的名稱是 In from AD - User AccountEnabled。
一. 選取 [Metaverse 物件屬性] 以顯示使用者屬性清單。
請確認不存在 cloudFiltered 屬性。 確定網域屬性 (domainFQDN 和 domainNetBios) 具有預期的值。
j. 選取 [連接器] 索引標籤。請確認您能看到連接至本機 Active Directory 和 Microsoft Entra ID 的連接器。
喔,好 選取代表 Microsoft Entra ID 的列,選取 屬性,然後選取 系譜 標籤。連接器空間物件在 PasswordSync 欄中應有輸出規則設定為 True。 在預設組態中,同步規則的名稱是 Out to Microsoft Entra ID - User Join。
密碼雜湊同步記錄
[狀態] 欄可以有下列值︰
| 狀態 | 描述 |
|---|---|
| 成功 | 密碼已成功同步。 |
| 根據目標過濾 | 密碼會設為 [使用者必須在下次登入時變更密碼] 。 密碼尚未同步處理。 |
| NoTargetConnection | Metaverse 或 Microsoft Entra 連接器空間中沒有任何物件。 |
| 資源連接器不存在 | 在內部部署 Active Directory 連接器空間中找不到任何物件。 |
| 目標未匯出至目錄 | Microsoft Entra 連接器空間中的物件尚未匯出。 |
| 已遷移,檢查詳情以獲取更多資訊 | 記錄項目建立於組建 1.0.9125.0 之前,並且以其舊版的狀態顯示。 |
| 錯誤 | 服務傳回未知的錯誤。 |
| 未知 | 嘗試處理一批密碼雜湊值時發生錯誤。 |
| 缺少屬性 | Microsoft Entra Domain Services 所需的特定屬性(例如 Kerberos 哈希)不可用。 |
| 由目標要求重試 | Microsoft Entra Domain Services 所需的特定屬性(例如 Kerberos 哈希)之前無法取得。 會嘗試重新同步使用者的密碼哈希碼。 |
Windows 事件檢視器的密碼雜湊同步記錄
密碼雜湊同步功能會在 Windows 事件檢視器中產生一組全面的應用程式事件,捕獲其大部分操作活動。
若要有效進行疑難排解,請考慮增加應用程式記錄的大小。 如果沒有此調整,密碼雜湊同步事件可能會被覆蓋,從而難以追蹤同步狀態和診斷問題。
| 事件識別碼 | 描述 |
|---|---|
| 601 | 密碼雜湊同步管理員正在啟動。 |
| 602 | 密碼雜湊同步正在停止。 |
| 603 | 發生密碼雜湊同步未預期的錯誤。 |
| 604 | 發生密碼哈希同步處理工作錯誤。 |
| 605 | 密碼雜湊同步項目將新增至重試佇列。 |
| 606 | 密碼雜湊同步項目會從重試佇列中移除。 |
| 607 | 密碼哈希同步無法啟動。 |
| 609 | 密碼雜湊同步已停止。 |
| 610 | 密碼雜湊同步無法停止。 |
| 611 | 網域的密碼雜湊同步處理期間發生錯誤。 |
| 612 | 初始化密碼雜湊同步上下文時發生錯誤。 |
| 613 | 密碼雜湊同步代理程式已暫停,因為目錄完整同步尚未完成。 |
| 614 | 如果沒有關閉,密碼散列同步開始會被呼叫。 |
| 615 | 發生密碼雜湊同步工作執行緒例外狀況。 |
| 616 | 與慣用 DC 的密碼雜湊同步連線失敗。 |
| 617 | 已針對樹系啟動完整密碼雜湊同步處理。 |
| 618 | 已開始針對網域進行完整密碼雜湊同步。 |
| 619 | 顯示網域的密碼哈希同步處理進度。 |
| 620 | 會報告未重試的密碼雜湊同步物件。 |
| 621 | 完整的密碼哈希同步嘗試失敗。 |
| 622 | 網域的完整密碼雜湊同步處理已完成。 |
| 6:23 | 樹系的完整密碼雜湊同步處理已完成。 |
| 650 | 密碼雜湊同步批次處理的開始。 |
| 651 | 密碼雜湊同步處理批次結束。 |
| 652 | 密碼雜湊同步作業期間發生錯誤。 |
| 653 | 開始進行密碼雜湊同步檢測。 |
| 654 | 密碼雜湊同步 ping 結束。 |
| 655 | 密碼雜湊同步 ping 期間發生錯誤。 |
| 656 | 密碼雜湊同步請求訊息。 |
| 657 | 密碼雜湊同步回應訊息。 |
| 658 | DCaaS 同步事件記錄檔訊息。 |
| 659 | 密碼政策同步事件日志訊息。 |
| 660 | 密碼哈希同步公司功能自我修復的開始。 |
| 661 | 密碼哈希同步公司功能自我修復結束。 |
| 662 | 密碼雜湊同步健康情況工作在 Ping 作業期間失敗。 |
| 663 | 密碼雜湊同步管理員處於活動狀態並正在執行中。 |
| 664 | 單一物件同步工作失敗。 |
| 665 | 儲存網域的密碼哈希同步處理周期狀態失敗。 |
| 666 | 網域的密碼哈希同步因為 sql 死結而失敗。 |
| 667 | 產生 MD5 解金鑰失敗。 |
| 668 | 密碼雜湊同步處理批次中僅變更 PwdLastSet 的物件數目。 |
協助疑難排解的指令碼
取得密碼同步設定的狀態
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
觸發所有密碼的完整同步處理
注意
只執行一次這個指令碼。 如果需要執行多次,則表示問題出在其他地方。 若要針對問題進行疑難排解,請連絡 Microsoft 支援服務。
您可以使用下列指令碼來觸發所有密碼的完整同步︰
指定本機 Active Directory $adConnector 值
$adConnector = "<CASE SENSITIVE AD CONNECTOR NAME>"指派 AzureAD $aadConnector 值
$aadConnector = "<CASE SENSITIVE AAD CONNECTOR NAME>"安裝 AzureAD 同步模組
Import-Module adsync建立新的強制完整密碼同步設定參數物件
$c = Get-ADSyncConnector -Name $adConnector使用下列新組態更新現有的連接器。 個別執行每一行
一。
$p = New-Object Microsoft.IdentityManagement.PowerShell.ObjectModel.ConfigurationParameter "Microsoft.Synchronize.ForceFullPasswordSync", String, ConnectorGlobal, $null, $null, $nullb。
$p.Value = 1丙.
$c.GlobalParameters.Remove($p.Name)d。
$c.GlobalParameters.Add($p)e。
$c = Add-ADSyncConnector -Connector $c停用 Entra ID Connect
Set-ADSyncAADPasswordSyncConfiguration -SourceConnector $adConnector -TargetConnector $aadConnector -Enable $false啟用 Entra ID Connect 以強制進行完整密碼同步處理
Set-ADSyncAADPasswordSyncConfiguration -SourceConnector $adConnector -TargetConnector $aadConnector -Enable $true