Tutoriel - Personnaliser les mappages d’attributs d’approvisionnement d’utilisateurs pour les applications SaaS dans Microsoft Entra ID

Microsoft Entra ID prend en charge l’approvisionnement d’utilisateurs pour des applications SaaS non-Microsoft telles que Salesforce, G Suite et autres. Si vous activez l’approvisionnement d’utilisateurs pour une application SaaS non-Microsoft, le centre d’administration Microsoft Entra contrôle ses valeurs d’attributs via des mappages d’attributs.

Avant de commencer, vous devez vous familiariser avec les concepts de gestion des applications et d’authentification unique (SSO). Consultez les liens suivants :

Il existe un ensemble préconfiguré d'attributs et de mappages d'attributs entre les objets utilisateur Microsoft Entra et les objets utilisateur de chaque application SaaS. Certaines applications gèrent d’autres types d’objets parallèlement aux Utilisateurs, tels que des Groupes.

Vous pouvez personnaliser les mappages d’attributs par défaut en fonction des besoins de votre organisation. Vous pouvez ainsi modifier ou supprimer des mappages d’attributs existants ou en créer de nouveaux.

Remarque

Outre la configuration des mappages d’attributs par l’interface Microsoft Entra, vous pouvez évaluer, télécharger et modifier la représentation JSON de votre schéma.

Modification des mappages d’attributs utilisateur

Conseil

Les étapes décrites dans cet article peuvent varier légèrement en fonction du portail de départ.

Pour accéder à la fonctionnalité Mappages de l’approvisionnement d’utilisateurs, procédez comme suit :

  1. Connectez-vous au centre d’administration Microsoft Entra en tant qu’administrateur d’applications au moins.

  2. Accédez à Identité>Applications>Applications d’entreprise.

  3. Une liste de toutes les applications configurées s’affiche, dont les applications qui ont été ajoutées à partir de la galerie.

  4. Sélectionnez n’importe quelle application pour charger son panneau de gestion d’application, où vous pouvez afficher des rapports et gérer les paramètres de l’application.

  5. Sélectionnez Approvisionnement pour gérer les paramètres d’approvisionnement du compte utilisateur de l’application sélectionnée.

  6. Développez Mappages pour afficher et modifier les attributs utilisateur qui circulent entre Microsoft Entra ID et l’application cible. Cette section permet également de configurer l’approvisionnement de groupes et de comptes d’utilisateurs si l’application prend en charge cette fonctionnalité.

    Utilisez des mappages pour afficher et modifier les attributs utilisateur

  7. Sélectionnez une configuration Mappages pour ouvrir l’écran Mappage d’attributs associé. Les applications SaaS nécessitent certains mappages d’attributs pour fonctionner correctement. Pour les attributs requis, la fonctionnalité Supprimer n’est pas disponible.

    Utilisez le mappage d’attributs pour les configurer pour les applications

    Dans cette capture d’écran, vous pouvez voir que l’attribut Nom d’utilisateur d’un objet géré dans Salesforce est renseigné avec la valeur userPrincipalName de l’objet Microsoft Entra lié.

    Remarque

    Effacer Créer n’affecte pas les utilisateurs existants. Si l’option Créer n’est pas sélectionnée, vous ne pouvez pas créer de nouveaux utilisateurs.

  8. Sélectionnez un Mappage d’attributs pour ouvrir l’écran Modifier l’attribut. Ici, vous pouvez modifier les attributs utilisateur qui circulent entre Microsoft Entra ID et l’application cible.

    Utilisez Modifier l’attribut pour modifier les attributs utilisateur

Présentation des types de mappages d’attributs

