Créer une application et un principal de service Microsoft Entra pouvant accéder aux ressources

Cet article explique comment créer une application et un principal de service Microsoft Entra pouvant être utilisés avec le contrôle d’accès en fonction du rôle. Quand vous inscrivez une nouvelle application dans Microsoft Entra ID, un principal de service est automatiquement créé pour l’inscription de l’application. Le principal de service est l’identité de l’application dans le locataire Microsoft Entra. L’accès aux ressources est limité par les rôles attribués au principal du service, ce qui vous permet de contrôler quelles ressources sont accessibles et à quel niveau. Pour des raisons de sécurité, il est toujours recommandé d’utiliser les principaux de service avec des outils automatisés, plutôt que de leur permettre de se connecter avec une identité d’utilisateur.

Dans le cadre de cet article, vous allez créer une application monolocataire dans le portail Azure. Cet exemple s’applique aux applications métier utilisées au sein d’une même organisation. Vous pouvez également utiliser Azure PowerShell ou Azure CLI pour créer un principal de service.

Important

Au lieu de créer un principal du service, envisagez d’utiliser des identités managées pour les ressources Azure en ce qui concerne l’identité de votre application. Si votre code s’exécute sur un service qui prend en charge les identités managées et accède à des ressources qui prennent en charge l’authentification Microsoft Entra, les identités managées correspondent mieux à vos besoins. Pour en savoir plus sur les identités gérées pour les ressources Azure, y compris les services qui les prennent actuellement en charge, consultez la rubrique Que sont les identités gérées pour les ressources Azure ?.

Pour plus d’informations sur la relation existant entre l’inscription d’applications, les objets d’application et les principaux de service, consultez Objets application et principal de service dans Microsoft Entra ID.

Prérequis

Pour inscrire une application dans votre locataire Microsoft Entra, vous avez besoin des éléments suivants :

Autorisations requises pour l’inscription d’une application

Vous devez disposer d’autorisations suffisantes pour inscrire une application auprès de votre locataire Microsoft Entra et attribuer un rôle à l’application dans votre abonnement Azure. Pour effectuer ces tâches, vous avez besoin de l’autorisation Application.ReadWrite.All.

Inscrire une application auprès de Microsoft Entra ID et créer un principal de service

Conseil

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

  1. Connectez-vous au Centre d’administration de Microsoft Entra au minimum en tant qu’Administrateur d’application cloud.

  2. Accédez à Identité>Applications>Inscriptions d’applications, puis sélectionnez Nouvelle inscription.

  3. Nommez l’application, par exemple « example-app ».

  4. Sélectionnez un type de compte pris en charge, qui détermine qui peut utiliser l’application.

  5. Sous URI de redirection, sélectionnez Web pour le type d’application que vous souhaitez créer. Saisissez l’URI vers lequel le jeton d’accès est envoyé.

  6. Sélectionnez Inscrire.

    Type a name for your application.

Vous avez créé votre application Microsoft Entra et votre principal de service.

Attribuer un rôle à l’application

Pour accéder aux ressources de votre abonnement, vous devez attribuer un rôle à l’application. Déterminez quel rôle fournit les autorisations appropriées pour l’application. Pour en savoir plus sur les rôles disponibles, consultez Rôles intégrés Azure.

Vous pouvez définir l’étendue au niveau de l’abonnement, du groupe de ressources ou de la ressource. Les autorisations sont héritées des niveaux inférieurs de l’étendue

  1. Connectez-vous au portail Azure.

  2. Sélectionnez le niveau d’étendue auquel vous souhaitez attribuer l’application. Par exemple, pour attribuer un rôle sur l’étendue de l’abonnement, recherchez et sélectionnez Abonnements. Si vous ne voyez pas l’abonnement recherché, sélectionnez le filtre des abonnements généraux. Veillez à ce que l’abonnement souhaité soit sélectionné pour le locataire.

  3. Sélectionnez Contrôle d’accès (IAM) .

  4. Sélectionnez Ajouter, puis Ajouter une attribution de rôle.

  5. Sous l’onglet Rôle, sélectionnez le rôle que vous souhaitez attribuer à l’application dans la liste. Par exemple, pour autoriser l’application à exécuter des actions telles que redémarrer, démarrer et arrêter des instances, sélectionnez le rôle Contributeur.

  6. Sélectionnez Suivant.

  7. Sous l’onglet Membres, sélectionnez Attribuer l’accès à, puis sélectionnez Utilisateur, groupe ou principal du service.

  8. Sélectionnez Sélectionner des membres. Par défaut, les applications Microsoft Entra ne figurent pas dans les options disponibles. Pour trouver votre application, recherchez-la par son nom.

  9. Sélectionnez le bouton Sélectionner, puis sélectionnez Vérifier + attribuer.

    Screenshot showing role assignment.

Votre principal de service est créé. Vous pouvez commencer à l’utiliser pour exécuter vos scripts ou applications. Pour gérer votre principal de service (autorisations, autorisations accordées par l’utilisateur, voir quels utilisateurs ont donné leur consentement, examiner les autorisations, voir les informations de connexion, etc.), accédez à Applications d’entreprise.

