Inscrire une application

Effectué

Inscrire une application

L’inscription de votre application établit une relation d’approbation entre votre application et la plateforme d’identités Microsoft. L’approbation est unidirectionnelle : votre application approuve la plateforme d’identités Microsoft, et non le contraire.

  1. Connectez-vous au centre d’administration Microsoft Entra en tirant parti d’un compte Administrateur général.

  2. Ouvrez le menu du portail, puis sélectionnez Identité.

  3. Dans le menu Identité, sous Applications, sélectionnez Inscriptions d’applications.

  4. Dans la page Inscriptions d’applications, dans le menu, sélectionnez + Nouvelle inscription.

  5. Dans la boîte de dialogue Inscrire une application, inscrivez une application nommée Demo App en utilisant les valeurs par défaut. Vous n’avez pas besoin d’entrer l’URI de redirection.

    Screenshot of the Register an application screen with the name and default settings highlighted.

  6. Une fois terminé, vous serez redirigé vers l’écran de Demo app.

Ajouter un URI de redirection

Un URI de redirection est l’emplacement où la plateforme d’identités Microsoft redirige le client d’un utilisateur et envoie des jetons de sécurité après authentification. Dans une application web de production, par exemple, l’URI de redirection est souvent un point de terminaison public sur lequel votre application s’exécute. Pendant le développement, il est courant d’ajouter également le point de terminaison dans lequel vous exécutez votre application localement.

Pour ajouter et modifier des URI de redirection pour vos applications inscrites, vous devez configurer leurs paramètres de plateforme.

Configurer des paramètres de plateforme

Les paramètres de chaque type d’application, dont les URI de redirection, sont configurés dans Configurations de plateforme dans le portail Azure. Certaines plateformes, comme le web et les applications monopages, nécessitent de spécifier manuellement un URI de redirection. Pour les autres plateformes, comme les plateformes mobiles et de bureau, vous pouvez sélectionner des URI de redirection générés automatiquement quand vous configurez leurs autres paramètres.

Pour configurer des paramètres d’application en fonction de la plateforme ou de l’appareil ciblé :

  1. Sélectionnez votre application dans les Inscriptions d’applications dans le portail Azure.

  2. Sous Gérer, sélectionnez Authentification.

  3. Sous Configurations de plateformes, sélectionnez Ajouter une plateforme.

  4. Dans Configurer des plateformes, sélectionnez la vignette correspondant à votre type d’application (plateforme) pour configurer ses paramètres.

    Screenshot of the Platform configuration pane in the Microsoft Entra admin center.

    Plateforme Paramètres de configuration
    Web Entrez un URI de redirection pour votre application, qui est l’emplacement où la plateforme d’identités Microsoft redirige le client d’un utilisateur et envoie des jetons de sécurité après authentification. Sélectionnez cette plateforme pour les applications web standard qui s’exécutent sur un serveur.
    Application monopage Entrez un URI de redirection pour votre application, qui est l’emplacement où la plateforme d’identités Microsoft redirige le client d’un utilisateur et envoie des jetons de sécurité après authentification. Sélectionnez cette plateforme si vous générez une application web côté client dans JavaScript ou avec un framework comme Angular, Vue.js, React.js ou Blazor WebAssembly.
    iOS/macOS Entrez l'ID d’ensemble d'applications, qui se trouve dans XCode dans Info.plist ou « Paramètres du build ». Un URI de redirection est généré pour vous lorsque vous spécifiez un ID d’ensemble.
    Android Entrez le nom du package d’application, que vous trouverez dans le fichier AndroidManifest.xml, puis générez et entrez le code de hachage de la signature. Un URI de redirection est généré pour vous lorsque vous spécifiez ces paramètres.
    Applications de bureau et mobiles Sélectionnez l’un des URI de redirection suggérés ou spécifiez un URI de redirection personnalisé. Pour les applications de bureau, nous vous recommandons : https://login.microsoftonline.com/common/oauth2/nativeclientSélectionner cette plateforme pour les applications mobiles qui n’utilisent pas la dernière bibliothèque d’authentification Microsoft (MSAL) ou qui n’utilisent pas de répartiteur. Sélectionnez également cette plateforme pour les applications de bureau.
  5. Sélectionnez Configurer pour effectuer la configuration de la plateforme.

Ajouter les informations d’identification

Les informations d’identification sont utilisées par les applications clientes confidentielles qui accèdent à une API web. Les applications web, les autres API web ou les applications de type service et démon sont des exemples de clients confidentiels. Les informations d’identification permettent à votre application de s’authentifier de façon autonome, sans qu’aucune interaction utilisateur ne soit nécessaire au moment de l’exécution.

Vous pouvez ajouter des certificats et des secrets clients (une chaîne) en tant qu’informations d’identification à votre inscription d’application cliente confidentielle.