Avec les mappages d’attributs, vous contrôlez la façon dont les attributs sont renseignés dans une application SaaS non-Microsoft. Quatre différents types de mappages sont pris en charge :

  • Direct : l’attribut cible est renseigné avec la valeur d’un attribut de l’objet lié dans Microsoft Entra ID.
  • Constant : l’attribut cible est renseigné avec une chaîne spécifique que vous avez spécifiée.
  • Expression : l’attribut cible est renseigné en fonction du résultat d’une expression semblable à un script. Pour plus d’informations sur les expressions, consultez Écriture d’expressions pour les mappages d’attributs dans Microsoft Entra ID.
  • Aucun : l’attribut cible reste inchangé. Toutefois, si l’attribut cible est vide, il est renseigné avec la valeur par défaut que vous spécifiez.

Avec ces quatre types de base, les mappages d’attributs personnalisés prennent en charge le concept d’affectation de valeur par défaut facultative. L’affectation de valeur par défaut garantit qu’un attribut cible est renseigné avec une valeur s’il n’existe aucune valeur dans Microsoft Entra ID ou sur l’objet cible. La configuration la plus courante consiste à laisser ce champ vide. Pour plus d’informations sur le mappage d’attributs, consultez Fonctionnement de l’approvisionnement d’applications dans Microsoft Entra ID.

Présentation des propriétés de mappage d’attributs

La section précédente vous a présenté la propriété de type de mappage d’attributs. Outre cette propriété, les mappages d’attributs prennent également en charge ces attributs :

  • Attribut source : attribut utilisateur du système source (exemple, Microsoft Entra ID).
  • Attribut cible : attribut utilisateur dans le système cible (par exemple, ServiceNow).
  • Valeur par défaut si nul (facultatif) : la valeur qui sera passée au système cible si l’attribut source est nul. Cette valeur est approvisionnée uniquement lors de la création d’un utilisateur. La « valeur par défaut si nul » n’est pas approvisionnée lors de la mise à jour d’un utilisateur existant. Par exemple, ajoutez une valeur par défaut pour le titre du travail, lors de la création d’un utilisateur, à l’aide de l’expression : Switch(IsPresent([jobTitle]), "DefaultValue", "True", [jobTitle]). Pour plus d’informations sur les expressions, consultez Référence pour l'écriture d'expressions pour les mappages d'attributs dans Microsoft Entra ID.
  • Trouver les objets utilisant cet attribut : indique si ce mappage doit être utilisé ou pas pour identifier les utilisateurs de manière unique entre les systèmes source et cible. Utilisé sur userPrincipalName ou l’attribut de messagerie dans Microsoft Entra ID et mappé à un champ de nom d’utilisateur dans une application cible.
  • Priorité des correspondances : plusieurs attributs de correspondance peuvent être définis. S’il en existe plusieurs, ils sont évalués dans l’ordre défini par ce champ. Dès qu’une correspondance est trouvée, aucun autre attribut correspondant n’est évalué. Bien que vous puissiez définir autant d’attributs correspondants que vous le souhaitez, déterminez si les attributs que vous utilisez en tant qu’attributs correspondants sont véritablement uniques et doivent être des attributs correspondants. En général, les clients ont un ou deux attributs correspondants dans leur configuration.
  • Appliquer le mappage.
    • Toujours : appliquez ce mappage à la création de l’utilisateur et aux actions de mise à jour.
    • Lors de la création uniquement : appliquez ce mappage uniquement aux actions de création d’utilisateur.

Correspondance des utilisateurs dans les systèmes source et cible

