Синхронизация Microsoft Entra Connect: общие сведения о декларативном предоставлении
В этой статье объясняется модель конфигурации в Microsoft Entra Connect. Модель называется декларативной подготовкой и позволяет легко изменять конфигурацию. Многие аспекты, описанные в этой статье, являются расширенными и не требуются для большинства сценариев клиента.
Обзор
Декларативное предоставление — это обработка объектов, поступающих из подключенной исходной директории. Он определяет, как объект и атрибуты должны быть преобразованы из источника в целевой объект. Объект обрабатывается в конвейере синхронизации, и этот конвейер одинаков для входящих и исходящих правил. Правило для входящего трафика — от пространства соединителя к метавселенной, а правило исходящего трафика — от метавселенной к пространству соединителя.
Конвейер имеет несколько различных модулей. Каждый отвечает за одну концепцию в синхронизации объектов.
- Source, исходный объект
- область действия, находит все правила синхронизации, охватываемые областью действия
- Присоедините; определяет связь между пространством соединителя и метавселенной
- Преобразование, вычисляет способ преобразования атрибутов и потока
- приоритет, разрешает конфликтующие вклады атрибутов
- Цель, целевой объект
Размах
Модуль диапазона оценивает объект и определяет, какие правила находятся в пределах области и должны быть включены в обработку. В зависимости от значений атрибутов объекта различные правила синхронизации оцениваются на предмет попадания в область действия. Например, отключенный пользователь без почтового ящика Exchange не имеет правил, отличных от включенных пользователей с почтовым ящиком.
Область определяется как группы и положения. Предложения расположены внутри группы. Логическое И используется между всеми условиями в группе. Например, (отдел =IT AND страна = Дания). Операция логического ИЛИ используется между группами.
Область в этом рисунке должна быть прочитана как (отдел = ИТ И страна = Дания) ИЛИ (страна = Швеция). Если либо группа 1, либо группа 2 оцениваются как true, правило применяется.
Модуль области поддерживает следующие операции.
Операция | Описание |
---|---|
РАВНО, НЕРАВНО | Строка сравнения, которая оценивает, равно ли значение значению в атрибуте. Сведения о многозначных атрибутах см. в разделе ISIN и ISNOTIN. |
МЕНЬШЕ, МЕНЬШЕ_ИЛИ_РАВНО | Сравнение строк, которое проверяет, является ли значение меньше значения, содержащегося в атрибуте. |
СОДЕРЖИТ, НЕ СОДЕРЖИТ | Сравнение строк, которое определяет, можно ли найти одно значение внутри другого значения в атрибуте. |
STARTSWITH, NOTSTARTSWITH | Сравнение строк, которое оценивает, находится ли значение в начале значения в атрибуте. |
ЗАКАНЧИВАЕТСЯНА, НЕЗАКАНЧИВАЕТСЯНА | Сравнение строк, которое оценивает, находится ли значение в конце значения в атрибуте. |
БОЛЬШЕ, БОЛЬШЕ ИЛИ РАВНО | Сравнение строк, которое оценивает, больше ли значение значения в атрибуте. |
ISNULL, ISNOTNULL | Вычисляет, отсутствует ли атрибут в объекте. Если атрибут отсутствует и поэтому имеет нулевое значение, то правило подпадает под область. |
ISIN, ISNOTIN | Вычисляет, присутствует ли значение в определенном атрибуте. Эта операция представляет собой многозначный вариант EQUAL и NOTEQUAL. Атрибут должен быть многозначным, и если значение можно найти среди значений этого атрибута, тогда правило входит в область действия. |
ISBITSET, ISNOTBITSET | Вычисляет, задан ли определенный бит. Например, можно использовать для оценки битов в userAccountControl, чтобы узнать, включен ли или отключен пользователь. |
ISMEMBEROF, ISNOTMEMBEROF | Значение должно содержать DN к группе в пространстве соединителя. Если объект является членом указанной группы, правило применимо. |
Присоединиться
Модуль соединения в конвейере синхронизации отвечает за поиск связи между объектом в источнике и объектом в целевом объекте. В входящем правиле эта связь будет объектом в пространстве соединителя, находящим связь с объектом в метавселенной.
Цель состоит в том, чтобы выяснить, есть ли в метавселенной объект, созданный другим Коннектором, с которым он должен быть связан. Например, в лесу учетных записей пользователь из леса учетной записи должен быть объединен с пользователем из леса ресурсов.
Соединения используются главным образом во входящих правилах для объединения объектов пространства соединителя с тем же объектом метавселенной.
Объединения определяются как одна или более групп. Внутри группы есть предложения. Логическое И используется между всеми условиями в группе. Логический ИЛИ используется между группами. Группы обрабатываются в порядке сверху вниз. Когда одна группа находит ровно одно совпадение с объектом в целевом объекте, то никакие другие правила соединения не оцениваются. Если обнаружен ноль или несколько объектов, обработка продолжается в следующей группе правил. По этой причине правила должны быть созданы сначала с самых четких, а в конце с менее определенных.
Соединения в этом рисунке обрабатываются сверху вниз. Сначала конвейер синхронизации проверяет, есть ли совпадение по идентификатору сотрудника. Если нет, второе правило видит, можно ли использовать имя учетной записи для объединения объектов. Если это не совпадает, третье и окончательное правило заключается в более гибком подходе, с использованием имени пользователя.
Если вычисляются все правила соединения и нет точно одного совпадения, используется типа ссылки на странице описания. Если для этого параметра задано значение положения, создается новый объект в целевой системе.
Объект должен иметь только одно правило синхронизации, в рамках которого действуют правила соединения. При наличии нескольких правил синхронизации, в которых определено соединение, возникает ошибка. Приоритет не используется для разрешения конфликтов соединения. Объект должен иметь правило присоединения в рамках, чтобы атрибуты передавались в том же входящем или исходящем направлении. Если необходимо передавать атрибуты как входящего, так и исходящего трафика в один и тот же объект, необходимо иметь как правило входящего трафика, так и правило исходящей синхронизации с соединением.
Исходящее соединение имеет особое поведение при попытке настроить объект в целевом пространстве подключения. Атрибут DN используется для первого попытки обратного соединения. Если в целевом пространстве соединителя уже есть объект с тем же DN, то объекты объединяются.
Модуль соединения оценивается только один раз, когда появляется новое правило синхронизации. Когда объект присоединён, он не отсоединяется, даже если критерии соединения больше не соблюдаются. Если вы хотите отсоединить объект, правило синхронизации, которое соединяло объекты, должно выйти за пределы области видимости.
Удаление метавселенной
Объект метавселенной остается до тех пор, пока существует одно правило синхронизации в области с Тип ссылки для или StickyJoin. StickyJoin используется, если соединителю не разрешено создавать новый объект в метавселенной. Но при присоединении его необходимо удалить в источнике перед удалением объекта метавселенной.
При удалении объекта метавселенной все объекты, связанные с правилом синхронизации исходящих данных, помеченные для обеспечения , также помечаются для удаления.
Преобразования
Преобразования используются для определения того, как атрибуты должны передаваться из источника в целевой объект. Потоки могут иметь один из следующих типов потоков : Direct, Constant или Expression. Прямой поток передает значение атрибута as-is без дополнительных преобразований. Константное значение задает указанное значение. Выражение использует декларативный язык спецификации подстановки для того, чтобы выразить, как должно выполняться преобразование. Сведения о языке выражений можно найти в статье понимание декларативной подготовки языка выражений.
Флажок Применить после определяет, что атрибут должен быть задан только при первоначальном создании объекта. Например, эту конфигурацию можно использовать для задания начального пароля для нового объекта пользователя.
Объединение значений атрибутов
В потоках атрибутов есть параметр, определяющий, следует ли объединить многозначные атрибуты из нескольких разных соединителей. Значение по умолчанию — Update, что означает, что правило синхронизации с наивысшим приоритетом должно выиграть.
Существует также Merge и MergeCaseInsensitive. Эти параметры позволяют объединять значения из разных источников. Например, его можно использовать для объединения атрибута proxyAddresses из нескольких разных доменных лесов. При использовании этого параметра все правила синхронизации в области объекта должны использовать один и тот же тип слияния. Невозможно определить обновление из одного соединителя и слияние из другого. При попытке вы получите сообщение об ошибке.
Различие между Merge и MergeCaseInsensitive заключается в том, как обрабатывать повторяющиеся значения атрибутов. Подсистема синхронизации гарантирует, что повторяющиеся значения не вставляются в целевой атрибут. Если MergeCaseInsensitive, повторяющиеся значения с разницей в случае не будут присутствовать. Например, в целевом атрибуте не должно отображаться значение SMTP:bob@contoso.comи smtp:bob@contoso.com. слиянием рассматривает только точные значения и несколько значений, в которых может присутствовать только разница в случае.
Опция Заменить аналогична Обновить, но не используется.
Управление процессом потока атрибутов
При настройке нескольких правил входящих синхронизаций для вклада в один и тот же атрибут метавселенной, используется приоритет для определения победителя. Правило синхронизации с наивысшим приоритетом (наименьшее числовое значение) будет способствовать значению. То же самое происходит для исходящих правил. Правило синхронизации с самым высоким приоритетом выигрывает и вносит значение в подключенный каталог.
В некоторых случаях вместо того, чтобы внести вклад в значение, правило синхронизации должно определить, как должны вести себя другие правила. В данном случае используются некоторые специальные литералы.
Для правил входящей синхронизации литерал NULL можно использовать, чтобы указать, что поток не содержит значение, которое можно передать. Другое правило с более низким приоритетом может добавить значение. Если правило не способствовало значению, то атрибут метавселенной удаляется. Для правила исходящего трафика, если NULL является окончательным значением после обработки всех правил синхронизации, то значение удаляется в подключенном каталоге.
Литерал AuthoritativeNull аналогичен NULL, но с разницей, что ни одно из правил низшего приоритета не может внести вклад в значение.
Атрибутный поток также может использовать IgnoreThisFlow. Это похоже на NULL в том смысле, что это означает, что нет ничего, что можно было бы добавить. Разница заключается в том, что он не удаляет уже существующее значение в целевом объекте. Это как будто поток атрибутов никогда не существовал.
Ниже приведен пример:
В out to AD — гибридная среда Exchange пользователей можно найти следующий поток:
IIF([cloudSOAExchMailbox] = True,[cloudMSExchSafeSendersHash],IgnoreThisFlow)
Это выражение должно быть прочитано следующим образом: если почтовый ящик пользователя находится в идентификаторе Microsoft Entra ID, затем переведите атрибут из идентификатора Microsoft Entra в Active Directory. Если нет, не передавайте ничего обратно в Active Directory. В этом случае будет сохраняться существующее значение в AD.
Импортированное значение
Функция ImportedValue отличается от всех других функций, так как имя атрибута должно быть заключено в кавычки, а не квадратные скобки:
ImportedValue("proxyAddresses")
.
Входящая синхронизация предполагает, что атрибут, который не достиг подключенного каталога, в конечном итоге его достигнет. Обычно синхронизация получает значение атрибута из соответствующего пространства соединителя. Это верно, даже если он еще не экспортирован или произошла ошибка во время экспорта. Однако важно синхронизировать только значение, экспортируемое и подтвержденное во время импорта из подключенного каталога. Эту функцию можно найти в нескольких готовых правилах преобразования "Из AD/AAD", где атрибут должен быть синхронизирован только после подтверждения успешного экспорта значения.
Пример этой функции можно найти в стандартном правиле синхронизации «Из AD — User Common из Exchange», для потока атрибутов ProxyAddresses в гибридной Exchange. Например, когда пользователь добавляет ProxyAddresses, функция ImportValue возвращает только новое значение после подтверждения из следующего шага импорта:
proxyAddresses
<— RemoveDuplicates(Trim(ImportedValue("proxyAddresses")))
Эта функция требуется, если целевой каталог может изменить или отменить экспортируемое значение атрибута автоматически, и мы хотим, чтобы синхронизация обрабатывала только подтвержденные значения атрибутов.
Предшествование
Если несколько правил синхронизации пытаются внести одно и то же значение атрибута в целевой объект, то для определения победителя используется значение приоритета. Правило с наивысшим приоритетом, наименьшим числовым значением, будет способствовать атрибуту в конфликте.
Это упорядочивание можно использовать для определения более точных потоков атрибутов для небольшого подмножества объектов. Например, правила по умолчанию гарантируют, что атрибуты из включенной учетной записи (User AccountEnabled) имеют приоритет над другими учетными записями.
Приоритет можно определить между соединителями. Это позволяет соединителям с лучшими данными приоритетно вносить значения.
Несколько объектов из одного пространства соединителя
Невозможно подключить несколько объектов в одном пространстве соединителя к одному и тому же объекту метавселенной. Эта конфигурация сообщается как неоднозначная, даже если атрибуты в источнике имеют то же значение.
Дальнейшие действия
- Дополнительные сведения о языке выражений см. в статье Основные сведения о декларативной подготовке выражений.
- Узнайте, как декларативная подготовка используется в Общие сведения о конфигурации по умолчанию.
- Узнайте, как внести практическое изменение с помощью декларативного обеспечения в Как внести изменение в конфигурацию по умолчанию.
- Читайте далее о том, как пользователи и контакты работают вместе в Общие сведения о пользователях и контактах.
разделы обзорных разделов
- Синхронизация Microsoft Entra Connect: общие сведения о синхронизации и настройка
- Интеграция локальных идентификаций с Microsoft Entra ID
справочные темы