Поделиться через


How to use the BypassDirSyncOverridesEnabled feature of a Microsoft Entra tenant.

This article describes the BypassDirSyncOverridesEnabled feature and how to restore synchronization of Mobile and otherMobile attributes from Microsoft Entra ID to on-premises Active Directory.

Как правило, синхронизированные пользователи не могут быть изменены через порталы администрирования Azure или Microsoft 365, а также через PowerShell, используя Microsoft Entra ID или модули Microsoft Graph PowerShell. Исключением из этого является атрибуты пользователя Microsoft Entra, называемые MobilePhone и AlternateMobilePhones. These attributes are synchronized from on-premises Active Directory attributes mobile and otherMobile, respectively, but end users can update their own phone number in MobilePhone attribute in Microsoft Entra ID through their profile page. Администраторы также могут обновлять значения полей MobilePhone и AlternateMobilePhones синхронизированных пользователей в идентификаторе Microsoft Entra с помощью модуля Microsoft Graph PowerShell.

Предоставление пользователям и администраторам возможности обновлять номера телефонов непосредственно в идентификаторе Microsoft Entra позволяет предприятиям сократить административные расходы на управление номерами телефонов пользователей в локальном Active Directory, так как они могут часто меняться.

The caveat however, is that once a synchronized user's MobilePhone or AlternateMobilePhones number is updated via admin portal or PowerShell, the synchronization API will no longer honor updates to these attributes when they originate from on-premises Active Directory. Это обычно называется функцией "DirSyncOverrides". Administrators will notice this behavior when updates to Mobile or otherMobile attributes in Active Directory, do not update the correspondent user’s MobilePhone or AlternateMobilePhones in Microsoft Entra ID accordingly, even though, the object is successfully synchronized through Microsoft Entra Connect's engine.

Identifying users with different Mobile and otherMobile values

You can export a list of users with different Mobile and otherMobile values between Active Directory and Microsoft Entra ID using ‘Compare-ADSyncToolsDirSyncOverrides’ from ADSyncTools PowerShell module. This will allow you to determine the users and respective values that are different between on-premises Active Directory and Microsoft Entra ID. Это важно знать, так как включение функции BypassDirSyncOverridesEnabled перезаписывает все различные значения в идентификаторе Microsoft Entra с значением, поступающим из локальной среды Active Directory.

Using Compare-ADSyncToolsDirSyncOverrides

Необходимо запустить Microsoft Entra Connect версии 2 или более поздней версии и установить последний модуль ADSyncTools из коллекции PowerShell с помощью следующей команды:

Install-Module ADSyncTools 

Чтобы сравнить все синхронизированные значения пользователя Mobile и OtherMobile, выполните следующую команду:

Compare-ADSyncToolsDirSyncOverrides -Credential $(Get-Credential) 

Заметка

Целевой API, используемый этой функцией, не обрабатывает взаимодействие пользователя с проверкой подлинности. MFA или условные политики блокируют проверку подлинности. При появлении запроса на ввод учетных данных используйте учетную запись глобального администратора, которая не включает MFA или какую-либо политику условного доступа. В качестве последнего способа создайте временную учетную запись пользователя глобального администратора без MFA или условного доступа, которую можно удалить после выполнения необходимых операций с помощью функции BypassDirSyncOverridees.

Эта функция экспортирует CSV-файл со списком пользователей, где значения Mobile или OtherMobile в локальной сети Active Directory отличаются от соответствующих MobilePhone или AlternateMobilePhones в Microsoft Entra ID.

На этом этапе вы можете использовать эти данные, чтобы сбросить значения атрибутов Mobile и otherMobile локальной Active Directory до значений, которые присутствуют в Microsoft Entra ID. Таким образом можно записать самые обновленные номера телефонов из идентификатора Microsoft Entra и сохранить эти данные в локальной среде Active Directory, прежде чем включить функцию BypassDirSyncOverridesEnabled. Для этого импортируйте данные из полученного CSV-файла, а затем используйте "Set-ADSyncToolsDirSyncOverrides" из модуля ADSyncTools , чтобы сохранить значение в локальной среде Active Directory.

Например, чтобы импортировать данные из CSV-файла и извлечь значения в идентификаторе Microsoft Entra для заданного userPrincipalName, используйте следующую команду:

$upn = '<UserPrincipalName>' 
$user = Import-Csv 'ADSyncTools-DirSyncOverrides_yyyyMMMdd-HHmmss.csv' | 
where UserPrincipalName -eq $upn | 
select UserPrincipalName,*InAAD  
Set-ADSyncToolsDirSyncOverridesUser -Identity $upn -MobileInAD $user.MobileInAAD

Enabling BypassDirSyncOverridesEnabled feature