La section suivante montre comment obtenir les valeurs nécessaires pour vous connecter par programmation.

Se connecter à l’application

Quand vous vous connectez par programmation, transmettez l’ID de locataire et l’ID d’application dans votre demande d’authentification. Vous avez également besoin d’un certificat ou d’une clé d’authentification. Pour récupérer l’ID d’annuaire (locataire) et l’ID d’application :

  1. Accédez à Identité>Applications>Inscriptions d’applications, puis sélectionnez votre application.
  2. Dans la page de vue d’ensemble de l’application, copiez la valeur ID d’annuaire (locataire) et stockez-la dans votre code d’application.
  3. Copiez la valeur ID d’application (client) et stockez-la dans votre code d’application.

Configurer l’authentification

Il existe deux types d’authentification disponibles pour les principaux de service : l’authentification par mot de passe (secret de l’application) et l’authentification par certificat. Nous vous recommandons d’utiliser un certificat approuvé émis par une autorité de certification, mais vous pouvez également créer un secret d’application ou un certificat auto-signé à des fins de test.

Pour charger le fichier de certificat :

  1. Accédez à Identité>Applications>Inscriptions d’applications, puis sélectionnez votre application.
  2. Cliquez sur Certificats et secrets.
  3. Sélectionnez Certificats, puis Charger le certificat et choisissez le fichier de certificat à charger.
  4. Sélectionnez Ajouter. Une fois le certificat chargé, les valeurs d'empreinte numérique, de date de début et d’expiration s'affichent.

Une fois le certificat inscrit avec votre application dans le portail d’inscription d’applications, activez le code de l’application cliente confidentielle pour utiliser le certificat.

Option 2 (Test uniquement) : Créer et charger un certificat auto-signé

Vous pouvez également utiliser un certificat auto-signé à des fins de test uniquement. Pour créer un certificat auto-signé dans le magasin de certificats utilisateur sur votre ordinateur, ouvrez Windows PowerShell et exécutez New-SelfSignedCertificate avec les paramètres suivants :

$cert=New-SelfSignedCertificate -Subject "CN=DaemonConsoleCert" -CertStoreLocation "Cert:\CurrentUser\My"  -KeyExportPolicy Exportable -KeySpec Signature

Exportez ce certificat dans un fichier à l’aide du composant logiciel enfichable MMC Gérer un certificat utilisateur accessible depuis le Panneau de configuration Windows.

  1. Sélectionnez Exécuter dans le menu Démarrer, puis entrez certmgr.msc. L’outil Gestionnaire de certificats pour l’utilisateur actuel s’affiche.
  2. Pour afficher vos certificats, sous Certificats - Utilisateur actuel dans le volet gauche, développez le répertoire Personnel.
  3. Cliquez avec le bouton droit sur le certificat que vous avez créé, puis sélectionnez Toutes les tâches->Exporter.
  4. Suivez les instructions de l’Assistant Exportation de certificat.

Pour charger le certificat :

  1. Accédez à Identité>Applications>Inscriptions d’applications, puis sélectionnez votre application.
  2. Cliquez sur Certificats et secrets.
  3. Sélectionnez Certificats, puis Chargez un certificat, puis choisissez le certificat (un certificat existant ou le certificat auto-signé que vous avez exporté).
  4. Sélectionnez Ajouter.

Une fois le certificat inscrit avec votre application dans le portail d’inscription d’applications, activez le code de l’application cliente confidentielle pour utiliser le certificat.

Option 3. créer une clé secrète client

Si vous choisissez de ne pas utiliser un certificat, vous pouvez créer une clé secrète client.

  1. Accédez à Identité>Applications>Inscriptions d’applications, puis sélectionnez votre application.
  2. Cliquez sur Certificats et secrets.
  3. Sélectionnez Secrets client, puis Nouveau secret client.
  4. Fournissez une description et la durée du secret.
  5. Sélectionnez Ajouter.

Quand vous enregistrez le secret client, sa valeur s’affiche. Cette valeur ne s’affiche qu’une seule fois, donc copiez-la et stockez-la là où votre application peut la récupérer, généralement là où elle conserve des valeurs telles que clientId ou authoruty dans le code source. Vous fournirez la valeur du secret avec l’ID client de l’application pour vous connecter en tant qu’application.

Screenshot showing the client secret.

Configurer des stratégies d’accès sur les ressources

Vous devrez peut-être configurer des autorisations supplémentaires sur les ressources auxquelles votre application doit accéder. Par exemple, vous devez également mettre à jour les stratégies d’accès d’un coffre de clés pour permettre à votre application d’accéder aux clés, secrets ou certificats.

Pour configurer des stratégies d’accès :

  1. Connectez-vous au portail Azure.

  2. Sélectionnez votre coffre de clés, puis sélectionnez Stratégies d’accès.

  3. Sélectionnez Ajouter une stratégie d’accès, puis sélectionnez les autorisations de clé, de secret et de certificat que vous souhaitez accorder à votre application. Sélectionnez le principal de service que vous avez créé précédemment.

  4. Sélectionnez Ajouter pour ajouter la stratégie d’accès.

  5. Enregistrez. .

    Add access policy

Étapes suivantes