Partager via


Configurer des autorisations Azure AD Graph pour une inscription d’application

Azure Active Directory (Azure AD) Graph est déconseillé et est dans son chemin de mise hors service. Nous vous recommandons de suivre la liste de contrôle de planification de la migration des applications pour vous aider à migrer vos applications vers Microsoft Graph.

Votre application peut toujours nécessiter temporairement des autorisations Azure AD Graph pour accéder aux ressources. Vous pouvez suivre l’une des trois méthodes décrites dans cet article pour configurer les autorisations Azure AD Graph pour l’inscription de votre application :

  1. Utiliser le Centre d’administration Microsoft Entra pour rechercher les API utilisées par votre organisation
  2. Mettre à jour le manifeste de l’application dans le Centre d’administration Microsoft Entra
  3. Utiliser l’API des applications Microsoft Graph

Attention

Toute application utilisant Azure AD Graph cesse de fonctionner une fois l’API mise hors service. Pour plus d’informations, consultez Migrer des applications Azure AD Graph vers Microsoft Graph.

Configuration requise

Les étapes décrites dans cet article nécessitent deux ensembles de privilèges :

  • Privilèges permettant d’ajouter des autorisations à une inscription d’application
  • Privilèges permettant d’accorder ces autorisations à l’inscription de l’application

Un utilisateur disposant au moins du rôle Administrateur de rôle privilégié peut effectuer les deux opérations, tandis qu’un utilisateur disposant du rôle Administrateur d’application ou Administrateur d’application cloud peut uniquement ajouter les autorisations. Pour vous aider à appliquer la séparation des tâches et l’accès au moindre privilège, séparez les tâches d’ajout d’autorisations et d’octroi d’autorisations à différents utilisateurs. Pour plus d’informations sur les actions prises en charge par ces rôles, consultez Rôles intégrés Microsoft Entra.

En outre, vous avez besoin des ressources et privilèges suivants :

  • Connectez-vous à un client API tel que l’Explorateur Graph pour exécuter les requêtes HTTP.
  • L’autorisation doit être accordée à l’application Application.ReadWrite.All utilisée pour effectuer ces modifications.

Utiliser l’API des applications Microsoft Graph

L’objet d’application Microsoft Graph inclut une propriété requiredResourceAccess qui est une collection d’objets avec des informations sur l’API de ressource et les autorisations. Utilisez cette propriété pour configurer les autorisations Azure AD Graph comme décrit dans les étapes suivantes.

Étape 1 : Identifier les ID d’autorisation pour les autorisations Azure AD Graph requises par votre application

Identifiez les autorisations Azure AD Graph dont votre application a besoin, leurs ID d’autorisation et s’il s’agit de rôles d’application (autorisations d’application) ou oauth2PermissionScopes (autorisations déléguées). Pour plus d’informations, consultez Informations de référence sur les autorisations Azure AD Graph.

Azure AD Graph est identifié en tant qu’objet servicePrincipal avec 00000002-0000-0000-c000-000000000000 comme appId global unique et Windows Azure Active Directory comme displayName et appDisplayName. Exécutez la requête suivante pour récupérer l’objet principal de service pour Azure AD Graph dans votre locataire.

Demande

GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=appId eq '00000002-0000-0000-c000-000000000000'

Réponse