По умолчанию функция BypassDirSyncOverridesEnabled отключена. Включение BypassDirSyncOverridesEnabled позволяет вашему клиенту игнорировать любые изменения, внесенные в MobilePhone или AlternateMobilePhones пользователями или администраторами непосредственно в сервисе Microsoft Entra ID, и всегда учитывать значения, заданные в локальной Active Directory Mobile или OtherMobile.

Если вы не хотите, чтобы конечные пользователи обновляли свои номера мобильных телефонов, или нет необходимости, чтобы администраторы обновляли мобильные или альтернативные номера с помощью PowerShell, следует оставить функцию BypassDirSyncOverridesEnabled включенной у арендатора.

Если эта функция включена, даже если конечный пользователь или администратор обновляет MobilePhone или AlternateMobilePhones в идентификаторе Microsoft Entra ID, значения, синхронизированные из локальной службы Active Directory, будут сохраняться в следующем цикле синхронизации. Это означает, что все обновления этих значений сохраняются только при выполнении обновления в локальной среде Active Directory, а затем синхронизируются с идентификатором Microsoft Entra.

Enable the BypassDirSyncOverridesEnabled feature:

Чтобы включить функцию BypassDirSyncOverridesEnabled, используйте модуль Microsoft Graph PowerShell.

$directorySynchronization = Get-MgDirectoryOnPremiseSynchronization
$features = @{BypassDirSyncOverridesEnabled=$true}

Update-MgDirectoryOnPremiseSynchronization -OnPremisesDirectorySynchronizationId $directorySynchronization.Id -Features $features

После включения функции запустите полный цикл синхронизации в Microsoft Entra Connect с помощью следующей команды:

Start-ADSyncSyncCycle -PolicyType Initial

Заметка

Будут обновлены только те объекты, у которых значение MobilePhone или AlternateMobilePhones отличается от значений в локальной службе Active Directory.

Verify the status of the BypassDirSyncOverridesEnabled feature:

(Get-MgDirectoryOnPremiseSynchronization).Features.BypassDirSyncOverridesEnabled

Disabling BypassDirSyncOverridesEnabled feature

Если вы хотите восстановить возможность обновления номеров мобильных телефонов с портала или PowerShell, вы можете отключить функцию BypassDirSyncOverridesEnabled с помощью следующей команды модуля Microsoft Graph PowerShell:

$directorySynchronization = Get-MgDirectoryOnPremiseSynchronization
$features = @{BypassDirSyncOverridesEnabled=$false}

Update-MgDirectoryOnPremiseSynchronization -OnPremisesDirectorySynchronizationId $directorySynchronization.Id -Features $features

Если эта функция отключена, в любое время, когда пользователь или администратор обновляет MobilePhone или AlternateMobilePhones непосредственно в идентификаторе Microsoft Entra, создается DirSyncOverrides, что предотвращает любые будущие обновления этих атрибутов из локальной среды Active Directory. На этом этапе пользователь или администратор может управлять этими атрибутами только с идентификатора Microsoft Entra, так как все новые обновления из локальной Mobile или OtherMobile будут отклонены.

Управление номерами мобильных телефонов в идентификаторе Microsoft Entra и локальной среде Active Directory

Для управления номерами телефонов пользователя администратор может использовать следующий набор функций из модуля ADSyncTools для чтения, записи и очистки значений в Microsoft Entra ID или в локальной службе Active Directory.

Получение свойств Mobile и OtherMobile из локальной среды Active Directory:

Get-ADSyncToolsDirSyncOverridesUser '[email protected]' -FromAD

Получение свойств MobilePhone и AlternateMobilePhones из идентификатора Microsoft Entra:

Get-ADSyncToolsDirSyncOverridesUser '[email protected]' -FromAzureAD

Set MobilePhone and AlternateMobilePhones properties in Microsoft Entra ID:

Set-ADSyncToolsDirSyncOverridesUser '[email protected]' -MobilePhoneInAAD '999888777' -AlternateMobilePhonesInAAD '0987654','1234567'

Задайте свойства Mobile и otherMobile в локальной среде Active Directory.

Set-ADSyncToolsDirSyncOverridesUser '[email protected]' -MobileInAD '999888777' -OtherMobileInAD '0987654','1234567'

Clear MobilePhone and AlternateMobilePhones properties in Microsoft Entra ID:

Clear-ADSyncToolsDirSyncOverridesUser '[email protected]' -MobilePhoneInAAD -AlternateMobilePhonesInAAD

Clear Mobile and otherMobile properties in on-premises Active Directory:

Clear-ADSyncToolsDirSyncOverridesUser '[email protected]' -MobileInAD -OtherMobileInAD

Дальнейшие действия

Дополнительные сведения о Microsoft Entra Connect: модуль ADSyncTools PowerShell