Le service de provisionnement Microsoft Entra peut être déployé aussi bien dans les scénarios « greenfield » (« refonte totale du système existant »), où les utilisateurs n’existent pas sur le système cible, que dans les scénarios « brownfield » (« évolution du système existant »), où les utilisateurs existent déjà sur le système cible. Pour prendre en charge ces deux scénarios, le service de provisionnement utilise le concept de correspondance d’attributs. Les attributs correspondants vous permettent de déterminer comment identifier de manière unique un utilisateur dans la source et faire correspondre l’utilisateur dans la cible. Dans le cadre de la planification de votre déploiement, identifiez l’attribut qui peut être utilisé pour identifier de manière unique un utilisateur dans les systèmes source et cible. Points à noter :

  • Les attributs correspondants doivent être uniques : Les clients utilisent souvent des attributs tels que userPrincipalName, le courrier électronique ou l’ID d’objet comme attribut correspondant.
  • Plusieurs attributs peuvent être utilisés comme attributs correspondants : vous pouvez définir plusieurs attributs à évaluer lors de la correspondance des utilisateurs et de l’ordre dans lequel ils sont évalués (définis comme priorité correspondante dans l’interface utilisateur). Si, par exemple, vous définissez trois attributs comme attributs correspondants et qu’un utilisateur est mis en correspondance de manière unique après l’évaluation des deux premiers attributs, le service n’évalue pas le troisième attribut. Le service évalue les attributs correspondants dans l’ordre spécifié et arrête l’évaluation lorsqu’une correspondance est trouvée.
  • La valeur dans la source et la cible n’ont pas besoin de correspondre exactement : la valeur de la cible peut être une fonction de la valeur de la source. Par conséquent, l’une d’elles peut avoir un attribut emailAddress dans la source et userPrincipalName dans la cible, et correspondre à une fonction de l’attribut emailAddress qui remplace certains caractères par une valeur constante.
  • La correspondance basée sur une combinaison d’attributs n’est pas prise en charge : la plupart des applications ne prennent pas en charge l’interrogation basée sur deux propriétés. Par conséquent, il n’est pas possible d’effectuer une correspondance en fonction d’une combinaison d’attributs. Il est possible d’évaluer des propriétés uniques les unes après les autres.
  • Tous les utilisateurs doivent avoir une valeur pour au moins un attribut correspondant : Si vous définissez un attribut correspondant, tous les utilisateurs doivent avoir une valeur pour cet attribut dans le système source. Si, par exemple, vous définissez userPrincipalName comme attribut de correspondance, tous les utilisateurs doivent avoir un userPrincipalName. Si vous définissez plusieurs attributs correspondants (par exemple, extensionAttribute1 et mail), tous les utilisateurs ne doivent pas avoir le même attribut de correspondance. Un utilisateur peut avoir extensionAttribute1 mais pas mail, alors qu’un autre utilisateur peut avoir mail, mais pas extensionAttribute1.
  • L’application cible doit prendre en charge le filtrage sur l’attribut correspondant : Les développeurs d’applications permettent de filtrer un sous-ensemble d’attributs sur leur API d’utilisateur ou de groupe. Pour les applications de la galerie, nous garantissons que le mappage d’attribut par défaut concerne un attribut sur lequel l’API de l’application cible prend en charge le filtrage. Lorsque vous modifiez l’attribut correspondant par défaut pour l’application cible, vérifiez la documentation de l’API non-Microsoft pour vous assurer que l’attribut peut être filtré.

Modification des mappages d’attributs de groupe

Un certain nombre d’applications, telles que ServiceNow, Box et G Suite, prennent en charge la possibilité d’approvisionner des objets de groupe et d’utilisateur. Les objets Groupe peuvent contenir des propriétés de groupe telles que des noms d’affichage et des alias d’e-mail en plus des membres du groupe.

L’exemple montre ServiceNow avec des objets de groupe et d’utilisateur approvisionnés

Vous pouvez activer ou désactiver l’approvisionnement de groupe en sélectionnant le mappage de groupe sous Mappages, puis en définissant le paramètre Activé sur l’option souhaitée dans l’écran Mappage d’attributs.

Les attributs approvisionnés en tant que partie d’objets de groupe peuvent être personnalisés de la même manière que les objets utilisateur décrits précédemment.

Conseil

L’approvisionnement des objets de groupe (propriétés et membres) est un concept distinct issu de l’affectation de groupes à une application. Il est possible d’affecter un groupe à une application, mais d’approvisionner uniquement les objets utilisateur contenus dans le groupe. L’approvisionnement des objets de groupe complet n’est pas nécessaire pour utiliser des groupes dans des attributions.

Modification de la liste des attributs pris en charge

