Modifier

Configuration et sécurité centralisées des applications

Microsoft Entra ID
Azure App Configuration
Azure Key Vault

Idées de solution

Cet article présente une idée de solution. Si vous souhaitez nous voir développer le contenu avec d’autres informations, telles que des cas d’usage potentiels, d’autres services, des considérations d’implémentation ou un guide des prix, faites-le-nous savoir avec les Commentaires de GitHub.

Cet article décrit une solution pour créer une application robuste et évolutive dans un environnement distribué. La solution utilise Azure App Configuration et Azure Key Vault pour gérer et stocker les paramètres de configuration des applications, les indicateurs de fonctionnalités et les paramètres d’accès sécurisé à un même endroit.

Architecture

Les diagrammes suivants montrent comment App Configuration et Key Vault peuvent fonctionner ensemble pour gérer et sécuriser les applications en développement et les environnements Azure.

Environnement de développement

Dans l’environnement de développement, l’application utilise une identité via Visual Studio ou la version 2.0 d’Azure CLI pour se connecter et envoyer une demande d’authentification à Microsoft Entra ID.

Diagramme d’architecture montrant comment une application se connecte et s’authentifie dans un environnement de développement.

Téléchargez un fichier Visio de cette architecture.

Environnement de mise en lots ou de production Azure

Les environnements de mise en lots et de production Azure utilisent une identité managée pour la connexion et l’authentification.

Diagramme d’architecture montrant comment une application se connecte et s’authentifie dans un environnement de mise en lots ou de production.

Télécharger un fichier Visio de cette architecture.

Dataflow

  1. L’application envoie une demande d’authentification pendant le débogage dans Visual Studio ou s’authentifie via le MSI dans Azure.
  2. Après une authentification réussie, Microsoft Entra ID renvoie un jeton d’accès.
  3. Le kit de développement logiciel (SDK) d’App Configuration envoie une requête avec le jeton d’accès pour lire la valeur secretURI Key Vault d’App Configuration de l’application pour le coffre de clés de l’application.
  4. Après l’autorisation réussie, App Configuration envoie la valeur de configuration.
  5. En utilisant l’identité de connexion, l’application envoie une requête à Key Vault pour récupérer le secret de l’application pour le secretURI que App Configuration a envoyé.
  6. Après l’autorisation réussie, Key Vault retourne la valeur du secret.

Composants

  • Microsoft Entra ID est une plateforme universelle pour la gestion et la sécurisation des identités.
  • App Configuration propose un moyen de stocker les configurations de toutes vos applications Azure dans un emplacement universel et hébergé.
  • Les identités gérées fournissent une identité que les applications peuvent utiliser lors de la connexion à des ressources prenant en charge l’authentification Microsoft Entra.
  • Key Vault protège les clés de chiffrement et autres secrets utilisés par les applications et services cloud.

Détails du scénario

Souvent, les applications cloud s’exécutent sur plusieurs machines virtuelles ou conteneurs situés dans plusieurs régions et elles utilisent plusieurs services externes. La création d’une application robuste et scalable dans un environnement distribué représente un défi considérable.

En utilisant App Configuration, vous pouvez gérer et stocker tous les paramètres de configuration et les indicateurs de fonctionnalités de votre application, ainsi que les paramètres d’accès sécurisé, au même endroit. App Configuration fonctionne de façon transparente avec Key Vault, qui stocke les mots de passe, les clés et les secrets pour un accès sécurisé.

Cas d’usage potentiels

Bien qu’une application puisse utiliser App Configuration, les types d’applications suivants en bénéficient le plus :

  • Microservices exécutés sur Azure Kubernetes Service (AKS) ou autres applications conteneurisées qui sont déployées dans une ou plusieurs régions.
  • Applications serverless, notamment Azure Functions ou d’autres applications de calcul sans état basées sur les événements.
  • Applications utilisant un pipeline de déploiement continu (CD).

Considérations

Ces considérations implémentent les piliers d’Azure Well-Architected Framework qui est un ensemble de principes directeurs qui permettent d’améliorer la qualité d’une charge de travail. Pour plus d’informations, consultez Microsoft Azure Well-Architected Framework.

  • Il est préférable d’utiliser un coffre de clés différent pour chaque application dans chaque environnement : développement, pré-production Azure et production Azure. L’utilisation de différents coffres permet d’éviter le partage de secrets dans des environnements et de réduire les menaces en cas de violation.

  • Pour utiliser ces scénarios, l’identité de connexion doit avoir le rôle Lecteur de données App Configuration dans la ressource App Configuration et les stratégies d’accès explicites pour récupérer les secrets dans Key Vault.

Contributeurs

Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.

Auteur principal :

Étapes suivantes

En savoir plus sur les technologies des composants :