共用方式為


如何使用 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 中使用者電話號碼的系統管理額外負荷,因為這些號碼可以更頻繁地變更。

不過,請注意,一旦同步的使用者的 MobilePhoneAlternateMobilePhones 號碼是透過管理入口網站或 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 管理這些屬性,因為將會關閉來自內部部署 MobileOtherMobile 的任何新更新。

在 Microsoft Entra ID 和 內部部署的 Active Directory 中管理行動電話

若要管理使用者的電話號碼,系統管理員可以使用ADSyncTools 模組中的下列一組函式來讀取、寫入和清除Microsoft Entra ID 或 內部部署的 Active Directory中的值。

從內部部署 Active Directory 取得 MobileOtherMobile 屬性:

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 中設定 MobileotherMobile 屬性:

Set-ADSyncToolsDirSyncOverridesUser 'User1@Contoso.com' -MobileInAD '999888777' -OtherMobileInAD '0987654','1234567'

清除 Microsoft Entra 識別符中的 Mobile 電話AlternateMobile 電話 屬性:

Clear-ADSyncToolsDirSyncOverridesUser 'User1@Contoso.com' -MobilePhoneInAAD -AlternateMobilePhonesInAAD

清除內部部署 Active Directory 中的 MobileotherMobile 屬性:

Clear-ADSyncToolsDirSyncOverridesUser 'User1@Contoso.com' -MobileInAD -OtherMobileInAD

後續步驟

深入瞭解 Microsoft Entra 連線: ADSyncTools PowerShell 模組