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


Обновление synchronizationSchema

Пространство имен: microsoft.graph

Важно!

API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.

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

Разрешения

Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.

Тип разрешения Разрешения с наименьшими привилегиями Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись) Synchronization.ReadWrite.All CustomSecAttributeProvisioning.ReadWrite.All
Делегированные (личная учетная запись Майкрософт) Не поддерживается. Не поддерживается.
Приложение Application.ReadWrite.OwnedBy CustomSecAttributeProvisioning.ReadWrite.All, Synchronization.ReadWrite.All

В делегированных сценариях с рабочими или учебными учетными записями вошедшего пользователя должен быть владельцем или членом группы либо ему должна быть назначена поддерживаемая роль Microsoft Entra или пользовательская роль с разрешением поддерживаемой роли. Для этой операции поддерживаются следующие роли с наименьшими привилегиями.

  • Администратор приложения
  • Администратор облачного приложения
  • Администратор гибридных удостоверений— настройка Облачной синхронизации Microsoft Entra

HTTP-запрос

PUT /servicePrincipals/{id}/synchronization/jobs/{jobId}/schema
PUT /applications/{id}/synchronization/templates/{templateId}/schema

Заголовки запроса

Имя Тип Описание
Authorization string Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.

Текст запроса

В тексте запроса укажите объект synchronizationSchema для замены существующей схемы на .

Отклик

В случае успешного 204 No Content выполнения возвращает код ответа. Он не возвращает ничего в теле ответа.

Пример

Пример 1. Обновление каталогов и объектов synchronizationRules схемы синхронизации

Запрос

Ниже показан пример запроса.

PUT https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs/{jobId}/schema
Content-type: application/json

{
    "directories": [
        {
            "name": "Azure Active Directory",
            "objects": [
                {
                    "name": "User",
                    "attributes": [
                        {
                            "name": "userPrincipalName",
                            "type": "string"
                        }
                    ]
                },
            ]
        },
        {
            "name": "Salesforce",
        }
    ],
    "synchronizationRules":[
        {
            "name": "USER_TO_USER",
            "sourceDirectoryName": "Azure Active Directory",
            "targetDirectoryName": "Salesforce",
            "objectMappings": [
                {
                    "sourceObjectName": "User",
                    "targetObjectName": "User",
                    "attributeMappings": [
                        {
                            "source": {},
                            "targetAttributeName": "userName"
                        },
                    ]
                },
            ]
        },
    ]
}

Отклик

Ниже показан пример отклика.

HTTP/1.1 204 No Content

Пример 2. Обновление каталогов и объектов synchronizationRules схемы синхронизации и настройка контейнеров

Запрос

Ниже показан пример запроса.

PUT https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs/{jobId}/schema
Content-type: application/json

{
    "directories": [
        {
            "name": "Azure Active Directory",
            "objects": [
                {
                    "name": "User",
                    "attributes": [
                        {
                            "name": "userPrincipalName",
                            "type": "string"
                        }
                    ]
                }
            ]
        },
        {
            "name": "Active Directory"
        }
    ],
    "synchronizationRules": [
        {
            "containerFilter": {
                "includedContainers": [
                    "OU=In-Scope OU 1,DC=contoso,DC=com",
                    "OU=In-Scope OU 2,DC=contoso,DC=com",
                ]
            },
            "groupFilter": {
                "includedGroups": []
            },
            "name": "AD2AADProvisioning",
            "sourceDirectoryName": "Active Directory",
            "targetDirectoryName": "Azure Active Directory",
            "objectMappings": [
                {
                    "name": "Provision Active Directory users",
                    "sourceObjectName": "user",
                    "targetObjectName": "User",
                    "attributeMappings": [
                        {
                            "source": {},
                            "targetAttributeName": "DisplayName"
                        }
                    ]
                }
            ]
        }
    ]
}

Отклик

Ниже приводится пример отклика.

HTTP/1.1 204 No Content