Синхронизация удостоверений и устойчивость повторяющихся атрибутов

Устойчивость повторяющихся атрибутов — это функция в идентификаторе Microsoft Entra, которая устраняет трения, вызванные конфликтами UserPrincipalName и SMTP ProxyAddress при запуске одного из средств синхронизации Майкрософт.

Эти два атрибута обычно являются уникальными для всех объектов User, Group или Contact в определенном клиенте Microsoft Entra.

Примечание.

Только пользователи могут иметь имена участников-пользователей (UPN).

Новое поведение, которое включает эта функция, находится в облачной части конвейера синхронизации, поэтому она не зависит от клиента и относится к любому продукту синхронизации Майкрософт, включая Microsoft Entra Подключение, DirSync и MIM + Подключение or. В этом документе универсальный термин "клиент синхронизации" означает любой из этих продуктов.

Текущее поведение

Если есть попытка подготовить новый объект со значением имени участника-пользователя или ProxyAddress, которое нарушает это ограничение уникальности, идентификатор Microsoft Entra ID блокирует создание этого объекта. Если объект обновляется с помощью неуникальных значений UPN или ProxyAddress, обновление не удается выполнить Клиент синхронизации повторяет попытку подготовки или обновления после каждого цикла экспорта, но эта попытка завершается сбоем, пока конфликт не устраняется. После каждой попытки клиент синхронизации создает сообщение электронной почты с отчетом об ошибке и регистрирует ошибку в журнале.

Поведение с устойчивостью повторяющихся атрибутов

Вместо того, чтобы полностью не подготовить или обновить объект с повторяющимся атрибутом, идентификатор Microsoft Entra ID "карантин" дубликат атрибута, который нарушает ограничение уникальности. Если этот атрибут необходим для подготовки, как, например UserPrincipalName, служба назначает значение заполнителя. Формат этих временных значений следующий:
<OriginalPrefix>+<4DigitNumber>@<InitialTenantDomain>.onmicrosoft.com.

Процесс обеспечения устойчивости атрибутов обрабатывает только значения ProxyAddress для UPN и SMTP.

Если атрибут не требуется, например ProxyAddress, идентификатор Microsoft Entra просто помещает атрибут конфликта и продолжает создание или обновление объекта.

После помещения атрибута на карантин сведения о конфликте отправляются в том же сообщении электронной почты с отчетом об ошибке, которое использовалось в старом поведении. Но эта информация отображается в отчете об ошибке только один раз, когда атрибут помещается на карантин. Она не записывается в будущие сообщения электронной почты. Кроме того, так как данный объект успешно экспортирован, клиент синхронизации не регистрирует ошибку и не повторяет операцию создания или обновления после следующих циклов синхронизации.

Для поддержки этого поведения в классы объектов "Пользователь", "Группа" и "Контакт" добавлен новый атрибут —
DirSyncProvisioningErrors

Это многозначный атрибут, используемый для хранения конфликтующих атрибутов, которые нарушают ограничение уникальности, если добавляются как обычно. Задача фонового таймера была включена в идентификаторе Microsoft Entra, который выполняется каждый час для поиска повторяющихся конфликтов атрибутов, которые были разрешены, и автоматически удаляет атрибуты, задаваемые из карантина.

Включение устойчивости повторяющихся атрибутов

Устойчивость повторяющихся атрибутов будет новым поведением по умолчанию для всех клиентов Microsoft Entra. Этот режим будет включен по умолчанию для всех клиентов, для которых синхронизация была включена впервые 22 августа 2016 года или позже. Клиенты, для которых синхронизация была включена до этой даты, смогут включить данный режим с помощью выпускаемых пакетов. Выпуск начнется в сентябре 2016 года, и каждое контактное лицо по техническим вопросам клиента получит уведомление по электронной почте, в котором будет указана дата, когда эта функция будет включена.

Примечание.

После включения режим устойчивости повторяющихся атрибутов невозможно отключить.

Чтобы проверить, включена ли эта функция для вашего клиента, можно скачать последнюю версию модуля PowerShell для Azure Active Directory и выполнив следующие командлеты.

Get-MsolDirSyncFeatures -Feature DuplicateUPNResiliency

Get-MsolDirSyncFeatures -Feature DuplicateProxyAddressResiliency

Примечание.

С помощью командлета Set-MsolDirSyncFeature больше нельзя упреждающе включать функцию "Устойчивость повторяющихся атрибутов", прежде чем она будет включена для вашего клиента. Чтобы протестировать эту функцию, необходимо создать новый клиент Microsoft Entra.

Примечание.

Модули Azure AD и MSOnline PowerShell устарели с 30 марта 2024 г. Дополнительные сведения см. в обновлении об отмене. После этой даты поддержка этих модулей ограничена поддержкой миграции в пакет SDK Для Microsoft Graph PowerShell и исправления безопасности. Устаревшие модули будут продолжать функционировать до 30 марта 2025 года.

