如何使用 Microsoft Entra 租使用者的 BypassDirSyncOverridesEnabled 功能。
本文說明 BypassDirSyncOverridesEnabled 功能,以及如何將 Mobile 和其他Mobile 屬性的同步處理從 Microsoft Entra ID 還原至 內部部署的 Active Directory。
一般而言,同步處理的使用者無法從 Azure 或 Microsoft 365 管理入口網站變更,無論是使用 Microsoft Entra ID 或 Microsoft Graph PowerShell 模組的 PowerShell 。 例外狀況是 Microsoft Entra 使用者的屬性稱為 Mobile 電話 和 AlternateMobile 電話 s。 這些屬性會分別從行動裝置和其他行動裝置 內部部署的 Active Directory 屬性進行同步處理,但終端使用者可以透過其配置檔頁面,在 Microsoft Entra ID 中更新自己的電話號碼 電話 屬性。 管理員 也可以更新同步處理的使用者Mobile 電話 和 AlternateMobile 電話 使用 Microsoft Graph PowerShell 模組在 Microsoft Entra ID 中的值。
讓使用者和系統管理員能夠直接在 Microsoft Entra ID 中更新電話號碼,可讓企業減少管理本機 Active Directory 中使用者電話號碼的系統管理額外負荷,因為這些號碼可以更頻繁地變更。
不過,請注意,一旦同步的使用者的 MobilePhone 或 AlternateMobilePhones 號碼是透過管理入口網站或 PowerShell 更新,當它們源自內部部署 Active Directory 時,同步 API 將不再接受對這些屬性的更新。 這通常稱為 “DirSyncOverrides” 功能。 管理員 istrators 會在 Active Directory 中更新 Mobile 或其他Mobile 屬性時注意到此行為,請勿據以更新對應者使用者的 Mobile 電話 或 AlternateMobile 電話 Microsoft Entra 標識符中,即使對像是透過 Microsoft Entra 連線 引擎成功同步處理。
識別具有不同 Mobile 和 otherMobile 值的使用者
您可以從 ADSyncTools PowerShell 模組使用 'Compare-ADSyncToolsDirSyncOverrides',在 Active Directory 與 Microsoft Entra ID 之間導出具有不同 Mobile 和其他Mobile 值的使用者清單。 這可讓您判斷 內部部署的 Active Directory 與 Microsoft Entra 識別碼之間不同的使用者和個別值。 請務必知道,因為啟用 BypassDirSyncOverridesEnabled 功能會以來自 內部部署的 Active Directory 的值覆寫 Microsoft Entra ID 中的所有不同值。
使用 Compare-ADSyncToolsDirSyncOverrides
您必須執行 Microsoft Entra 連線 第 2 版或更新版本,並使用下列命令從 PowerShell 資源庫 安裝最新的 ADSyncTools 模組:
Install-Module ADSyncTools
若要比較所有已同步使用者的 Mobile 和 OtherMobile 值,請執行下列命令:
Compare-ADSyncToolsDirSyncOverrides -Credential $(Get-Credential)
注意
此功能所使用的目標 API 不會處理驗證使用者互動。 MFA 或條件式原則將封鎖驗證。 當系統提示您輸入認證時,請使用未啟用 MFA 的全域 管理員 istrator 帳戶,或套用任何條件式存取原則。 最後,請建立不含 MFA 或條件式存取的暫時全域管理員使用者帳戶,完成所需的作業之後可使用 BypassDirSyncOverrides 功能來加以刪除。
此函式會導出具有使用者清單的 CSV 檔案,其中 內部部署的 Active Directory 中的 Mobile 或 OtherMobile 值與 Microsoft Entra ID 中的個別 Mobile 電話 或 AlternateMobile 電話 不同。
在這個階段,您可以使用此數據,將 內部部署的 Active Directory Mobile和其他Mobile 屬性的值重設為 Microsoft Entra ID 中存在的值。 如此一來,您可以在啟用 BypassDirSyncOverridesEnabled 功能之前,先從 Microsoft Entra ID 擷取更新的電話號碼,並將此數據保存在 內部部署的 Active Directory 中。 若要這樣做,請從產生的 CSV 檔案匯入資料,然後使用來自 ADSyncTools 模組的 'Set-ADSyncToolsDirSyncOverrides' 來保存內部部署 Active Directory 中的值。
例如,若要從 CSV 檔案匯入數據,並擷取指定 UserPrincipalName 的 Microsoft Entra ID 中的值,請使用下列命令:
$upn = '<UserPrincipalName>'
$user = Import-Csv 'ADSyncTools-DirSyncOverrides_yyyyMMMdd-HHmmss.csv' |
where UserPrincipalName -eq $upn |
select UserPrincipalName,*InAAD
Set-ADSyncToolsDirSyncOverridesUser -Identity $upn -MobileInAD $user.MobileInAAD
啟用 BypassDirSyncOverridesEnabled 功能
根據預設, BypassDirSyncOverridesEnabled 功能會關閉。 啟用 BypassDirSyncOverridesEnabled 可讓您的租使用者略過 Mobile 電話 或 AlternateMobile 中所做的任何變更 電話 使用者或系統管理員直接在 Microsoft Entra ID 中,並一律接受 內部部署的 Active DirectoryMobile 或 OtherMobile 中出現的值。
如果您不想讓使用者更新自己的行動電話號碼,或不需要系統管理員使用PowerShell更新行動或替代行動電話號碼,您應該讓租用戶上啟用 BypassDirSyncOverridesEnabled 功能。
開啟此功能后,即使終端使用者或系統管理員更新Mobile 電話 或AlternateMobile 電話 Microsoft Entra ID 中,從 內部部署的 Active Directory 同步處理的值仍會在下一個同步處理週期時保存。 這表示只有在更新是在 內部部署的 Active Directory 中執行更新,然後同步處理至 Microsoft Entra ID 時,才會保存這些值的任何更新。
啟用 BypassDirSyncOverridesEnabled 功能:
若要啟用 BypassDirSyncOverridesEnabled 功能,請使用 Microsoft Graph PowerShell 模組。
$directorySynchronization = Get-MgDirectoryOnPremiseSynchronization
$features = @{BypassDirSyncOverridesEnabled=$true}
Update-MgDirectoryOnPremiseSynchronization -OnPremisesDirectorySynchronizationId $directorySynchronization.Id -Features $features
啟用此功能之後,請使用下列命令在 Microsoft Entra 連線 中啟動完整同步處理週期:
Start-ADSyncSyncCycle -PolicyType Initial
注意
只會更新具有不同Mobile 電話或AlternateMobile的物件 電話 內部部署的 Active Directory的值。
確認 BypassDirSyncOverridesEnabled 功能的狀態:
(Get-MgDirectoryOnPremiseSynchronization).Features.BypassDirSyncOverridesEnabled
停用 BypassDirSyncOverridesEnabled 功能
如果您想要從入口網站或 PowerShell 還原更新行動電話的功能,您可以使用下列 Microsoft Graph PowerShell 模組命令停用 BypassDirSyncOverridesEnabled 功能:
$directorySynchronization = Get-MgDirectoryOnPremiseSynchronization
$features = @{BypassDirSyncOverridesEnabled=$false}
Update-MgDirectoryOnPremiseSynchronization -OnPremisesDirectorySynchronizationId $directorySynchronization.Id -Features $features
當此功能關閉時,每當使用者或系統管理員更新Mobile電話或AlternateMobile 電話直接在 Microsoft Entra ID 中,就會建立 DirSyncOverrides,以防止未來更新這些屬性 內部部署的 Active Directory。 從此開始,使用者或系統管理員只能從 Microsoft Entra ID 管理這些屬性,因為將會關閉來自內部部署 Mobile 或 OtherMobile 的任何新更新。
在 Microsoft Entra ID 和 內部部署的 Active Directory 中管理行動電話
若要管理使用者的電話號碼,系統管理員可以使用ADSyncTools 模組中的下列一組函式來讀取、寫入和清除Microsoft Entra ID 或 內部部署的 Active Directory中的值。
從內部部署 Active Directory 取得 Mobile 和 OtherMobile 屬性:
Get-ADSyncToolsDirSyncOverridesUser 'User1@Contoso.com' -FromAD
從 Microsoft Entra 識別碼取得 Mobile 電話 和 AlternateMobile 電話 属性:
Get-ADSyncToolsDirSyncOverridesUser 'User1@Contoso.com' -FromAzureAD
在 Microsoft Entra 標識符中設定 Mobile 電話 和 AlternateMobile 電話 屬性:
Set-ADSyncToolsDirSyncOverridesUser 'User1@Contoso.com' -MobilePhoneInAAD '999888777' -AlternateMobilePhonesInAAD '0987654','1234567'
在內部部署 Active Directory 中設定 Mobile 和 otherMobile 屬性:
Set-ADSyncToolsDirSyncOverridesUser 'User1@Contoso.com' -MobileInAD '999888777' -OtherMobileInAD '0987654','1234567'
清除 Microsoft Entra 識別符中的 Mobile 電話 和 AlternateMobile 電話 屬性:
Clear-ADSyncToolsDirSyncOverridesUser 'User1@Contoso.com' -MobilePhoneInAAD -AlternateMobilePhonesInAAD
清除內部部署 Active Directory 中的 Mobile 和 otherMobile 屬性:
Clear-ADSyncToolsDirSyncOverridesUser 'User1@Contoso.com' -MobileInAD -OtherMobileInAD
後續步驟
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應