Inscrire une application

Effectué

Exercice : Inscrire une application

Pour permettre à votre application de se connecter avec l’ID externe Microsoft Entra, vous devez inscrire l’application dans l’annuaire.

  1. Pour inscrire votre propre application, connectez-vous au Centre d’administration Microsoft Entra et accédez à Applications>Inscriptions d’applications. Ensuite, sélectionnez + Nouvelle inscription.

    Capture d’écran du panneau Inscriptions d’applications avec un bouton intitulé Nouvelle inscription mise en évidence.

  2. Dans la page Inscrire une application qui s’affiche, entrez un Nom d’application explicite qui s’affiche aux utilisateurs de l’application, par exemple Woodgrove Groceries. Sous Types de comptes pris en charge, sélectionnez Comptes dans cet annuaire organisationnel uniquement. Pour Plateforme, sélectionnez l’option Web et entrez l’URI de redirection de votre application. L’URI de redirection est le point de terminaison vers lequel les utilisateurs sont redirigés par l’ID externe Microsoft Entra une fois leur authentification avec l’ID externe Microsoft Entra effectuée.

    Capture d’écran du panneau Inscrire une application avec Comptes dans cet annuaire organisationnel uniquement mis en évidence pour Qui peut utiliser cette application ou accéder à cette API ? et l’URI de redirection est mis en évidence et défini sur Web, ainsi que l’URL vers laquelle rediriger l’utilisateur une fois qu’il a réussi son authentification.

  3. Le volet Vue d’ensemble de l’application s’affiche après une inscription réussie. Enregistrez l’ID d’application (client) à utiliser dans le code source de votre application.

    Capture d’écran montrant Inscriptions d’applications avec Vue d’ensemble dans le volet de navigation gauche mis en évidence. L’ID d’application (client) est également mis en évidence sous Informations de base.

  4. Pour ajouter d’autres URI de redirection ou une URL de déconnexion de canal frontal, sous Gérer, sélectionnez Authentification. L’URL de déconnexion de canal frontal est l’emplacement où nous envoyons une requête pour que l’application efface les données de session de l’utilisateur. Ceci est obligatoire pour que la déconnexion unique fonctionne correctement.

    Capture d’écran du panneau Authentification sous Inscriptions d’applications avec l’URI mis en évidence sous URI de redirection web, ainsi que l’URL de déconnexion de canal frontal.

  5. Pour qu’une application web (client confidentiel) acquiert un jeton d’accès, elle a besoin d’informations d’identification pour prouver son identité à Microsoft Entra ID. Vous pouvez ajouter des certificats, des secrets clients (une chaîne) ou des informations d’identification de l’identité fédérée en tant qu’informations d’identification à votre inscription d’application cliente confidentielle. Pour le site web de l’épicerie, nous utiliserons un certificat. Pour ajouter un certificat, sélectionnez Certificats et secrets>Certificats>Charger le certificat.

    Capture d’écran du panneau Certificats et secrets sous Inscriptions d’applications où il y a zéro certificat et mise en évidence d’un bouton intitulé Charger le certificat.

  6. Sélectionnez les fichiers à charger. Il doit s’agir d’un fichier de type .cer, .pem ou .crt. Ensuite, cliquez sur Ajouter.

    Capture d’écran du volet Charger un certificat ouvert à droite avec l’icône de chargement mise en évidence pour charger le certificat.

  7. Dans les étapes suivantes, vous allez ajouter l’autorisation requise pour l’application web. Sous Gérer, sélectionnez Autorisations d’API, puis Ajouter une autorisation.

    Capture d’écran des autorisations d’API sous Inscriptions d’applications avec un bouton intitulé Ajouter une autorisation mis en évidence.

  8. Dans Demander des autorisations d’API, sélectionnez l’onglet API Microsoft et Microsoft Graph.

    Capture d’écran du volet Demander des autorisations d’API ouvert à droite avec un groupe de choix intitulé Microsoft Graph mis en évidence.

  9. Sélectionnez l’option Autorisations déléguées. Ensuite, sous la section Sélectionner des autorisations, recherchez et sélectionnez les autorisations openid et offline_access. Pour finir, sélectionnez Ajouter des autorisations.

    Capture d’écran du volet Demander des autorisations d’API ouvert à droite avec un groupe de choix intitulé Autorisations déléguées mis en évidence et autorisations offline_access et openid cochées en dessous.

  10. À ce stade, vous avez attribué les autorisations correctement. Toutefois, le locataire étant un locataire externe, les utilisateurs consommateurs eux-mêmes ne peuvent pas consentir à ces autorisations. En tant qu’administrateur, vous devez consentir à ces autorisations au nom de tous les utilisateurs du locataire : Sélectionnez Accorder un consentement d’administrateur pour <your tenant name> et sélectionnez Oui.

    Capture d’écran d’un bouton intitulé Accorder un consentement d’administrateur pour Woodgrove Groceries mis en évidence dans le panneau Autorisations d’API.

    Bravo ! Votre application est maintenant prête à être utilisée.

