共用方式為


身分識別同步處理和重複屬性恢復功能

重複屬性恢復功能是 Microsoft Entra ID 中的一項功能,可在執行 Microsoft 其中一個同步處理工具時,用來消除 UserPrincipalName 和 SMTP ProxyAddress 衝突所造成的不便。

在所指定 Microsoft Entra 租用戶中的所有使用者群組連絡人物件中,這兩個屬性通常必須是唯一的。

注意

只有使用者可以擁有 UPN。

這項功能所賦予的新行為是針對同步處理管線的雲端部分,因此與用戶端無關,但與任何 Microsoft 同步處理產品 (包括 Microsoft Entra Connect、DirSync 和 MIM + 連接器) 相關。 在本文件中,通用詞彙「同步用戶端」將用來代表上述任何一項產品。

目前的行為

如果嘗試佈建的新物件具有違反此唯一性限制式的 UPN 或 ProxyAddress 值,則 Microsoft Entra ID 會防止建立該物件。 同樣地,如果以非唯一的 UPN 或 ProxyAddress 更新物件,則更新會失敗。 同步用戶端會在每個匯出週期重試佈建嘗試或更新,在衝突解決前會繼續失敗。 每次嘗試時都會產生錯誤報告電子郵件,並由同步用戶端記錄一個錯誤。

重複屬性恢復功能的行為

Microsoft Entra ID 並不是完全無法佈建或更新具有重複屬性的物件,而是會「隔離」違反唯一性限制式的重複屬性。 如果佈建時需要此屬性 (例如 UserPrincipalName),則服務會指派預留位置值。 這些暫存值的格式為
<OriginalPrefix>+<4DigitNumber>@<InitialTenantDomain>.onmicrosoft.com

屬性復原程序只會處理 UPN 和 SMTP ProxyAddress 值。

如果不需要此屬性 (例如 ProxyAddress),Microsoft Entra ID 會直接隔離衝突屬性,然後繼續建立或更新物件。

隔離屬性時,衝突相關資訊會以舊版行為中使用的相同錯誤報告電子郵件傳送。 不過,此資訊只會出現在錯誤報告中一次,發生隔離時,將不會繼續記錄在未來的電子郵件中。 此外,此物件已成功匯出,所以同步用戶端不會記錄錯誤,而且不會在後續的同步週期中重試建立 / 更新作業。

為了支援此行為,[使用者]、[群組] 和 [連絡人] 物件類別已加入新屬性︰
DirSyncProvisioningErrors

這是多重值的屬性,用來儲存正常新增時會違反唯一性條件約束的衝突屬性。 在 Microsoft Entra ID 中會啟用背景計時器工作,該工作會每小時執行以尋找已解決的重複屬性衝突,然後從隔離區自動移除有問題的屬性。

啟用重複屬性恢復功能

「重複屬性恢復功能」將會是所有 Microsoft Entra 租用戶的新預設行為。 針對所有在 2016 年 8 月 22 日或之後第一次啟用同步處理的租用戶,預設都會開啟這項功能。 在此日期之前啟用同步功能的租用戶則會分批啟用此功能。 這項功能推出將從 2016 年 9 月開始,每個租用戶的技術通知連絡人將會收到電子郵件通知,其中會指出啟用功能的特定日期。

注意

一旦開啟「重複屬性恢復功能」,即無法予以停用。

若要檢查是否已為您的租用戶啟用此功能,只要下載最新版的 Azure Active Directory PowerShell 模組並執行下列程式碼即可︰

Get-MsolDirSyncFeatures -Feature DuplicateUPNResiliency

Get-MsolDirSyncFeatures -Feature DuplicateProxyAddressResiliency

注意

在為租用戶開啟該功能之前,您無法再使用 Set-MsolDirSyncFeature Cmdlet 來主動啟用重複屬性復原功能。 若要測試該功能,您必須建立新的 Microsoft Entra 租用戶。

注意

自 2024 年 3 月 30 日起,Azure AD 和 MSOnline PowerShell 模組已被淘汰。 若要深入了解,請閱讀淘汰更新。 在此日期之後,對這些模組的支援僅限於對 Microsoft Graph PowerShell SDK 的移轉協助和安全性修正。 淘汰的模組將繼續運作至 2025 年 3 月 30 日。

我們建議移轉至 Microsoft Graph PowerShell 以與 Microsoft Entra ID (以前稱為 Azure AD) 互動。 如需了解常見的移轉問題,請參閱移轉常見問題注意:MSOnline 1.0.x 版可能會在 2024 年 6 月 30 日之後發生中斷。

識別具有 DirSyncProvisioningErrors 的物件

目前有 Azure Active Directory PowerShell 和 Microsoft 365 系統管理入口網站這兩個方法,可識別因為重複屬性衝突而發生錯誤的物件。 未來計劃擴充其他以入口網站為基礎的報告。

Azure Active Directory PowerShell

對於本主題中的 PowerShell Cmdlet,下列項目為真︰

  • 下列所有 Cmdlet 都會區分大小寫。
  • 一律包含 –ErrorCategory PropertyConflict 。 目前沒有其他類型的 ErrorCategory,但可能會在未來加以擴充。

首先,執行 Connect-MsolService 並輸入租用戶系統管理員的認證。

