Ajouter Key Vault à votre application web à l’aide des Services connectés Visual Studio
Dans ce tutoriel, vous allez voir comment ajouter facilement tout ce dont vous avez besoin pour utiliser Azure Key Vault en vue de gérer les secrets de vos projets web dans Visual Studio, que vous utilisiez ASP.NET Core ou tout type de projet ASP.NET. Quand vous utilisez la fonctionnalité Services connectés de Visual Studio, Visual Studio peut ajouter automatiquement tous les packages NuGet et les paramètres de configuration dont vous avez besoin pour vous connecter à Key Vault dans Azure.
Prérequis
- Un compte Azure. Si vous ne possédez pas de compte Azure, activez vos avantages Azure pour les abonnés Visual Studio ou inscrivez-vous pour un essai gratuit.
- Visual Studio 2019, version 16.3 ou ultérieure Télécharger le maintenant.
Ajouter la prise en charge Key Vault à votre projet
Avant de commencer, vérifiez que vous êtes connecté à Visual Studio. Connectez-vous avec le même compte que celui que vous utilisez pour votre abonnement Azure. Ouvrez ensuite un projet web ASP.NET 4.7.1 (ou version ultérieure) ou ASP.NET Core, puis procédez de la façon suivante. Les étapes indiquées concernent Visual Studio 2022 version 17.4. Les étapes peuvent varier légèrement dans les autres versions de Visual Studio.
Dans l’Explorateur de solutions, faites un clic droit sur le projet auquel vous souhaitez ajouter la prise en charge de Key Vault, puis choisissez Ajouter>Service connecté, ou faites un clic droit sur le nœud Services connectés et sélectionnez Ajouter.
Si vous ne voyez pas le nœud Services connectés, choisissez Projet>Services connectés>Ajouter.
Sous Dépendances de service, choisissez l’icône +. La page Service connecté s’affiche et montre des services que vous pouvez ajouter à votre projet.
Dans le menu des services disponibles, choisissez Azure Key Vault et cliquez sur Suivant.
Sélectionnez l’abonnement que vous souhaitez utiliser, puis, si vous avez déjà un coffre de clés que vous souhaitez utiliser, sélectionnez-le, puis cliquez sur Suivant.
Si vous n’avez pas de coffre de clés existant ou si vous avez besoin d’un coffre de clés que vous pouvez définir avec des autorisations différentes d’un coffre existant, cliquez sur Créer un coffre de clés. Vous serez invité à indiquer le groupe de ressources, l’emplacement et la référence SKU.
Dans l’écran Configurer le coffre de clés, vous pouvez modifier le nom de la variable d’environnement qui référence l’URI du coffre de clés. La chaîne de connexion n’est pas stockée ici ; elle est stockée dans le coffre de clés.
Remarque
Pour améliorer la sécurité, dans Visual Studio 17.12 et versions ultérieures, cette étape crée un nom de paramètre de connexion ; les versions précédentes créent un chaîne de connexion. Les chaînes de connexion stockées localement peuvent entraîner un risque de sécurité, s’ils sont exposés par inadvertance.
Cliquez sur Suivant jusqu’à ce que vous voyiez un résumé des modifications, puis terminez.
Avant de commencer, vérifiez que vous êtes connecté à Visual Studio. Connectez-vous avec le même compte que celui que vous utilisez pour votre abonnement Azure. Ouvrez ensuite un projet web ASP.NET 4.7.1 (ou version ultérieure) ou ASP.NET Core, puis procédez de la façon suivante.
Dans l’Explorateur de solutions, faites un clic droit sur le projet auquel vous souhaitez ajouter la prise en charge de Key Vault, puis choisissez Ajouter>Service connecté, ou faites un clic droit sur le nœud Services connectés et sélectionnez Ajouter.
Si vous ne voyez pas le nœud Services connectés, choisissez Projet>Services connectés>Ajouter.
Sous Dépendances de service, choisissez l’icône +. La page Service connecté s’affiche et montre des services que vous pouvez ajouter à votre projet.
Dans le menu des services disponibles, choisissez Azure Key Vault et cliquez sur Suivant.
Sélectionnez l’abonnement que vous souhaitez utiliser, puis, si vous avez déjà un coffre de clés que vous souhaitez utiliser, sélectionnez-le, puis cliquez sur Suivant.
Si vous n’avez pas de coffre de clés existant, cliquez sur Créer un coffre de clés. Vous serez invité à indiquer le groupe de ressources, l’emplacement et la référence SKU.
Dans l’écran Configurer le coffre de clés, vous pouvez modifier le nom de la variable d’environnement qui référence l’URI du coffre de clés. La chaîne de connexion n’est pas stockée ici ; elle est stockée dans le coffre de clés.
Cliquez sur Suivant pour lire le récapitulatif des modifications, puis sur Terminer.
À présent, la connexion à Key Vault est établie et vous pouvez accéder à vos secrets dans le code. Si vous venez de créer un coffre de clés, testez-le en créant un secret que vous pouvez référencer dans le code. Vous pouvez créer un secret avec le portail Azure, PowerShell ou Azure CLI.
Pour voir des exemples de code qui utilisent des secrets, consultez Bibliothèque de client des secrets Azure Key Vault pour .NET - Exemples de code.
Configuration de l’accès au coffre de clés
Si vous avez suivi ce tutoriel avec Visual Studio 2022 version 17.11 ou antérieure, vos autorisations Key Vault sont configurées pour s’exécuter avec votre propre abonnement Azure, mais cela peut ne pas être souhaitable pour un scénario de production. Vous pouvez créer une identité managée afin de gérer l’accès à Key Vault pour votre application. Consultez Comment s’authentifier auprès de Key Vault et Attribuer une stratégie d’accès Key Vault.
Si votre Key Vault s’exécute sur un autre compte Microsoft que celui auquel vous êtes connecté à Visual Studio (par exemple, Key Vault s’exécute sur votre compte professionnel, alors que Visual Studio utilise votre compte privé), un message d’erreur indiquant que Visual Studio ne peut pas avoir accès à Key Vault est ajouté à votre fichier Program.cs. Pour résoudre ce problème, accédez au Portail Azure, ouvrez votre coffre de clés et choisissez Contrôle d’accès (IAM) pour définir les autorisations. Consultez Donner accès aux clés, certificats et secrets du coffre de clés avec un contrôle d’accès en fonction du rôle (RBAC) Azure.
Remarque
Les anciens coffres de clés pourraient utiliser un modèle de stratégie d’accès hérité. Il est recommandé de migrer les coffres de clés plus anciens pour utiliser Azure RBAC. Consultez Contrôle d’accès en fonction du rôle Azure (RBAC) et stratégies d’accès.
Étapes suivantes
Découvrez plus en détail le développement de coffres de clés en lisant le Guide du développeur de coffre de clés.
Si votre objectif est de stocker une configuration d’application ASP.NET Core dans un coffre de clés Azure, consultez Fournisseur de configuration Azure Key Vault dans ASP.NET Core.