Share via


Atualizar sincronizaçãoSchema

Namespace: microsoft.graph

Importante

As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.

Atualize o esquema de sincronização para um determinado trabalho ou modelo. Esse método substitui totalmente o esquema atual pelo fornecido na solicitação. Para atualizar o esquema de um modelo, faça a chamada no objeto do aplicativo. Você deve ser o proprietário do aplicativo.

Permissões

Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões privilegiadas mais altas
Delegado (conta corporativa ou de estudante) Synchronization.ReadWrite.All CustomSecAttributeProvisioning.ReadWrite.All
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Aplicativo Application.ReadWrite.OwnedBy CustomSecAttributeProvisioning.ReadWrite.All, Synchronization.ReadWrite.All

Para configurar o provisionamento de aplicativos ou o provisionamento controlado por RH, o usuário chamador também deve receber pelo menos a funçãode Administrador de Aplicativos ou Administrador de Aplicativos na Nuvem.

Para configurar Microsoft Entra Cloud Sync, o usuário chamador também deve receber pelo menos a função de diretório do Administrador de Identidade Híbrida.

Solicitação HTTP

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

Cabeçalhos de solicitação

Nome Tipo Descrição
Autorização string {token} de portador. Obrigatório.

Corpo da solicitação

No corpo da solicitação, forneça o objeto synchronizationSchema para substituir o esquema existente.

Resposta

Se for bem-sucedido, retornará um código de 204 No Content resposta. Ele não retorna nada no corpo da resposta.

Exemplo

Exemplo 1: atualizar os diretórios e a sincronizaçãoRules de um esquema de sincronização

Solicitação

O exemplo a seguir mostra uma solicitação.

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"
                        },
                    ]
                },
            ]
        },
    ]
}

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 204 No Content

Exemplo 2: atualizar os diretórios e a sincronizaçãoRules de um esquema de sincronização e configurar os contêineres

Solicitação

O exemplo a seguir mostra uma solicitação.

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"
                        }
                    ]
                }
            ]
        }
    ]
}

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 204 No Content