Screenshot of Azure portal showing the Certificates and secrets pane in app registration.

Ajouter un certificat

Parfois appelés clé publique, les certificats sont le type d’informations d’identification recommandé, car ils fournissent un niveau d’assurance plus élevé qu’un secret client. Lors de l’utilisation d’un certificat public approuvé, vous pouvez ajouter le certificat à l’aide de la fonctionnalité « Certificats et secrets ». Votre certificat doit être un fichier de type : .cer, .pem, .crt.

Ajouter un secret client

Le secret client, également appelé mot de passe d’application, est une valeur de chaîne que votre application peut utiliser à la place d’un certificat pour s’identifier. Il est le plus facile des deux types d’informations d’identification à utiliser. Il est souvent utilisé pendant le développement, mais il est considéré comme moins sécurisé qu’un certificat. Vous devez utiliser des certificats dans vos applications qui s’exécutent en production.

  1. Sélectionnez votre application dans les Inscriptions d’applications dans le portail Azure.
  2. Sélectionnez Certificats et secrets, puis Nouveau secret client.
  3. Ajoutez une description pour votre clé secrète client.
  4. Sélectionnez une durée.
  5. Sélectionnez Ajouter.
  6. Enregistrez la valeur du secret pour une utilisation dans le code de votre application cliente. Une fois que vous avez quitté cette page, elle ne s’affiche plus.

Inscrire l’API web

Pour fournir un accès délimité aux ressources de votre API web, vous devez d’abord inscrire l’API auprès de la plateforme d’identités Microsoft.

  1. Effectuez les étapes ci-dessus.
  2. Ignorez les sections Ajouter un URI de redirection et Configurer les paramètres de plateforme. Vous n’avez pas besoin de configurer un URI de redirection pour une API web, car aucun utilisateur n’est connecté de manière interactive.
  3. Ignorez la section Ajouter des informations d’identification pour le moment. Votre API a besoin de ses propres informations d’identification uniquement si elle accède à une API en aval. Ce scénario n’est pas abordé dans cet article.

Une fois votre API web inscrite, vous êtes prêt à ajouter les étendues que le code de votre API peut utiliser pour fournir une autorisation précise aux consommateurs de cette dernière.

Ajouter une étendue

Le code d’une application cliente demande l’autorisation d’effectuer des opérations définies par votre API web en transmettant un jeton d’accès avec ses demandes à la ressource protégée (l’API web). Votre API web effectue ensuite l’opération demandée uniquement si le jeton d’accès qu’elle reçoit contient les étendues (également appelées « autorisations d’application ») requises pour l’opération.

Tout d’abord, effectuez les étapes suivantes pour créer un exemple d’étendue nommé « Employees.Read.All » :

  1. Connectez-vous au portail Azure.

  2. Si vous avez accès à plusieurs locataires, utilisez le filtre Répertoire + abonnement dans le menu du haut pour sélectionner le locataire contenant l’inscription de votre application cliente.

  3. Sélectionnez Microsoft Entra ID, puis Inscriptions d'applications, puis sélectionnez l'inscription d'application de votre API.

  4. Sélectionnez Exposer une API, puis Ajouter une étendue.

    Screenshot of an app registration's Expose an API pane in the Microsoft Entra admin center.

  5. Vous êtes invité à définir un URI d’ID d’application si vous n’en avez pas encore configuré un. L’URI d’ID d’application, qui doit être globalement unique, fait office de préfixe pour les étendues que vous référencerez dans le code de votre API. Vous pouvez utiliser la valeur par défaut fournie, qui se présente sous la forme api://, ou spécifier un URI plus lisible comme https://contoso.com/api.

  6. Spécifiez ensuite les attributs de l’étendue dans le volet Ajouter une étendue. Pour cette procédure pas à pas, vous pouvez utiliser les exemples de valeurs ou spécifier les vôtres.

    Champ Description Exemple
    Nom de l’étendue Nom de votre étendue. Une convention d’affectation de noms d’étendue courante est resource.operation.constraint. Employees.Read.All
    Qui peut donner son consentement L’administrateur détermine si cette étendue peut être consentie par des utilisateurs ou si le consentement d’un administrateur est nécessaire. Sélectionnez administrateurs uniquement pour des autorisations à privilèges élevés. Administrateurs et utilisateurs
    Nom d’affichage du consentement administrateur Courte description de l’objectif de l’étendue que seuls les administrateurs verront. Accès en lecture seule aux enregistrements des employés
    Description du consentement de l'administrateur Description plus détaillée de l’autorisation accordée par l’étendue que seuls les administrateurs verront. Autorisez l’application à avoir un accès en lecture seule à toutes les données de l’employé.
    Nom d’affichage du consentement de l’utilisateur Courte description de l’objectif de l’étendue. Affichée aux utilisateurs uniquement si vous définissez Qui peut donner son consentement sur Administrateurs et utilisateurs. Accès en lecture seule à vos enregistrements sur les employés
    Description du consentement de l’utilisateur Description plus détaillée de l’autorisation accordée par l’étendue. Affichée aux utilisateurs uniquement si vous définissez Qui peut donner son consentement sur Administrateurs et utilisateurs. Autorisez l’application à avoir un accès en lecture seule à vos données sur l’employé.
  7. Définissez l’État sur Activé, puis sélectionnez Ajouter une étendue.

  8. (Facultatif) Pour supprimer les demandes de consentement des utilisateurs de votre application pour les étendues que vous avez définies, vous pouvez préautoriser l’application cliente à accéder à votre API web. Préautorisez uniquement les applications clientes que vous approuvez, car vos utilisateurs n’auront pas la possibilité de refuser le consentement.

    1. Sous Applications clientes autorisées, sélectionnez Ajouter une application cliente.
    2. Entrez l’ID d’application (client) de l’application cliente que vous souhaitez préautoriser, par exemple celui d’une application web que vous avez inscrite précédemment.
    3. Sous Étendues autorisées, sélectionnez les étendues pour lesquelles vous souhaitez supprimer les invites de consentement, puis sélectionnez Ajouter une application.
    4. Si vous avez effectué cette étape facultative, l’application cliente est désormais une application cliente préautorisée, et les utilisateurs ne sont pas invités à donner leur consentement quand ils s’y connectent.

