entra-app-registration

Guide pour l'inscription d'applications Microsoft Entra ID, l'authentification OAuth 2.0 et l'intégration MSAL. À UTILISER POUR : créer une inscription d'application, inscrire une app Azure AD, configurer OAuth, mettre en place l'authentification, ajouter des permissions API, générer un service principal, exemple MSAL, auth d'application console, configuration Entra ID, authentification Azure AD. NE PAS UTILISER POUR : Azure RBAC ou les attributions de rôles (utiliser azure-rbac), les secrets Key Vault (utiliser azure-keyvault-expiration-audit), les conseils généraux de sécurité des ressources Azure.

npx skills add https://github.com/microsoft/skills --skill entra-app-registration

Présentation

Microsoft Entra ID (anciennement Azure Active Directory) est le service Microsoft de gestion des identités et des accès basé sur le cloud. Les inscriptions d'applications permettent aux applications d'authentifier les utilisateurs et d'accéder aux ressources Azure de manière sécurisée.

Concepts clés

Concept Description
App Registration Configuration qui permet à une application d'utiliser la plateforme d'identité Microsoft
Application (Client) ID Identificateur unique de votre application
Tenant ID Identificateur unique de votre locataire/répertoire Azure AD
Client Secret Mot de passe de l'application (clients confidentiels uniquement)
Redirect URI URL où les réponses d'authentification sont envoyées
API Permissions Étendues d'accès que votre application demande
Service Principal Identité créée dans votre locataire quand vous inscrivez une application

Types d'applications

Type Cas d'usage
Web Application Applications côté serveur, APIs
Single Page App (SPA) Applications JavaScript/React/Angular
Mobile/Native App Applications de bureau, mobile
Daemon/Service Services en arrière-plan, APIs

Flux de travail principal

Étape 1 : Inscrire l'application

Créez une inscription d'application dans le portail Azure ou en utilisant Azure CLI.

Méthode via le portail :

  1. Accédez à Azure Portal → Microsoft Entra ID → App registrations
  2. Cliquez sur « New registration »
  3. Fournissez le nom, les types de compte pris en charge et l'URI de redirection
  4. Cliquez sur « Register »

Méthode CLI : Voir references/cli-commands.md Méthode IaC : Voir references/BICEP-EXAMPLE.bicep

Il est fortement recommandé d'utiliser l'IaC pour gérer l'inscription d'applications Entra si vous utilisez déjà l'IaC dans votre projet, avez besoin d'une solution évolutive pour gérer de nombreuses inscriptions d'applications ou avez besoin d'un historique d'audit détaillé des modifications de configuration.

Étape 2 : Configurer l'authentification

Configurez les paramètres d'authentification en fonction du type de votre application.

  • Applications web : Ajoutez des URI de redirection, activez les tokens ID si nécessaire
  • SPAs : Ajoutez des URI de redirection, activez le flux d'octroi implicite si nécessaire
  • Mobile/Bureau : Utilisez http://localhost ou un schéma d'URI personnalisé
  • Services : Aucun URI de redirection nécessaire pour le flux d'authentification par credentials client

Étape 3 : Configurer les permissions d'API

Accordez à votre application la permission d'accéder aux APIs Microsoft ou à vos propres APIs.

Permissions Microsoft Graph courantes :

  • User.Read - Lire le profil utilisateur
  • User.ReadWrite.All - Lire et écrire tous les utilisateurs
  • Directory.Read.All - Lire les données du répertoire
  • Mail.Send - Envoyer un mail en tant qu'utilisateur

Détails : Voir references/api-permissions.md

Étape 4 : Créer les credentials client (si nécessaire)

Pour les applications clientes confidentielles (applications web, services), créez un client secret, un certificat ou une credential d'identité fédérée.

Client Secret :

  • Accédez à « Certificates & secrets »
  • Créez un nouveau client secret
  • Copiez la valeur immédiatement (affichée une seule fois)
  • Stockez en toute sécurité (Key Vault recommandé)

Certificat : Pour les environnements de production, utilisez des certificats au lieu de secrets pour une sécurité renforcée. Téléchargez le certificat via la section « Certificates & secrets ».

Credential d'identité fédérée : Pour l'authentification dynamique du client confidentiel à la plateforme Entra.

Étape 5 : Implémenter le flux OAuth

Intégrez le flux OAuth dans votre code d'application.

Voir :

Modèles courants

Modèle 1 : Première inscription d'application

Guidez l'utilisateur à travers sa première étape d'inscription d'application pas à pas.

Informations requises :

  • Nom de l'application
  • Type d'application (web, SPA, mobile, service)
  • URI de redirection (le cas échéant)
  • Permissions requises

Script : Voir references/first-app-registration.md

Modèle 2 : Application console avec authentification utilisateur

Créez une application console .NET/Python/Node.js qui authentifie les utilisateurs.

Informations requises :

  • Langage de programmation (C#, Python, JavaScript, etc.)
  • Bibliothèque d'authentification (MSAL recommandée)
  • Permissions requises

Exemple : Voir references/console-app-example.md

Modèle 3 : Authentification service à service

Configurez l'authentification daemon/service sans interaction utilisateur.

Informations requises :

  • Nom du service/application
  • API/ressource cible
  • S'il faut utiliser un secret ou un certificat

Implémentation : Utilisez le flux Client Credentials (voir references/oauth-flows.md#client-credentials-flow)

Outils MCP et CLI

Commandes Azure CLI

Commande Objectif
az ad app create Créer une nouvelle inscription d'application
az ad app list Lister les inscriptions d'applications
az ad app show Afficher les détails de l'application
az ad app permission add Ajouter une permission d'API
az ad app credential reset Générer un nouveau client secret
az ad sp create Créer un service principal

Référence complète : Voir references/cli-commands.md

Bibliothèque d'authentification Microsoft (MSAL)

MSAL est la bibliothèque recommandée pour intégrer la plateforme d'identité Microsoft.

Langues prises en charge :

  • .NET/C# - Microsoft.Identity.Client
  • JavaScript/TypeScript - @azure/msal-browser, @azure/msal-node
  • Python - msal

Exemples : Voir references/console-app-example.md

Bonnes pratiques de sécurité

Pratique Recommandation
Ne jamais coder en dur les secrets Utilisez les variables d'environnement, Azure Key Vault ou l'identité managée
Faire tourner les secrets régulièrement Définissez l'expiration, automatisez la rotation
Utiliser les certificats plutôt que les secrets Plus sûr pour la production
Permissions avec le moins de privilèges Demandez uniquement les permissions d'API requises
Activer l'authentification multifacteur Exiger l'authentification multifacteur pour les utilisateurs
Utiliser l'identité managée Pour les applications hébergées sur Azure, évitez complètement les secrets
Valider les tokens Validez toujours l'émetteur, l'audience, l'expiration
Utiliser HTTPS uniquement Tous les URI de redirection doivent utiliser HTTPS (sauf localhost)
Surveiller les authentifications Utilisez les journaux de connexion Entra ID pour détecter les anomalies

Références rapides SDK

Références

Ressources externes

Skills similaires