接著,使用下列 Cmdlet 和運算子,以不同的方式檢視錯誤︰

  1. 檢視全部
  2. 依屬性類型
  3. 依衝突的值
  4. 使用字串搜尋
  5. 排序
  6. 以有限的數量或全部

查看全部

連線之後,若要查看租用戶執行中屬性佈建錯誤的一般清單︰

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict

這會產生如下所示的結果︰
Get-MsolDirSyncProvisioningError

依屬性類型

若要依屬性類型查看錯誤,請搭配 UserPrincipalNameProxyAddresses 引數新增 -PropertyName 旗標︰

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict -PropertyName UserPrincipalName

Or

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict -PropertyName ProxyAddresses

依衝突的值

若要查看與特定屬性相關的錯誤,請新增 -PropertyValue 旗標 (新增此旗標時,必須一併使用 -PropertyName):

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict -PropertyValue User@domain.com -PropertyName UserPrincipalName

若要進行廣泛的字串搜尋,請使用 -SearchString 旗標。 此旗標可以與上述所有旗標獨立使用,但一律為必要項目的 -ErrorCategory PropertyConflict除外︰

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict -SearchString User

以有限的數量或全部

  1. MaxResults <Int> 可用來將查詢的值數量限制為特定數目。
  2. All 可用於確保在有大量錯誤的情況下擷取所有的結果。

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict -MaxResults 5

Microsoft 365 系統管理中心

您可以在 Microsoft 365 系統管理中心檢視目錄同步處理錯誤。 Microsoft 365 系統管理中心內的報表只會顯示有這些錯誤的使用者物件。 並不會顯示「群組」和「連絡人」之間的衝突相關資訊。

顯示 Microsoft 365 系統管理中心的目錄同步處理錯誤螢幕擷取畫面。

如需如何在 Microsoft 365 系統管理中心檢視目錄同步處理錯誤的指示,請參閱在 Microsoft 365 中識別目錄同步處理錯誤

身分識別同步處理錯誤報告

當利用這個新行為處理具有重複屬性衝突的物件時,通知會包含在標準身分識別同步處理錯誤報告電子郵件中,而該電子郵件回傳送給租用戶的技術通知連絡人。 不過,此行為有一項重大變更。 在過去,重複屬性衝突的相關資訊會包含在每個後續的錯誤報告中,直到解決衝突為止。 利用這個新行為,給定衝突的錯誤通知只會出現一次 - 在衝突的屬性遭到隔離時。

ProxyAddress 衝突的電子郵件通知範例如下所示︰
顯示 ProxyAddress 衝突的電子郵件通知範例螢幕擷取畫面。

解決衝突

這些錯誤的疑難排解策略和解決技巧不得與過去處理重複屬性錯誤的方式不同。 唯一的差別在於計時器工作將會掃掠服務端上的租用戶,以在衝突解決後,自動將有問題的屬性新增至適當的物件。

下列文章概述各種疑難排解和解決策略︰ 重複或無效的屬性會防止在 Office 365 中進行目錄同步作業

已知問題

沒有任何已知問題會導致資料遺失或服務降級。 其中有幾個是美觀的問題,其他問題會導致擲回標準「恢復前」重複屬性錯誤,而不是隔離衝突屬性,而別的問題會導致特定錯誤需要額外的手動修復。

核心行為︰

  1. 具有特定屬性組態的物件會繼續收到匯出錯誤,而不是將重複屬性隔離。
    例如:

    a. AD 會以 UPN 為 Joe@contoso.com、ProxyAddress 為 smtp:Joe@contoso.com 的方式建立新使用者

    b. 此物件的屬性會與 ProxyAddress 為 SMTP:Joe@contoso.com 的現有「群組」發生衝突。

    c. 匯出時,會擲回「ProxyAddress 衝突」 錯誤,而不是將衝突屬性隔離。 此作業會在每個後續的同步處理週期中重試,就如同在啟用恢復功能之前一樣。

  2. 如果在內部部署上建立兩個具有相同 SMTP 位址的群組,則會在第一次嘗試時佈建失敗並發生標準的重複 ProxyAddress 錯誤。 不過,重複值會在下一個同步處理週期時被適當隔離。

Office 入口網站報告

  1. UPN 衝突集中兩個物件的詳細錯誤訊息是相同的。 這表示它們都已變更 / 隔離 UPN,當事實上只有其中一個變更了資料。

  2. UPN 衝突的詳細錯誤訊息會對已變更/隔離其 UPN 的使用者,顯示錯誤的 displayName。 例如:

    a. User A 會先與 UPN = User@contoso.com 同步。

    b. 接著,會嘗試將 User B 與 User@contoso.comUPN = 同步。

    c. 使用者 B 的 UPN 會變更為 User1234@contoso.onmicrosoft.com,而 User@contoso.com 會新增至 DirSyncProvisioningErrors

    d. 使用者 B 的錯誤訊息應該指出使用者 A 已經有 User@contoso.com 做為 UPN,但顯示的卻是使用者 B 自己的 displayName。

身分識別同步處理錯誤報告

「如何解決此問題的步驟」的連結不正確:
使用中使用者

連結應該指向 https://aka.ms/duplicateattributeresiliency

另請參閱