Ajoutez ensuite un autre exemple d’étendue nommé « Employees.Write.All » auquel seuls les administrateurs peuvent donner leur consentement. Les étendues qui nécessitent le consentement de l’administrateur sont généralement utilisées pour fournir l’accès à des opérations avec des privilèges plus élevés, et souvent par des applications clientes qui s’exécutent en tant que services back-end ou en tant que démons qui ne connectent pas un utilisateur de manière interactive.

Pour ajouter l’exemple d’étendue « Employees.Write.All », effectuez les étapes décrites ci-dessus, puis spécifiez ces valeurs dans le volet Ajouter une étendue :

Champ Exemple de valeur
Nom de l’étendue Employees.Write.All
Qui peut donner son consentement Administrateurs uniquement
Nom d’affichage du consentement administrateur Accès en écriture aux enregistrements des employés
Description du consentement de l’administrateur Autorisez l’application à avoir un accès en écriture à toutes les données de l’employé.
Nom d’affichage du consentement de l’utilisateur Aucune (laisser vide)
Description du consentement de l’utilisateur Aucune (laisser vide)

Vérifier les étendues exposées

Si vous avez correctement ajouté les deux exemples d’étendues décrits dans les sections précédentes, ils apparaissent dans le volet Exposer une API de l’inscription d’application de votre API web, semblable à cette image :

Screenshot of the Expose an API pane showing two exposed scopes for assignment in the app registration.

Comme indiqué dans l’image, la chaîne complète d’une étendue est la concaténation de l’URI d’ID d’application de votre API web et du Nom de l’étendue.

Par exemple, si l’URI d’ID d’application de votre API web est https://contoso.com/api et si le nom de l’étendue est Employees.Read.All, l’étendue complète est :

https://contoso.com/api/Employees.Read.All

Utilisation des étendues exposées

Ensuite, vous allez configurer l’inscription d’une application cliente avec un accès à votre API web et les étendues que vous avez définies en suivant les étapes ci-dessus.

Une fois qu’une inscription d’application cliente est autorisée à accéder à votre API web, la plateforme d’identités Microsoft peut émettre un jeton d’accès OAuth 2.0 pour le client. Quand le client appelle l’API web, il présente un jeton d’accès dont la revendication d’étendue (scp) est définie sur les autorisations que vous avez spécifiées dans l’inscription d’application du client.

Vous pouvez exposer des étendues supplémentaires ultérieurement si nécessaire. Considérez que votre API web peut exposer plusieurs étendues associées à plusieurs opérations. Votre ressource peut contrôler l’accès à l’API web lors de l’exécution, en évaluant la ou les revendications de l’étendue (scp) dans le jeton d’accès OAuth 2.0 qu’elle reçoit.

Ce qui se passe en coulisses

  • L’inscription d’application est créée dans le locataire d’accueil
  • L'application est instanciée avec un principal de sécurité dans Microsoft Entra ID
  • Le principal de sécurité reçoit le consentement du premier utilisateur ou de l’administrateur, en fonction de la configuration de l’API exposée
  • Le principal de sécurité reçoit le jeton de sécurité quand l’utilisateur accède à l’application et utilise l’API