Compartilhar via


Noções básicas do esquema do Microsoft Entra

Como em qualquer diretório, um objeto no Microsoft Entra ID é um constructo de dados programático de alto nível que representa itens como usuários, grupos e contatos. Ao criar um novo usuário ou contato no Microsoft Entra ID, você estará criando uma nova instância desse objeto. Essas instâncias podem ser diferenciadas com base em suas propriedades.

No Microsoft Entra ID, as propriedades são os elementos responsáveis por armazenar informações sobre uma instância de um objeto no Microsoft Entra ID.

O esquema do Microsoft Entra define as regras sobre o uso das propriedades em uma entrada, os tipos de valores que essas propriedades podem ter e a maneira de os usuários interagirem com esses valores.

O Microsoft Entra ID possui dois tipos de propriedades:

  • Propriedades internas: propriedades que são pré-definidas pelo esquema do Microsoft Entra. Essas propriedades fornecem diferentes usos e podem ou não estar acessíveis.
  • Extensões de diretório: propriedades fornecidas para que você personalize o Microsoft Entra ID para uso próprio. Por exemplo, se você estendeu seu Active Directory local com um determinado atributo e deseja fluir esse atributo, é possível usar uma das propriedades personalizadas fornecidas.

Cada configuração de sincronização de nuvem inclui um esquema de sincronização. Esse esquema de sincronização define quais objetos serão sincronizados e como eles são sincronizados.

Atributos e expressões

Quando um objeto como um usuário é provisionado no Microsoft Entra ID, é criada uma nova instância do objeto de usuário. Essa criação inclui as propriedades desse objeto, também conhecidas como atributos. Inicialmente, o objeto recém-criado tem seus atributos definidos para valores determinados pelas regras de sincronização. Esses atributos se mantém atualizados por meio do agente de provisionamento de nuvem.

Object provisioning

Por exemplo, um usuário pode fazer parte de um departamento de Marketing. O atributo de departamento do Microsoft Entra é criado quando esse usuário é provisionado, e o valor é definido como Marketing. Seis meses depois, se o usuário for transferido para Vendas, o atributo de departamento do Active Directory local será alterado para vendas. Essa alteração é sincronizada ao Microsoft Entra ID e reflete no objeto de usuário do Microsoft Entra.

A sincronização de atributos pode ser direta, com o valor no Microsoft Entra ID sendo definido diretamente como o valor do atributo local. Ou pode ser conduzida por uma expressão programática. Uma expressão programática é necessária nos casos em que deva ser feita alguma lógica ou determinação para popular o valor.

Por exemplo, se você tivesse o atributo de email "john.smith@contoso.com" e precisasse retirar o trecho “@contoso.com" para fluir apenas o valor “john.smith", você usaria algo do tipo:

Replace([mail], "@contoso.com", , ,"", ,)

Entrada/saída de exemplo:

  • INPUT (mail): "john.smith@contoso.com"
  • OUTPUT: "john.smith"

Para obter mais informações sobre como escrever expressões personalizadas e a sintaxe, confira Escrever expressões para mapeamentos de atributo no Microsoft Entra ID.

A tabela a seguir lista alguns atributos comuns e mostra como eles são sincronizados ao Microsoft Entra ID.

Active Directory local Tipo de mapeamento ID do Microsoft Entra
cn Direto commonName
countryCode Direto countryCode
displayName Direto displayName
givenName Expression givenName
objectGUID Direto sourceAnchorBinary
userPrincipalName Direto userPrincipalName
proxyAddress Direto ProxyAddress

Exibir o esquema de sincronização

Aviso

A configuração de sincronização de nuvem cria uma entidade de serviço. A entidade de serviço está visível no Centro de administração do Microsoft Entra. Você não deve modificar os mapeamentos de atributos usando a experiência da entidade de serviço no Centro de administração do Microsoft Entra. Isso não tem suporte.