Dans l’objet response, les détails des autorisations d’application Azure AD Graph sont répertoriés dans l’objet appRoles , tandis que les détails des autorisations déléguées sont répertoriés dans l’objet oauth2PermissionScopes .

Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#servicePrincipals",
    "value": [
        {
            "id": "1804a6f8-e623-4520-8f40-ba1b0c11c42d",
            "accountEnabled": true,
            "appDisplayName": "Windows Azure Active Directory",
            "appDescription": null,
            "appId": "00000002-0000-0000-c000-000000000000",
            "appOwnerOrganizationId": "f8cdef31-a31e-4b4a-93e4-5f571e91255a",
            "appRoleAssignmentRequired": false,
            "displayName": "Windows Azure Active Directory",
            "servicePrincipalNames": [
                "https://graph.windows.net",
                "00000002-0000-0000-c000-000000000000/graph.microsoftazure.us",
                "00000002-0000-0000-c000-000000000000/graph.windows.net",
                "00000002-0000-0000-c000-000000000000/directory.windows.net",
                "00000002-0000-0000-c000-000000000000",
                "https://graph.windows.net/",
                "https://graph.microsoftazure.us"
            ],
            "servicePrincipalType": "Application",
            "signInAudience": "AzureADMultipleOrgs",
            "appRoles": [
                {
                    "allowedMemberTypes": [
                        "Application"
                    ],
                    "description": "Allows the app to read applications and service principals without a signed-in user",
                    "displayName": "Read all applications",
                    "id": "3afa6a7d-9b1a-42eb-948e-1650a849e176",
                    "isEnabled": true,
                    "origin": "Application",
                    "value": "Application.Read.All"
                }
            ],
            "oauth2PermissionScopes": [
                {
                    "adminConsentDescription": "Allows users to sign in to the app, and allows the app to read the profile of signed-in users. It also allow the app to read basic company information of signed-in users.",
                    "adminConsentDisplayName": "Sign in and read user profile",
                    "id": "311a71cc-e848-46a1-bdf8-97ff7156d8e6",
                    "isEnabled": true,
                    "type": "User",
                    "userConsentDescription": "Allows you to sign in to the app with your work account and let the app read your profile. It also allows the app to read basic company information.",
                    "userConsentDisplayName": "Sign you in and read your profile",
                    "value": "User.Read"
                }
            ]
        }
    ]
}

À partir de la sortie tronquée précédente, 311a71cc-e848-46a1-bdf8-97ff7156d8e6 est l’ID d’autorisation pour l’autorisation déléguée User.Read , tandis que 3afa6a7d-9b1a-42eb-948e-1650a849e176 est l’ID d’autorisation pour l’autorisation d’application Application.Read.All dans Azure AD Graph.

Étape 2 : Ajouter des autorisations Azure AD Graph à votre application

L’exemple suivant appelle l’API Mettre à jour l’application pour ajouter les autorisations déléguées et d’application User.Read et Application.Read.All d’Azure AD Graph à une inscription d’application identifiée par l’ID d’objet 581088ba-83c5-4975-b8af-11d2d7a76e98.

Importante

Pour mettre à jour la propriété requiredResourceAccess , vous devez transmettre les autorisations existantes et nouvelles. Le passage de nouvelles autorisations uniquement remplace et supprime les autorisations existantes.

Demande

PATCH https://graph.microsoft.com/v1.0/applications/581088ba-83c5-4975-b8af-11d2d7a76e98
Content-Type: application/json

{
    "requiredResourceAccess": [
        {
            "resourceAppId": "00000002-0000-0000-c000-000000000000",
            "resourceAccess": [
                {
                    "id": "311a71cc-e848-46a1-bdf8-97ff7156d8e6",
                    "type": "Scope"
                },
                {
                    "id": "3afa6a7d-9b1a-42eb-948e-1650a849e176",
                    "type": "Role"
                }
            ]
        }
    ]
}

Réponse

HTTP/1.1 204 No Content

Étape 3 : Vérifier que les autorisations Azure AD Graph ont été ajoutées à votre application

Vérifiez que votre inscription d’application dispose des autorisations de l’API Graph Azure AD que vous avez ajoutées à l’étape 2 en :

  1. Appel du point de terminaison Microsoft Graph GET /application/{id} et lecture de la propriété requiredResourceAccess comme suit :

    GET https://graph.microsoft.com/v1.0/applications/581088ba-83c5-4975-b8af-11d2d7a76e98?$select=id,requiredResourceAccess
    
  2. Vérification de la page Inscriptions d’applications dans le Centre d’administration Microsoft Entra.

Bien que vous ayez ajouté des autorisations Azure AD Graph, vous n’avez pas accordé ces autorisations à l’application. De nombreuses autorisations nécessitent le consentement de l’administrateur avant de pouvoir être utilisées pour accéder aux données de l’organisation. Connectez-vous au Centre d’administration Microsoft Entra en tant qu’administrateur de rôle privilégié et accordez le consentement administrateur pour les autorisations d’inscription de l’application.

Lorsque vous utilisez Microsoft Graph et tous les kits SDK associés, vous pouvez accorder des autorisations à une inscription d’application sans avoir à utiliser le Centre d’administration Microsoft Entra et en sélectionnant le bouton Accorder le consentement administrateur pour [Société] dans la page Autorisations de l’API. Pour plus d’informations, consultez Accorder ou révoquer des autorisations d’API par programmation.

