Procédure : Configurer les revendications de rôle émises dans le jeton SAML pour les applications d'entrepriseHow to: Configure the role claim issued in the SAML token for enterprise applications

Grâce à Azure Active Directory (Azure AD), vous pouvez personnaliser le type de revendications de rôle que vous recevez après avoir autorisé une application.By using Azure Active Directory (Azure AD), you can customize the claim type for the role claim in the response token that you receive after you authorize an app.

PrérequisPrerequisites

  • Un abonnement Azure AD avec l’installation des répertoires.An Azure AD subscription with directory setup.
  • Un abonnement pour lequel l’authentification unique (SSO) est activée.A subscription that has single sign-on (SSO) enabled. Vous devez configurer l’authentification unique avec votre application.You must configure SSO with your application.

Quand utiliser cette fonctionnalitéWhen to use this feature

Si votre application s’attend à voir passer dans une réponse SAML des rôles personnalisés, vous devez utiliser cette fonctionnalité.If your application expects custom roles to be passed in a SAML response, you need to use this feature. Vous pouvez créer autant de rôles que nécessaire à passer à nouveau d’Azure AD vers votre application.You can create as many roles as you need to be passed back from Azure AD to your application.

Créer des rôles pour une applicationCreate roles for an application

  1. Dans le volet gauche du portail Azure, sélectionnez l’icône Azure Active Directory.In the Azure portal, in the left pane, select the Azure Active Directory icon.

    Icône Azure Active Directory

  2. Sélectionnez Applications d’entreprise.Select Enterprise applications. Sélectionnez ensuite Toutes les applications.Then select All applications.

    Volet Applications d’entreprise

  3. Pour ajouter une nouvelle application, cliquez sur le bouton Nouvelle application en haut de la boîte de dialogue.To add a new application, select the New application button on the top of the dialog box.

    Bouton « Nouvelle application »

  4. Dans la zone de recherche, saisissez le nom de votre application, puis sélectionnez votre application dans le panneau de résultats.In the search box, type the name of your application, and then select your application from the result panel. Sélectionnez le bouton Ajouter pour ajouter l’application.Select the Add button to add the application.

    Application dans la liste des résultats

  5. Lorsque l’application est ajoutée, allez à la page Propriétés et copiez l’ID de l’objet.After the application is added, go to the Properties page and copy the object ID.

    Page Propriétés

  6. Ouvrez l’afficheur Microsoft Graph dans une autre fenêtre et procédez comme suit :Open Microsoft Graph Explorer in another window and take the following steps:

    1. Connectez-vous au site de l’Explorateur graphique en utilisant les informations d’identification d’administrateur global ou de coadministrateur de votre locataire.Sign in to the Graph Explorer site by using the global admin or coadmin credentials for your tenant.

    2. Vous devez disposer des autorisations suffisantes pour créer les rôles.You need sufficient permissions to create the roles. Sélectionnez Modifier les autorisations pour obtenir les autorisations.Select modify permissions to get the permissions.

      Bouton « Modifier les autorisations »

      Nota

      Les rôles Administrateur d’application et Administrateur Cloud App ne sont pas appropriés pour ce scénario, puisque nous avons besoin d’autorisations d’administrateur général pour effectuer des opérations d’écriture et de lecture dans le répertoire.Cloud App Administrator and App Administrator role will not work in this scenario as we need the Global Admin permissions for Directory Read and Write.

    3. Sélectionnez les autorisations suivantes dans la liste (si vous ne l’avez pas déjà fait) et sélectionnez Modifier les autorisations.Select the following permissions from the list (if you don't have these already) and select Modify Permissions.

      Liste des autorisations et bouton « Modifier les autorisations »

    4. Acceptez le consentement.Accept the consent. Vous êtes à nouveau connecté au système.You're logged in to the system again.

    5. Modifiez la version sur bêta et extrayez la liste des principaux du service à partir de votre locataire à l’aide de la requête suivante :Change the version to beta, and fetch the list of service principals from your tenant by using the following query:

      https://graph.microsoft.com/beta/servicePrincipals

      Si vous utilisez plusieurs répertoires, suivez ce modèle : https://graph.microsoft.com/beta/contoso.com/servicePrincipalsIf you're using multiple directories, follow this pattern: https://graph.microsoft.com/beta/contoso.com/servicePrincipals

      Boîte de dialogue de l’Explorateur graphique, avec la requête d’extraction des principaux du service

    6. Dans la liste des principaux du service extraits, obtenez celui que vous devez modifier.From the list of fetched service principals, get the one that you need to modify. Vous pouvez également utiliser les touches Ctrl + F pour rechercher l’application dans la liste des principaux du service.You can also use Ctrl+F to search the application from all the listed service principals. Recherchez l’ID de l’objet que vous avez copié à partir de la page Propriétés et utilisez la requête suivante pour accéder au principal du service :Search for the object ID that you copied from the Properties page, and use the following query to get to the service principal:

      https://graph.microsoft.com/beta/servicePrincipals/<objectID>

      Requête d’obtention du principal du service que vous devez modifier

    7. Extrayez la propriété appRoles à partir de l’objet du principal du service.Extract the appRoles property from the service principal object.

      Détails de la propriété appRoles

      Si vous utilisez l’application personnalisée (non l’application de la Place de marché Azure), les deux rôles par défaut s’affichent : utilisateur et msiam_access.If you're using the custom app (not the Azure Marketplace app), you see two default roles: user and msiam_access. Pour l’application de la Place de marché, msiam_access est le seul rôle par défaut.For the Marketplace app, msiam_access is the only default role. Vous n’avez pas besoin d’apporter des modifications aux rôles par défaut.You don't need to make any changes in the default roles.

    8. Générez de nouveaux rôles pour votre application.Generate new roles for your application.

      Le JSON suivant est un exemple d’objet appRoles.The following JSON is an example of the appRoles object. Créez un objet similaire pour ajouter les rôles que vous voulez pour votre application.Create a similar object to add the roles that you want for your application.

      {
        "appRoles": [
          {
             "allowedMemberTypes": [
                "User"
              ],
              "description": "msiam_access",
              "displayName": "msiam_access",
              "id": "b9632174-c057-4f7e-951b-be3adc52bfe6",
              "isEnabled": true,
              "origin": "Application",
              "value": null
          },
          {
              "allowedMemberTypes": [
                  "User"
              ],
              "description": "Administrators Only",
              "displayName": "Admin",
              "id": "4f8f8640-f081-492d-97a0-caf24e9bc134",
              "isEnabled": true,
              "origin": "ServicePrincipal",
              "value": "Administrator"
          }
       ]
      }
      

      Vous ne pouvez ajouter de nouveaux rôles qu’après msiam_access de l’opération de correction.You can only add new roles after msiam_access for the patch operation. Vous pouvez également ajouter autant de rôles selon les besoins de votre organisation.Also, you can add as many roles as your organization needs. Azure AD envoie la valeur de ces rôles conformément à la valeur de revendication dans la réponse SAML.Azure AD will send the value of these roles as the claim value in the SAML response. Pour générer les valeurs de GUID pour l’ID de nouveaux rôles, utilisez les outils web tels que thisTo generate the GUID values for the ID of new roles use the web tools like this

    9. Revenez à l’Explorateur graphique et modifiez la méthode de GET à PATCH.Go back to Graph Explorer and change the method from GET to PATCH. Corrigez l’objet du principal du service pour obtenir les rôles souhaités en mettant à jour la propriété appRoles comme celle affichée dans l’exemple précédent.Patch the service principal object to have the desired roles by updating the appRoles property like the one shown in the preceding example. Sélectionnez Exécuter la requête pour exécuter l’opération de correction.Select Run Query to execute the patch operation. Un message de réussite confirme la création du rôle.A success message confirms the creation of the role.

      Opération de correction avec le message de réussite

  7. Une fois le principal du service corrigé avec d’autres rôles, vous pouvez assigner des utilisateurs aux rôles respectifs.After the service principal is patched with more roles, you can assign users to the respective roles. Vous pouvez assigner les utilisateurs en accédant au portail et à l’application.You can assign the users by going to portal and browsing to the application. Sélectionnez l’onglet Utilisateurs et groupes. Cet onglet répertorie tous les utilisateurs et groupes déjà assignés à l’application.Select the Users and groups tab. This tab lists all the users and groups that are already assigned to the app. Vous pouvez ajouter de nouveaux utilisateurs sur les nouveaux rôles.You can add new users on the new roles. Vous pouvez également sélectionner un utilisateur existant et sélectionnez Modifier pour modifier le rôle.You can also select an existing user and select Edit to change the role.

    Onglet « Utilisateurs et groupes »

    Pour assigner le rôle à n’importe quel utilisateur, sélectionnez le nouveau rôle puis le bouton Assigner dans la partie inférieure de la page.To assign the role to any user, select the new role and select the Assign button on the bottom of the page.

    Volets « Modifier l’affectation » et « Sélectionner un rôle »

    Vous devez actualiser votre session dans le portail Azure pour afficher les nouveaux rôles.You need to refresh your session in the Azure portal to see new roles.

  8. Mettez à jour la table Attributs table pour définir un mappage personnalisé de la revendication de rôle.Update the Attributes table to define a customized mapping of the role claim.

  9. Dans la section Revendications des utilisateurs de la boîte de dialogue Attributs utilisateur, effectuez les étapes suivantes pour ajouter le jeton SAML comme indiqué dans le tableau ci-dessous :In the User Claims section on the User Attributes dialog, perform the following steps to add SAML token attribute as shown in the below table:

    Nom de l’attributAttribute name Valeur d'attributAttribute value
    Nom de rôleRole name user.assignedrolesuser.assignedroles

    Si la valeur de revendication de rôle est null, Azure AD n’enverra pas cette valeur dans le jeton ; il s’agit du comportement par défaut normal.If the role claim value is null, then Azure AD will not send this value in the token and this is default as per design.

    1. Cliquez sur l’icône Modifier pour ouvrir la boîte de dialogue Attributs utilisateur et revendications.Click Edit icon to open User Attributes & Claims dialog.

      Capture d’écran mettant en évidence l’icône Modifier qui sert à ouvrir la boîte de dialogue Attributs et revendications de l’utilisateur.

    2. Dans la boîte de dialogue Gérer les revendications des utilisateurs, ajoutez l’attribut de jeton SAML en cliquant sur Ajouter une nouvelle revendication.In the Manage user claims dialog, add the SAML token attribute by clicking on Add new claim.

      Bouton « Ajouter un attribut »

      Volet « Ajouter un attribut »

    3. Dans la zone Nom, saisissez le nom de l’attribut, si nécessaire.In the Name box, type the attribute name as needed. Cet exemple utilise Nom de rôle comme nom de revendication.This example uses Role Name as the claim name.

    4. Laissez la zone Espace de noms vide.Leave the Namespace box blank.

    5. Dans la liste Attribut de la source, tapez la valeur d’attribut indiquée pour cette ligne.From the Source attribute list, type the attribute value shown for that row.

    6. Sélectionnez Enregistrer.Select Save.

  10. Pour tester votre application dans une authentification unique initiée par un fournisseur d’identité, connectez-vous au volet d’accès et sélectionnez la vignette de votre application.To test your application in a single sign-on that's initiated by an identity provider, sign in to the Access Panel and select your application tile. Dans le jeton SAML, vous devez voir tous les rôles assignés à l’utilisateur avec le nom de la revendication que vous avez attribué.In the SAML token, you should see all the assigned roles for the user with the claim name that you have given.

Mettre à jour un rôle existantUpdate an existing role

Pour mettre à jour un rôle existant, procédez comme suit :To update an existing role, perform the following steps:

  1. Ouvrez l’afficheur Microsoft Graph.Open Microsoft Graph Explorer.

  2. Connectez-vous au site de l’Explorateur graphique en utilisant les informations d’identification d’administrateur global ou de coadministrateur de votre locataire.Sign in to the Graph Explorer site by using the global admin or coadmin credentials for your tenant.

  3. Modifiez la version sur bêta et extrayez la liste des principaux du service à partir de votre locataire à l’aide de la requête suivante :Change the version to beta, and fetch the list of service principals from your tenant by using the following query:

    https://graph.microsoft.com/beta/servicePrincipals

    Si vous utilisez plusieurs répertoires, suivez ce modèle : https://graph.microsoft.com/beta/contoso.com/servicePrincipalsIf you're using multiple directories, follow this pattern: https://graph.microsoft.com/beta/contoso.com/servicePrincipals

    Boîte de dialogue de l’Explorateur graphique, avec la requête d’extraction des principaux du service

  4. Dans la liste des principaux du service extraits, obtenez celui que vous devez modifier.From the list of fetched service principals, get the one that you need to modify. Vous pouvez également utiliser les touches Ctrl + F pour rechercher l’application dans la liste des principaux du service.You can also use Ctrl+F to search the application from all the listed service principals. Recherchez l’ID de l’objet que vous avez copié à partir de la page Propriétés et utilisez la requête suivante pour accéder au principal du service :Search for the object ID that you copied from the Properties page, and use the following query to get to the service principal:

    https://graph.microsoft.com/beta/servicePrincipals/<objectID>

    Requête d’obtention du principal du service que vous devez modifier

  5. Extrayez la propriété appRoles à partir de l’objet du principal du service.Extract the appRoles property from the service principal object.

    Détails de la propriété appRoles

  6. Pour mettre à jour le rôle existant, procédez comme suit.To update the existing role, use the following steps.

    Corps de la demande pour « PATCH », avec « description » et « displayname » mis en surbrillance

    1. Modifiez la méthode de GET à PATCH.Change the method from GET to PATCH.

    2. Copiez les rôles existants et collez-les sous Corps de la demande.Copy the existing roles and paste them under Request Body.

    3. Mettez à jour la valeur d’un rôle en mettant à jour la description du rôle, la valeur du rôle ou le nom d’affichage du rôle en fonction des besoins.Update the value of a role by updating the role description, role value, or role display name as needed.

    4. Lorsque vous avez mis à jour tous les rôles requis, sélectionnez Exécuter la requête.After you update all the required roles, select Run Query.

Supprimer un rôle existantDelete an existing role

Pour supprimer un rôle existant, procédez comme suit :To delete an existing role, perform the following steps:

  1. Ouvrez l’afficheur Microsoft Graph dans une autre fenêtre.Open Microsoft Graph Explorer in another window.

  2. Connectez-vous au site de l’Explorateur graphique en utilisant les informations d’identification d’administrateur global ou de coadministrateur de votre locataire.Sign in to the Graph Explorer site by using the global admin or coadmin credentials for your tenant.

  3. Modifiez la version sur bêta et extrayez la liste des principaux du service à partir de votre locataire à l’aide de la requête suivante :Change the version to beta, and fetch the list of service principals from your tenant by using the following query:

    https://graph.microsoft.com/beta/servicePrincipals

    Si vous utilisez plusieurs répertoires, suivez ce modèle : https://graph.microsoft.com/beta/contoso.com/servicePrincipalsIf you're using multiple directories, follow this pattern: https://graph.microsoft.com/beta/contoso.com/servicePrincipals

    Boîte de dialogue de l’Explorateur graphique, avec la requête d’extraction de la liste des principaux du service

  4. Dans la liste des principaux du service extraits, obtenez celui que vous devez modifier.From the list of fetched service principals, get the one that you need to modify. Vous pouvez également utiliser les touches Ctrl + F pour rechercher l’application dans la liste des principaux du service.You can also use Ctrl+F to search the application from all the listed service principals. Recherchez l’ID de l’objet que vous avez copié à partir de la page Propriétés et utilisez la requête suivante pour accéder au principal du service :Search for the object ID that you copied from the Properties page, and use the following query to get to the service principal:

    https://graph.microsoft.com/beta/servicePrincipals/<objectID>

    Requête d’obtention du principal du service que vous devez modifier

  5. Extrayez la propriété appRoles à partir de l’objet du principal du service.Extract the appRoles property from the service principal object.

    Détails de la propriété appRoles à partir de l’objet du principal du service

  6. Pour supprimer le rôle existant, procédez comme suit.To delete the existing role, use the following steps.

    Corps de la demande pour « PATCH », avec IsEnabled défini sur false

    1. Modifiez la méthode de GET à PATCH.Change the method from GET to PATCH.

    2. Copiez les rôles existants à partir de l’application et collez-les sous Corps de la demande.Copy the existing roles from the application and paste them under Request Body.

    3. Définissez la valeur IsEnabled sur false pour le rôle que vous souhaitez supprimer.Set the IsEnabled value to false for the role that you want to delete.

    4. Sélectionnez Run Query (Exécuter la requête).Select Run Query.

    Assurez-vous que vous disposez du rôle d’utilisateur msiam_access et que l’ID correspond au rôle généré.Make sure that you have the msiam_access role, and the ID is matching in the generated role.

  7. Lorsque le rôle est désactivé, supprimez ce bloc de rôle de la section appRoles.After the role is disabled, delete that role block from the appRoles section. Conservez la méthode PATCH, puis sélectionnez Exécuter la requête.Keep the method as PATCH, and select Run Query.

  8. Lorsque vous avez exécuté la requête, le rôle est supprimé.After you run the query, the role is deleted.

    Le rôle doit être désactivé pour pouvoir être supprimé.The role needs to be disabled before it can be removed.

Étapes suivantesNext steps

Pour connaître les étapes supplémentaires, consultez la documentation de l’application.For additional steps, see the app documentation.