Para exibir o esquema de sincronização de configuração de sincronização de nuvem e verificá-lo, siga estas etapas.

  1. Acesse o Explorador do Graph.

  2. Entre com sua conta de administrador global.

  3. À esquerda, selecione Modificar permissões e verifique se Directory.ReadWrite.All está marcado como Consentido.

  4. Execute a consulta https://graph.microsoft.com/beta/serviceprincipals/?$filter=startswith(DisplayName, ‘{sync config name}’). Essa consulta retorna uma lista filtrada de entidades de serviço. Isso também pode ser adquirido por meio do nó de Registro de Aplicativo no Microsoft Entra ID.

  5. Localize "appDisplayName": "Active Directory to Azure Active Directory Provisioning" e anote o valor de "id".

    "value": [
            {
                "id": "00d41b14-7958-45ad-9d75-d52fa29e02a1",
                "deletedDateTime": null,
                "accountEnabled": true,
                "appDisplayName": "Active Directory to Azure Active Directory Provisioning",
                "appId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
                "applicationTemplateId": null,
                "appOwnerOrganizationId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
                "appRoleAssignmentRequired": false,
                "displayName": "Active Directory to Azure Active Directory Provisioning",
                "errorUrl": null,
                "homepage": "https://account.activedirectory.windowsazure.com:444/applications/default.aspx?metadata=AD2AADProvisioning|ISV9.1|primary|z",
                "loginUrl": null,
                "logoutUrl": null,
                "notificationEmailAddresses": [],
                "preferredSingleSignOnMode": null,
                "preferredTokenSigningKeyEndDateTime": null,
                "preferredTokenSigningKeyThumbprint": null,
                "publisherName": "Active Directory Application Registry",
                "replyUrls": [],
                "samlMetadataUrl": null,
                "samlSingleSignOnSettings": null,
                "servicePrincipalNames": [
                    "http://adapplicationregistry.onmicrosoft.com/adprovisioningtoaad/primary",
                    "1a4721b3-e57f-4451-ae87-ef078703ec94"
                ],
                "signInAudience": "AzureADMultipleOrgs",
                "tags": [
                    "WindowsAzureActiveDirectoryIntegratedApp"
                ],
                "addIns": [],
                "api": {
                    "resourceSpecificApplicationPermissions": []
                },
                "appRoles": [
                    {
                        "allowedMemberTypes": [
                            "User"
                        ],
                        "description": "msiam_access",
                        "displayName": "msiam_access",
                        "id": "a0326856-1f51-4311-8ae7-a034d168eedf",
                        "isEnabled": true,
                        "origin": "Application",
                        "value": null
                    }
                ],
                "info": {
                    "termsOfServiceUrl": null,
                    "supportUrl": null,
                    "privacyStatementUrl": null,
                    "marketingUrl": null,
                    "logoUrl": null
                },
                "keyCredentials": [],
                "publishedPermissionScopes": [
                    {
                        "adminConsentDescription": "Allow the application to access Active Directory to Azure Active Directory Provisioning on behalf of the signed-in user.",
                        "adminConsentDisplayName": "Access Active Directory to Azure Active Directory Provisioning",
                        "id": "d40ed463-646c-4efe-bb3e-3fa7d0006688",
                        "isEnabled": true,
                        "type": "User",
                        "userConsentDescription": "Allow the application to access Active Directory to Azure Active Directory Provisioning on your behalf.",
                        "userConsentDisplayName": "Access Active Directory to Azure Active Directory Provisioning",
                        "value": "user_impersonation"
                    }
                ],
                "passwordCredentials": []
            },
    
  6. Substitua {Service Principal id} por esse valor e execute a consulta https://graph.microsoft.com/beta/serviceprincipals/{Service Principal id}/synchronization/jobs/.

  7. Localize "id": "AD2AADProvisioning.fd1c9b9e8077402c8bc03a7186c8f976" e anote o valor de "id".

    {
                "id": "AD2AADProvisioning.fd1c9b9e8077402c8bc03a7186c8f976",
                "templateId": "AD2AADProvisioning",
                "schedule": {
                    "expiration": null,
                    "interval": "PT2M",
                    "state": "Active"
                },
                "status": {
                    "countSuccessiveCompleteFailures": 0,
                    "escrowsPruned": false,
                    "code": "Active",
                    "lastSuccessfulExecutionWithExports": null,
                    "quarantine": null,
                    "steadyStateFirstAchievedTime": "2019-11-08T15:48:05.7360238Z",
                    "steadyStateLastAchievedTime": "2019-11-20T16:17:24.7957721Z",
                    "troubleshootingUrl": "",
                    "lastExecution": {
                        "activityIdentifier": "2dea06a7-2960-420d-931e-f6c807ebda24",
                        "countEntitled": 0,
                        "countEntitledForProvisioning": 0,
                        "countEscrowed": 15,
                        "countEscrowedRaw": 15,
                        "countExported": 0,
                        "countExports": 0,
                        "countImported": 0,
                        "countImportedDeltas": 0,
                        "countImportedReferenceDeltas": 0,
                        "state": "Succeeded",
                        "error": null,
                        "timeBegan": "2019-11-20T16:15:21.116098Z",
                        "timeEnded": "2019-11-20T16:17:24.7488681Z"
                    },
                    "lastSuccessfulExecution": {
                        "activityIdentifier": null,
                        "countEntitled": 0,
                        "countEntitledForProvisioning": 0,
                        "countEscrowed": 0,
                        "countEscrowedRaw": 0,
                        "countExported": 5,
                        "countExports": 0,
                        "countImported": 0,
                        "countImportedDeltas": 0,
                        "countImportedReferenceDeltas": 0,
                        "state": "Succeeded",
                        "error": null,
                        "timeBegan": "0001-01-01T00:00:00Z",
                        "timeEnded": "2019-11-20T14:09:46.8855027Z"
                    },
                    "progress": [],
                    "synchronizedEntryCountByType": [
                        {
                            "key": "group to Group",
                            "value": 33
                        },
                        {
                            "key": "user to User",
                            "value": 3
                        }
                    ]
                },
                "synchronizationJobSettings": [
                    {
                        "name": "Domain",
                        "value": "{\"DomainFQDN\":\"contoso.com\",\"DomainNetBios\":\"CONTOSO\",\"ForestFQDN\":\"contoso.com\",\"ForestNetBios\":\"CONTOSO\"}"
                    },
                    {
                        "name": "DomainFQDN",
                        "value": "contoso.com"
                    },
                    {
                        "name": "DomainNetBios",
                        "value": "CONTOSO"
                    },
                    {
                        "name": "ForestFQDN",
                        "value": "contoso.com"
                    },
                    {
                        "name": "ForestNetBios",
                        "value": "CONTOSO"
                    },
                    {
                        "name": "QuarantineTooManyDeletesThreshold",
                        "value": "500"
                    }
                ]
            }
    
  8. Em seguida, execute a consulta https://graph.microsoft.com/beta/serviceprincipals/{Service Principal Id}/synchronization/jobs/{AD2AAD Provisioning id}/schema.

    Substitua {Service Principal Id} e {AD2ADD Provisioning Id} por seus valores.

  9. Essa consulta retorna o esquema de sincronização.

    Returned schema

Próximas etapas