1. Inscrire une application

Pour inscrire une application web, utilisez la requête Microsoft Graph ci-dessous et remplacez les valeurs suivantes.

  • Valeur de displayName avec le nom affiché de votre application. Par exemple, Woodgrove Groceries.

  • Valeurs de redirectUris avec l’URI de redirection de votre application. Par exemple : https://woodgrovedemo.com/signin-oidc. Vous pouvez également utiliser https://www.jwt.ms/.

    POST https://graph.microsoft.com/v1.0/applications
    {
        "displayName": "Woodgrove Groceries",
        "description": "Woodgrove Groceries live demo application",
        "signInAudience": "AzureADMyOrg",
        "api": {
            "acceptMappedClaims": true,
            "requestedAccessTokenVersion": 2
        },
        "requiredResourceAccess": [
            {
                "resourceAppId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
                "resourceAccess": [
                    {
                        "id": "b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2",
                        "type": "Scope"
                    },
                    {
                        "id": "c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3",
                        "type": "Scope"
                    }
                ]
            }
        ],
        "web": {
            "redirectUris": [
                "https://woodgrovedemo.com/signin-oidc"
            ],
            "implicitGrantSettings": {
                "enableAccessTokenIssuance": false,
                "enableIdTokenIssuance": false
            }
        }
    }
    
1.1 Copier l’ID de l’application

À partir de la réponse, copiez la valeur de l’appId. Par exemple :

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications/$entity",
    "id": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
    "appId": "00001111-aaaa-2222-bbbb-3333cccc4444",
    "displayName": "Woodgrove Groceries",
    "description": "Woodgrove Groceries live demo application",
    ...
}      

2. Créer un principal de service pour votre application

Après avoir inscrit votre application, créez un principal de service. L’appel Graph suivant crée un principal de service. Remplacez l’{appId} par l’appId d’application de l’appel précédent (et non l’ID d’objet).

POST https://graph.microsoft.com/v1.0/servicePrincipals
{
    "appId": "{appId}"
}
2.1 Copier l’ID du principal de service

À partir de la réponse, copiez la valeur de l’ID. Par exemple :

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#servicePrincipals/$entity",
    "id": "bbbbbbbb-1111-2222-3333-cccccccccccc",
    "displayName": "Woodgrove Groceries",
    "description": "Woodgrove Groceries live demo application",
    ...
}

Le locataire étant un locataire externe, les utilisateurs consommateurs eux-mêmes ne peuvent pas consentir à ces autorisations. En tant qu’administrateur, vous devez consentir à ces autorisations au nom de tous les utilisateurs du locataire.

3.1 Obtenir l’ID du principal de service de Microsoft Graph

Exécutez la requête GET suivante et copiez l’ID à partir de la réponse :

GET https://graph.microsoft.com/v1.0/servicePrincipals(appId='22223333-cccc-4444-dddd-5555eeee6666')
{
    "id": "cccccccc-2222-3333-4444-dddddddddddd",
    "appDisplayName": "Microsoft Graph",
    "appId": "22223333-cccc-4444-dddd-5555eeee6666"
}
3.2 Accorder les autorisations requises

Remplacez le {service-principal-id} par l’ID du principal de service que vous avez copié à l’étape précédente. Remplacez le {graph-service-principal-id} par l’ID du principal de service que vous avez copié à la dernière étape.

POST https://graph.microsoft.com/v1.0/oauth2PermissionGrants
{
    "clientId": "{service-principal-id}",
    "consentType": "AllPrincipals",
    "resourceId": "{graph-service-principal-id}",
    "scope": "openid offline_access"
}

4. (Facultatif) Ajouter un secret client

Les informations d’identification permettent aux applications confidentielles de s’identifier auprès du service d’authentification lors de la réception de jetons. Pour un niveau plus élevé de sécurité, nous recommandons d’utiliser un certificat (au lieu d’un secret client) comme informations d’identification. Pour obtenir le secret client, exécutez la requête suivante. Remplacez le {graph-service-principal-id} par l’appId de la première étape.

POST https://graph.microsoft.com/v1.0/applications(appId='appId')/addPassword
{
    "passwordCredential": {
        "displayName": "My app client secret"
    }
}

À partir de la réponse, copiez la valeur du secretText :

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.passwordCredential",
    "displayName": "My app client secret",
    "endDateTime": "2026-05-23T15:16:42",
    "hint": "<Your hint will show up here>",
    "keyId": "aaaaaaaa-0b0b-1c1c-2d2d-333333333333",
    "secretText": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0u",
    "startDateTime": "2024-05-23T15:16:42"
}