Рекомендуется перенести в Microsoft Graph PowerShell для взаимодействия с идентификатором Microsoft Entra (ранее — Azure AD). Часто задаваемые вопросы о миграции см. в разделе "Вопросы и ответы о миграции". Примечание. Версии 1.0.x MSOnline могут возникнуть сбоем после 30 июня 2024 г.

Идентификация объектов с DirSyncProvisioningErrors

Объекты с ошибками, возникшими из-за конфликтов повторяющихся свойств, можно определить двумя методами: с помощью Azure Active Directory PowerShell или центра администрирования Microsoft 365. В будущем планируется добавить к этим средствам создание отчетов на портале.

PowerShell Azure Active Directory

Для командлетов PowerShell, упомянутых в этой статье, верны следующие утверждения:

  • все командлеты вводятся с учетом регистра;
  • Необходимо всегда указывать флаг -ErrorCategory PropertyConflict . Других типов ErrorCategoryсейчас нет, но они могут быть добавлены в будущем.

Для начала выполните командлет Connect-MsolService и введите учетные данные администратора клиента.

Затем используйте следующие командлеты и операторы для просмотра ошибок разными способами.

  1. Смотреть все
  2. По типу свойства.
  3. По конфликтующему значению.
  4. С помощью поиска по строкам.
  5. Сортированные.
  6. В ограниченном количестве или все.

Смотреть все

Чтобы просмотреть общий список ошибок подготовки атрибутов в клиенте, после подключения запустите следующий командлет.

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict

Вы получите результат, похожий на приведенный ниже.
Get-MsolDirSyncProvisioningError

По типу свойства.

Чтобы просмотреть ошибки по типу свойства, добавьте флаг -PropertyName с аргументом UserPrincipalName или ProxyAddresses.

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.

Отчет об ошибках синхронизации удостоверений

Когда объект с конфликтом повторяющихся атрибутов обрабатывается с помощью нового поведения, в электронное письмо, содержащее стандартный отчет об ошибках синхронизации удостоверений, добавляется уведомление. Это письмо отправляется контакту клиента, предназначенному для технических уведомлений. Но в этом поведении есть важные изменения. Раньше сведения о конфликте повторяющихся атрибутов включались в каждый отчет об ошибках до тех пор, пока конфликт не разрешался. После включения нового поведения уведомление об ошибке, связанное с тем или иным конфликтом, отображается только один раз: когда конфликтующий атрибут помещается на карантин.

Вот как выглядит уведомление электронной почты о конфликте ProxyAddress:
Снимок экрана: пример оповещения по электронной почте о конфликте ProxyAddress.

Разрешение конфликтов

Стратегия устранения неполадок и методика разрешения этих ошибок не должны отличаться от того, как ошибки повторяющихся атрибутов обрабатывались раньше. Единственное различие заключается в том, что задача таймера переходит через клиент на стороне службы и автоматически добавляет спорный атрибут в правильный объект после разрешения конфликта.

Различные стратегии устранения неполадок и разрешения конфликтов описаны в статье Duplicate or invalid attributes prevent directory synchronization in Office 365(Повторяющиеся или недопустимые атрибуты препятствуют синхронизации каталогов в Office 365).

Известные проблемы

Ни одна из известных проблем не приводит к потере данных или снижению производительности службы. Некоторые из них касаются внешнего вида, другие приводят к стандартным ошибкам повторяющихся атрибутов, которые возникали до включения режима устойчивости (эти ошибки отображаются вместо помещения в карантин конфликтующих атрибутов). Некоторые проблемы вызывают определенные ошибки, которые требуется дополнительно устранять вручную.

Основное поведение

  1. Объекты с определенными конфигурациями атрибутов по-прежнему вызывают ошибки экспорта вместо помещения в карантин повторяющихся атрибутов.
    Например:

    a. В Active Directory создается новый пользователь со следующими свойствами: имя участника-пользователя (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, показывает неправильное свойство displayName пользователя, имя UPN которого изменено или помещено на карантин. Например:

    a. Сначала синхронизируется пользователь A с именем участника-пользователя User@contoso.com.

    b. Затем выполняется попытка синхронизировать пользователя B с именем участника-пользователя User@contoso.com.

    c. Имя участника-пользователяB(UPN) изменяется на User1234@contoso.onmicrosoft.com и User@contoso.com добавляется в DirSyncProvisioningErrors.

    d. Сообщение об ошибке для пользователя B должно содержать информацию о том, что пользователь A уже использует User@contoso.com в качестве имени участника-пользователя, но вместо этого в нем содержится собственное отображаемое имя (свойство displayName) пользователя B.

Отчет об ошибках синхронизации удостоверений.

Ссылка на указания по устранению этой проблемы неправильная.
Активные пользователи

Она должна указывать на https://aka.ms/duplicateattributeresiliency.

См. также