Utiliser le Centre d’administration Microsoft Entra pour rechercher les API utilisées par votre organisation

  1. Connectez-vous au Centre d'administration Microsoft 365.

  2. DéveloppezApplications>d’identité>, sélectionnez Inscriptions d’applications.

  3. Dans la fenêtre Inscriptions d’applications , sous l’onglet Toutes les applications , sélectionnez l’application à laquelle vous souhaitez ajouter des autorisations Azure AD Graph.

  4. Dans le volet gauche de la fenêtre, sous le groupe de menus Gérer , sélectionnez Autorisations d’API. Dans la fenêtre Autorisations configurées , sélectionnez Ajouter une autorisation.

  5. Dans la fenêtre Demander des autorisations d’API , basculez vers l’onglet API que mon organisation utilise et recherchez Windows Azure Active Directory ou 00000002-0000-0000-c000-000000000000. Sélectionnez dans le jeu de résultats filtré pour afficher la fenêtre Autorisations d’Azure Active Directory Graph .

    L’API Graph Azure AD s’appelle Windows Azure Active Directory et a clientID 00000002-0000-0000-c000-0000000000000000000000.

  6. Sélectionnez l’onglet Autorisations déléguées ou Autorisations d’application pour choisir dans la liste des autorisations déléguées et des autorisations d’application respectivement. Sélectionnez Ajouter des autorisations pour ajouter l’autorisation à l’inscription de votre application.

  7. Après avoir ajouté les autorisations dont vous avez besoin, revenez dans la fenêtre Autorisations configurées , sélectionnez Accorder le consentement administrateur pour accorder les autorisations Azure AD Graph à l’inscription de votre application.

Mettre à jour le manifeste de l’application dans le Centre d’administration Microsoft Entra

  1. Connectez-vous au Centre d'administration Microsoft 365.

  2. Développez le menu >IdentitéApplications> sélectionnez Inscriptions d’applications.

  3. Dans la fenêtre Inscriptions d’applications , sous l’onglet Toutes les applications , sélectionnez l’application à laquelle vous souhaitez ajouter des autorisations Azure AD Graph.

  4. Dans le volet gauche de la fenêtre, sous le groupe de menus Gérer , sélectionnez Manifeste pour ouvrir un éditeur qui vous permet de modifier directement les attributs de l’objet d’inscription d’application.

    Un fichier manifeste d’inscription d’application vous permet de modifier les attributs de votre application.

  5. Modifiez soigneusement la propriété requiredResourceAccess dans le manifeste de l’application pour ajouter les détails suivants :

    Conseil

    A. Vous pouvez modifier le manifeste de l’application dans le Centre d’administration Microsoft Entra ou sélectionner Télécharger pour modifier le manifeste localement, puis utiliser Charger pour le réappliquer à votre application.

    B. Pour en savoir plus sur la configuration de la propriété requiredResourceAccess , consultez type de ressource requiredResourceAccess.

    C. Reportez-vous aux informations de référence sur les autorisations Azure AD Graph pour plus d’informations sur les noms d’autorisation, les ID et les types d’autorisations Azure AD Graph.

    5.1. Si aucune autorisation Azure AD Graph n’est attribuée à l’application, ajoutez la propriété resourceAppId et affectez la valeur 00000002-0000-0000-c000-000000000000 représentant Azure AD Graph.

    5.2. Ajoutez la propriété resourceAccess et configurez les autorisations.

    L’extrait de code JSON suivant montre une propriété requiredResourceAccess avec Azure AD Graph comme ressource, et les objets User.Read et Application.Read.All oauth2PermissionScope (autorisation déléguée) et appRole (autorisation d’application), respectivement.

    "requiredResourceAccess": [
        {
            "resourceAppId": "00000002-0000-0000-c000-000000000000",
            "resourceAccess": [
                {
                    "id": "311a71cc-e848-46a1-bdf8-97ff7156d8e6",
                    "type": "Scope"
                },
                {
                    "id": "3afa6a7d-9b1a-42eb-948e-1650a849e176",
                    "type": "Role"
                }
            ]
        }
    ],
    
  6. Enregistrez vos modifications.

  7. Dans le groupe de menus Gérer , sélectionnez Autorisations d’API et, dans Autorisations configurées pour l’inscription de votre application, sélectionnez Accorder le consentement administrateur pour accorder les autorisations Azure AD Graph à votre inscription d’application.