Les attributs utilisateur pris en charge pour une application donnée sont préconfigurés. Les API de gestion des utilisateurs de la plupart des applications ne prennent pas en charge la découverte de schéma. Par conséquent, le service d’approvisionnement Microsoft Entra n’est pas en mesure de générer de manière dynamique la liste des attributs pris en charge en appelant l’application.

Cependant, certaines applications prennent en charge les attributs personnalisés, et le service d’approvisionnement Microsoft Entra peut lire et écrire des attributs personnalisés. Pour entrer leurs définitions sur le centre d’administration Microsoft Entra, activez la case Afficher les options avancées en bas de l’écran Mappage d’attributs, puis sélectionnez Modifier la liste d’attributs pour votre application.

Les applications et les systèmes qui prennent en charge la personnalisation de la liste d’attributs sont les suivantes :

Remarque

La modification de la liste des attributs pris en charge est uniquement recommandée pour les administrateurs qui ont personnalisé le schéma de leurs applications et systèmes, avec une connaissance directe de la façon dont leurs attributs personnalisés ont été définis ou si un attribut source n’est pas automatiquement affiché dans l’interface utilisateur du centre d’administration Microsoft Entra. Ceci nécessite parfois de connaître les API et les outils de développement fournis par une application ou un système. La possibilité de modifier la liste des attributs pris en charge est verrouillée par défaut, mais les clients peuvent activer cette fonctionnalité en accédant à l’URL suivante : https://portal.azure.com/?Microsoft_AAD_Connect_Provisioning_forceSchemaEditorEnabled=true. Vous pouvez ensuite accéder à votre application pour afficher la liste des attributs.

Remarque

Lorsqu’un attribut d’extension d’annuaire dans Microsoft Entra ID n’apparaît pas automatiquement dans votre liste déroulante de mappage d’attributs, vous pouvez l’ajouter manuellement à la « Liste d’attributs Microsoft Entra ID ». Lorsque vous ajoutez manuellement des attributs d’extension d’annuaire Microsoft Entra à votre application d’approvisionnement, notez que les noms d’attributs d’extension d’annuaire respectent la casse. Par exemple : si vous avez un attribut d’extension de répertoire nommé extension_53c9e2c0exxxxxxxxxxxxxxxx_acmeCostCenter, veillez à l’entrer dans le même format que celui défini dans le répertoire. L’approvisionnement des attributs d’extension d’annuaire à valeurs multiples n’est pas pris en charge.

Lorsque vous modifiez la liste des attributs pris en charge, les propriétés suivantes sont fournies :

  • Name : le nom du système de l’attribut, tel que défini dans le schéma de l’objet cible.
  • Type : le type de données stockées par l’attribut, tel que défini dans le schéma de l’objet cible, qui peut être l’un des types suivants.
    • Binary : l’attribut contient des données binaires.
    • Boolean : l’attribut contient une valeur True ou False.
    • DateTime : l’attribut contient une chaîne de date.
    • Integer : l’attribut contient un entier.
    • Référence : l’attribut contient un ID qui fait référence à une valeur stockée dans une autre table de l’application cible.
    • String : l’attribut contient une chaîne de texte.
  • Primary Key? - L’attribut est défini ou pas comme un champ de clé primaire dans le schéma de l’objet cible.
  • Requis ? - L’attribut doit ou non être renseigné dans l’application ou le système cible.
  • Multi-value? - L’attribut prend en charge ou pas plusieurs valeurs.
  • Exact case? - Les valeurs d’attribut sont ou non évaluées en tenant compte de la casse.
  • API Expression : ne pas utiliser, sauf si vous êtes invité à le faire dans la documentation relative à un connecteur d’approvisionnement spécifique (tel que Workday).
  • Referenced Object Attribute : s’il s’agit d’un attribut de type référence, ce menu vous permet de sélectionner la table et l’attribut dans l’application cible qui contient la valeur associée à l’attribut. Par exemple, si vous avez un attribut nommé « Department » dont la valeur stockée fait référence à un objet dans une table « Departments » distincte, sélectionnez Departments.Name. Les tables de référence et les champs d’ID principaux pris en charge pour une application donnée sont préconfigurés et ne peuvent pas être modifiés via le centre d’administration Microsoft Entra. Toutefois, vous pouvez les modifier à l’aide de l’API Microsoft Graph.

