Partager via


Comprendre le schéma Microsoft Entra

Un objet dans Microsoft Entra ID, comme un annuaire, est une construction de données globale programmatique qui représente des éléments, tels que des utilisateurs, des groupes et des contacts. Lorsque vous créez un utilisateur ou un contact dans Microsoft Entra ID, vous créez une instance de cet objet. Ces instances peuvent être différenciées en fonction de leurs propriétés.

Dans Microsoft Entra ID, les propriétés sont les éléments chargés de stocker les informations sur une instance d’un objet dans Microsoft Entra ID.

Le schéma Microsoft Entra définit les règles pour lesquelles des propriétés peuvent être utilisées dans une entrée, les types de valeurs que ces propriétés peuvent avoir, et la manière dont les utilisateurs peuvent interagir avec ces valeurs.

Microsoft Entra ID a deux types de propriétés :

  • Propriétés intégrées : propriétés prédéfinies par le schéma Microsoft Entra. Ces propriétés permettent différentes utilisations et peuvent être accessibles ou non.
  • Extensions d’annuaire – Propriétés fournies afin de vous permettre de personnaliser Microsoft Entra ID pour votre usage personnel. Par exemple, si vous avez étendu votre instance Active Directory locale avec un certain attribut et que vous souhaitez transmettre cet attribut, vous pouvez utiliser l’une des propriétés personnalisées qui sont fournies.

Chaque configuration de synchronisation cloud inclut un schéma de synchronisation. Ce schéma de synchronisation définit les objets qui seront synchronisés et la façon dont ils le seront.

Attributs et expressions

Lorsqu’un objet, tel qu’un utilisateur, est provisionné dans Microsoft Entra ID, une nouvelle instance de l’objet utilisateur est créée. Cette création comprend les propriétés de cet objet, qui sont également appelées « attributs ». Au départ, les attributs de l’objet nouvellement créé sont définis sur des valeurs déterminées par les règles de synchronisation. Ces attributs sont ensuite tenus à jour par le biais de l’agent de provisionnement cloud.

Object provisioning

Par exemple, un utilisateur peut faire partie d’un service marketing. Son attribut de service Microsoft Entra est initialement créé lors de son provisionnement, et sa valeur est définie sur Marketing. Six mois plus tard, s’il fait désormais partie du service des Ventes, son attribut de service Active Directory local est remplacé par l’attribut Ventes. Cette modification se synchronise avec Microsoft Entra ID et est reflétée dans leur Microsoft Entra objet utilisateur.

La synchronisation d’attributs peut être directe, c’est-à-dire que la valeur dans Microsoft Entra ID est directement définie sur la valeur de l’attribut local. Sinon, une expression programmatique peut aussi gérer la synchronisation. Une expression programmatique s’avère nécessaire lorsqu’une logique ou une détermination doit être appliquée pour remplir la valeur.

Par exemple, s’il existait un attribut e-mail « john.smith@contoso.com » et que la partie « @contoso.com » devait être supprimée pour transmettre uniquement la valeur « john.smith », voici ce qu’il faudrait utiliser :

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

Exemple d’entrée/sortie :

  • ENTRÉE (e-mail) : "john.smith@contoso.com"
  • SORTIE : "john.smith"

Pour plus d’informations sur l’écriture d’expressions personnalisées et sur la syntaxe, consultez Écriture d’expressions pour les mappages d’attributs dans Microsoft Entra ID.

Le tableau suivant liste certains attributs courants et la façon dont ils sont synchronisés avec Microsoft Entra ID.

Active Directory local Type de mappage Microsoft Entra ID
cn Direct commonName
countryCode Direct countryCode
displayName Direct displayName
givenName Expression givenName
objectGUID Direct sourceAnchorBinary
userPrincipalName Direct userPrincipalName
proxyAddress Direct ProxyAddress

Afficher le schéma de synchronisation

Avertissement

La configuration de la synchronisation cloud crée un principal de service. Le principal de service est visible dans le centre d’administration Microsoft Entra. Vous ne devez pas modifier les mappages d’attributs en utilisant l’interface du principal de service dans le centre d’administration Microsoft Entra. Cela n'est pas pris en charge.

Pour afficher le schéma de synchronisation de configuration de synchronisation cloud et le vérifier, procédez comme suit.

  1. Accédez à l’Explorateur Graph.

  2. Connectez-vous avec votre compte d’administrateur général.

  3. Sur la gauche, sélectionnez Modifier les autorisations et vérifiez que l’autorisation Directory.ReadWrite.All est Acceptée.

  4. Exécutez la requête https://graph.microsoft.com/beta/serviceprincipals/?$filter=startswith(DisplayName, ‘{sync config name}’). Cette requête retourne une liste filtrée de principaux de service. Vous pouvez également l’obtenir via le nœud d’inscription des applications sous Microsoft Entra ID.

  5. Recherchez "appDisplayName": "Active Directory to Azure Active Directory Provisioning" et notez la valeur pour "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. Remplacez {Service Principal id} par votre valeur, puis exécutez la requête https://graph.microsoft.com/beta/serviceprincipals/{Service Principal id}/synchronization/jobs/.

  7. Recherchez "id": "AD2AADProvisioning.fd1c9b9e8077402c8bc03a7186c8f976" et notez la valeur pour "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. À présent, exécutez la requête https://graph.microsoft.com/beta/serviceprincipals/{Service Principal Id}/synchronization/jobs/{AD2AAD Provisioning id}/schema.

    Remplacez {Service Principal Id} et {AD2ADD Provisioning Id} par vos valeurs.

  9. Cette requête retourne le schéma de synchronisation.

    Returned schema

Étapes suivantes