Provisionnement d’un attribut d’extension personnalisé sur une application conforme à SCIM

La RFC (Request for Comments) SCIM définit un schéma d’utilisateur et de groupe principal, tout en permettant également aux extensions du schéma de répondre aux besoins de votre application. Pour ajouter un attribut personnalisé à une application SCIM :

  1. Connectez-vous au centre d’administration Microsoft Entra en tant qu’administrateur d’applications au moins.
  2. Accédez à Identité>Applications>Applications d’entreprise.
  3. Sélectionnez votre application, puis Approvisionnement.
  4. Sous Mappages, sélectionnez l’objet (utilisateur ou groupe) pour lequel vous souhaitez ajouter un attribut personnalisé.
  5. En bas de la page, sélectionnez Afficher les options avancées.
  6. Sélectionnez Modifier la liste d’attributs pour AppName.
  7. En bas de la liste d’attributs, entrez les informations relatives à l’attribut personnalisé dans les champs fournis. Sélectionnez ensuite Ajouter un attribut.

Pour les applications SCIM, le nom de l’attribut doit suivre le modèle présenté dans l’exemple. Les paramètres « CustomExtensionName » et « CustomAttribute » peuvent être personnalisés selon les exigences de votre application ; par exemple : urn:ietf:params:scim:schemas:extension:CustomExtensionName:2.0:User:CustomAttribute

Ces instructions s’appliquent uniquement aux applications prenant en charge SCIM. Les applications telles que ServiceNow et Salesforce ne sont pas intégrées à Microsoft Entra ID en tirant parti de SCIM. Elles n’ont donc pas besoin de cet espace de noms spécifique lors de l’ajout d’un attribut personnalisé.

Les attributs personnalisés ne peuvent pas être des attributs référentiels, des attributs à valeurs multiples ou des attributs de type complexe. Les attributs d’extension multivaleurs personnalisés et de type complexe sont actuellement pris en charge uniquement pour les applications de la galerie. L’en-tête de schéma de l’extension personnalisée est omis dans l’exemple ci-dessous, car il n’est pas envoyé dans les requêtes du client SCIM Microsoft Entra.

Exemple de représentation d’un utilisateur avec un attribut d’extension :

{
  "schemas":[
    "urn:ietf:params:scim:schemas:core:2.0:User",
      "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
  ],
  "userName":"bjensen",
  "id": "48af03ac28ad4fb88478",
  "externalId":"bjensen",
  "name":{
    "formatted":"Ms. Barbara J Jensen III",
    "familyName":"Jensen",
    "givenName":"Barbara"
  },
  "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
    "employeeNumber": "701984",
    "costCenter": "4130",
    "organization": "Universal Studios",
    "division": "Theme Park",
    "department": "Tour Operations",
    "manager": {
      "value": "26118915-6090-4610-87e4-49d8ca9f808d",
      "$ref": "../Users/26118915-6090-4610-87e4-49d8ca9f808d",
      "displayName": "John Smith"
    }
  },
  "urn:ietf:params:scim:schemas:extension:CustomExtensionName:2.0:User": {
    "CustomAttribute": "701984",
  },
  "meta": {
    "resourceType": "User",
    "created": "2010-01-23T04:56:22Z",
    "lastModified": "2011-05-13T04:42:34Z",
    "version": "W\/\"3694e05e9dff591\"",
    "location": "https://example.com/v2/Users/2819c223-7f76-453a-919d-413861904646"
  }
}

Approvisionnement d’un rôle sur une application SCIM

Utilisez les étapes de l’exemple afin d’approvisionner des rôles d’application pour un utilisateur dans votre application. La description est spécifique aux applications SCIM personnalisées. En cas d’utilisation d’applications de la galerie telles que Salesforce et ServiceNow, utilisez les mappages de rôles prédéfinis. Les puces décrivent comment convertir l’attribut AppRoleAssignments au format attendu par votre application.

  • Le mappage de l’attribut appRoleAssignment dans Microsoft Entra ID à un rôle dans votre application nécessite que vous transformiez l’attribut à l’aide d’une expression. L’attribut appRoleAssignment ne doit pas être mappé directement à un attribut de rôle sans utiliser d’expression pour analyser les détails du rôle.

Remarque

Lors de l’approvisionnement de rôles à partir d’applications d’entreprise, la norme SCIM définit les attributs de rôle d’utilisateur d’entreprise différemment. Pour plus d’informations, consultez Développer et planifier l’approvisionnement d’un point de terminaison SCIM dans Microsoft Entra ID.

SingleAppRoleAssignment

Quand l’utiliser : utilisez l’expression SingleAppRoleAssignment pour approvisionner un rôle unique pour un utilisateur et spécifier le rôle principal.

Comment configurer : suivez les étapes décrites pour accéder à la page de mappage des attributs et utilisez l’expression SingleAppRoleAssignment pour mapper à l’attribut de rôles. Trois attributs de rôle sont disponibles (roles[primary eq "True"].display, roles[primary eq "True"].type et roles[primary eq "True"].value). Vous pouvez choisir d’inclure tout ou partie des attributs de rôle dans vos mappages. Si vous souhaitez en inclure plus d’un, ajoutez simplement un nouveau mappage et incluez-le en tant qu’attribut cible.

Ajouter SingleAppRoleAssignment

Points importants à prendre en compte

  • Veillez à ce que plusieurs rôles ne soient pas attribués à un utilisateur. Il n’existe aucune garantie quant au rôle approvisionné.
  • Vérifiez l’attribut SingleAppRoleAssignments. L’attribut n’est pas compatible avec la définition de l’étendue sur Sync All users and groups.

Exemple de requête (POST)

{
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:User"
      ],
    "externalId": "alias",
    "userName": "alias@contoso.OnMicrosoft.com",
    "active": true,
    "displayName": "First Name Last Name",
    "meta": {
        "resourceType": "User"
    },
    "roles": [{
        "primary": true,
        "type": "WindowsAzureActiveDirectoryRole",
        "value": "Admin"
        }
]}

Exemple de sortie (PATCH)

"Operations": [
{
    "op": "Add",
    "path": "roles",
    "value": [{
        "value": "{\"id\":\"06b07648-ecfe-589f-9d2f-6325724a46ee\",\"value\":\"25\",\"displayName\":\"Role1234\"}"
        }
    ]
}]

Les formats diffèrent entre les requêtes PATCH et POST. Pour vous assurer que les requêtes POST et PATCH sont envoyées au même format, vous pouvez utiliser l’indicateur de fonctionnalité décrit ici.

AppRoleAssignmentsComplex

Quand l’utiliser : Utilisez l’expression AppRoleAssignmentsComplex pour approvisionner plusieurs rôles pour un utilisateur. Comment configurer : modifiez la liste des attributs pris en charge comme indiqué pour inclure un nouvel attribut pour les rôles :

Ajouter des rôles

Utilisez ensuite l’expression AppRoleAssignmentsComplex pour mapper à l’attribut de rôle personnalisé comme le montre l’image :

Ajouter AppRoleAssignmentsComplex

Points importants à prendre en compte

  • Tous les rôles sont approvisionnés en tant que principal = faux.
  • L’attribut id n’est pas requis dans les rôles SCIM. Utilisez plutôt l'attribut value . Par exemple, si l’attribut value contient le nom ou l’identificateur du rôle, utilisez-le pour approvisionner le rôle. Vous pouvez utiliser la fonctionnalité indicateur ici pour corriger le problème d’attribution d’identifiant. Toutefois, se fier uniquement à l’attribut valeur n’est pas toujours suffisant (comme par exemple s’il existe plusieurs rôles portant le même nom ou le même identificateur). Dans certains cas, il est nécessaire d’utiliser l’attribut identifiant pour approvisionner correctement le rôle

Limitations

  • AppRoleAssignmentsComplex n’est pas compatible avec une étendue définie sur « Synchroniser tous les utilisateurs et groupes ».

Exemple de requête (POST)

{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User"
  ],
  "externalId": "alias",
  "userName": "alias@contoso.OnMicrosoft.com",
  "active": true,
  "displayName": "First Name Last Name",
  "meta": {
        "resourceType": "User"
  },
  "roles": [
      {
            "primary": false,
            "type": "WindowsAzureActiveDirectoryRole",
            "displayName": "Admin",
            "value": "Admin"
      },
      {
            "primary": false,
            "type": "WindowsAzureActiveDirectoryRole",
            "displayName": "User",
          "value": "User"
      }
  ]
}

Exemple de sortie (PATCH)

"Operations": [
  {
    "op": "Add",
    "path": "roles",
    "value": [
      {
        "value": "{"id":"06b07648-ecfe-589f-9d2f-6325724a46ee","value":"Admin","displayName":"Admin"}
      },
{
        "value": "{"id":"06b07648-ecfe-599f-9d2f-6325724a46ee","value":"User","displayName":"User"}
      }
    ]
  }
]

AssertiveAppRoleAssignmentsComplex (recommandé pour les rôles complexes)

Quand utiliser : utilisez AssertiveAppRoleAssignmentsComplex pour activer la fonctionnalité PATCH Remplacer. Pour les applications SCIM qui prennent en charge plusieurs rôles, cela garantit que les rôles supprimés dans Microsoft Entra ID sont également supprimés dans l’application cible. La fonctionnalité de remplacement supprime également tous les rôles supplémentaires dont l’utilisateur n’est pas reflété dans Entra ID

La différence entre AppRoleAssignmentsComplex et AssertiveAppRoleAssignmentsComplex est le mode de l’appel de correctif et l’effet sur le systen cible. Ce dernier n’ajoute que PATCH et ne supprime donc aucun rôle existant sur la cible. Ce dernier remplace PATCH qui supprime les rôles dans le système cible s’ils n’ont pas été affectés à l’utilisateur sur Entra ID.

Comment configurer : modifiez la liste des attributs pris en charge comme indiqué pour inclure un nouvel attribut pour les rôles :

Ajouter des rôles

Utilisez ensuite l’expression AssertiveAppRoleAssignmentsComplex pour mapper à l’attribut de rôle personnalisé comme illustré dans l’image :

Ajouter AssertiveAppRoleAssignmentsComplex

Points importants à prendre en compte

  • Tous les rôles sont approvisionnés en tant que principal = faux.
  • L’attribut id n’est pas requis dans les rôles SCIM. Utilisez plutôt l'attribut value . Par exemple, si l’attribut value contient le nom ou l’identificateur du rôle, utilisez-le pour approvisionner le rôle. Vous pouvez utiliser la fonctionnalité indicateur ici pour corriger le problème d’attribution d’identifiant. Toutefois, se fier uniquement à l’attribut valeur n’est pas toujours suffisant (comme par exemple s’il existe plusieurs rôles portant le même nom ou le même identificateur). Dans certains cas, il est nécessaire d’utiliser l’attribut identifiant pour approvisionner correctement le rôle

Limitations

  • AssertiveAppRoleAssignmentsComplex n’est pas compatible avec une étendue définie sur « Synchroniser tous les utilisateurs et groupes ».

Exemple de requête (POST)

{"schemas":["urn:ietf:params:scim:schemas:core:2.0:User"], 

"externalId":"contoso", 

"userName":"contoso@alias.onmicrosoft.com", 

"active":true, 

"roles":[{ 

  "primary":false, 

  "type":"WindowsAzureActiveDirectoryRole", 

  "display":"User", 

  "value":"User"}, 

  {"primary":false, 

  "type":"WindowsAzureActiveDirectoryRole", 

  "display":"Test", 

  "value":"Test"}], 

}

Exemple de sortie (PATCH)

{"schemas":["urn:ietf:params:scim:api:messages:2.0:PatchOp"], 

"Operations":[{ 

    "op":"replace", 

    "path":"roles", 

    "value":[{ 

        "primary":false, 

        "type":"WindowsAzureActiveDirectoryRole", 

        "display":"User", 

        "value":"User"}, 

        {"primary":false, 

        "type":"WindowsAzureActiveDirectoryRole", 

        "display":"Test", 

        "value":"Test"} 

        ] 

        } 

        ] 

    } 

Approvisionnement d’un attribut à valeurs multiples

Certains attributs, tels que phoneNumbers et emails, sont des attributs à valeurs multiples pour lesquels vous devez spécifier différents types de numéros de téléphone ou d’adresses e-mail. Utilisez l’expression pour les attributs à valeurs multiples. Elle vous permet de spécifier le type d’attribut et de le mapper à l’attribut d’utilisateur Microsoft Entra correspondant pour la valeur.

  • phoneNumbers[type eq "work"].value

  • phoneNumbers[type eq "mobile"].value

  • phoneNumbers[type eq "fax"].value

    "phoneNumbers": [
       {
          "value": "555-555-5555",
          "type": "work"
       },
       {
          "value": "555-555-5555",
          "type": "mobile"
       },
       {
          "value": "555-555-5555",
          "type": "fax"
       }
    ]
    

Restauration des attributs par défaut et des mappages d’attributs

Si vous devez recommencer et réinitialiser vos mappages existants à leur état par défaut, vous pouvez cocher la case Restaurer les mappages par défaut et enregistrer la configuration. Cette opération définit tous les mappages et les filtres d’étendue comme si l’application était ajoutée à votre locataire Microsoft Entra à partir de la galerie d’applications.

La sélection de cette option force une resynchronisation de tous les utilisateurs pendant l’exécution du service d’approvisionnement.

Important

Il est fortement recommandé que l’État de l’approvisionnement soit défini sur Désactivé avant d’appeler cette option.

Ce que vous devez savoir

  • Microsoft Entra ID fournit une implémentation efficace d’un processus de synchronisation. Dans un environnement initialisé, seuls les objets nécessitant des mises à jour sont traités pendant un cycle de synchronisation.
  • La mise à jour des mappages d’attributs affecte les performances d’un cycle de synchronisation. Une mise à jour de la configuration des mappages d’attributs nécessite une réévaluation de tous les objets gérés.
  • Il est recommandé d’apporter le moins de modifications consécutives possible à vos mappages d’attributs.
  • L’ajout d’un attribut de photo à approvisionner dans une application n’est actuellement pas pris en charge, car vous ne pouvez pas spécifier le format de synchronisation de la photo. Vous pouvez demander cette fonctionnalité via User Voice.
  • L’attribut IsSoftDeleted fait souvent partie des mappages par défaut d’une application. IsSoftdeleted peut être vrai dans l’un des quatre scénarios suivants : 1) L’utilisateur est hors de portée en raison de la non-attribution de l’application. 2) L’utilisateur est hors de portée, car il ne répond pas à un filtre d’étendue. 3) L’utilisateur est supprimé de manière réversible dans Microsoft Entra ID. 4) La propriété AccountEnabled est définie avec la valeur false sur l’utilisateur. Essayez de garder l’attribut IsSoftDeleted dans vos mappages d’attributs.
  • Le service d’approvisionnement Microsoft Entra ne prend pas en charge l’approvisionnement des valeurs nul.
  • Leur clé primaire, en général ID, ne doit pas être incluse en tant qu’attribut cible dans vos mappages d’attributs.
  • L’attribut role doit généralement être mappé à l’aide d’une expression, au lieu d’un mappage direct. Pour plus d’informations sur le mappage de rôles, consultez Approvisionnement d’un rôle dans une application SCIM.
  • Vous pouvez désactiver des groupes de vos mappages, mais la désactivation des utilisateurs n’est pas prise en charge.

Étapes suivantes