Partager via


Guide du développeur Azure Key Vault

Azure Key Vault est un service cloud qui fournit un stockage et une gestion sécurisés des clés de chiffrement, des secrets et des certificats. Ce guide aide les développeurs à intégrer Key Vault dans leurs applications.

Aperçu

Azure Key Vault vous permet de :

  • Stockage sécurisé : protégez les clés, les secrets et les certificats sans écrire de code de sécurité personnalisé.
  • Gestion simplifiée des clés : centraliser les opérations de chiffrement et la gestion du cycle de vie des clés.
  • Clés détenues par le client : autorisez les clients à gérer leurs propres clés pendant que vous vous concentrez sur les principales fonctionnalités de l’application.
  • Gestion des clés externes : utilisez des clés pour la signature et le chiffrement tout en les conservant externes à votre application.

Pour obtenir des informations générales sur Azure Key Vault, consultez À propos d’Azure Key Vault.

Scénarios de développement

Les tâches de développement courantes avec Key Vault sont les suivantes :

  • Stockez et récupérez les secrets : gérez les chaînes de connexion, les mots de passe, les clés API et les jetons SAP en toute sécurité. Pour plus d’informations, consultez À propos des secrets.
  • Utilisez des clés pour le chiffrement et la signature : effectuez des opérations de chiffrement sans exposer de matériel de clé à votre application. Pour plus d’informations sur les clés, consultez À propos des clés.
  • Gérer les certificats : Automatisez l’approvisionnement, le renouvellement et le déploiement de certificats pour SSL/TLS. Pour plus d’informations, consultez À propos des certificats.

Préversions publiques

Nous publions régulièrement des préversions publiques des nouvelles fonctionnalités de Key Vault. Pour essayer les fonctionnalités en préversion et fournir des commentaires, contactez-nous à l’adresse azurekeyvault@microsoft.com. Pour plus d’informations sur les dernières fonctionnalités et mises à jour, consultez Nouveautés d’Azure Key Vault.

Créer et gérer des coffres de clés

Key Vault utilise un modèle d’accès à deux plans :

Utilisez le rôle Contributeur Key Vault prédéfini pour accorder l’accès de gestion aux ressources Key Vault. Pour plus d’informations sur l’authentification et l’autorisation, consultez Authentification dans Azure Key Vault.

Sécurité réseau

Réduisez l’exposition du réseau en configurant des points de terminaison privés, des pare-feu ou des points de terminaison de service. Pour obtenir des conseils complets sur la sécurité réseau, notamment les options de configuration les plus restrictives, consultez Sécuriser votre coffre de clés Azure : Sécurité réseau et configurer les paramètres de mise en réseau Azure Key Vault.

API et kits de développement logiciel (SDK) pour la gestion de coffre de clés

Le tableau suivant répertorie les kits SDK et les guides de démarrage rapide pour la gestion des ressources Key Vault (opérations de plan de contrôle). Pour obtenir les dernières versions et instructions d’installation, consultez bibliothèques clientes.

Azure CLI (Interface de ligne de commande Azure) PowerShell API REST Gestionnaire de ressources .NET Python Java JavaScript
Référence
Démarrage rapide
Référence
Démarrage rapide
Référence Référence
Démarrage rapide
Référence Référence Référence Référence

S’authentifier auprès de Key Vault dans le code

Key Vault utilise l’authentification Microsoft Entra, qui nécessite un principal de sécurité Microsoft Entra pour accorder l’accès. Un principal de sécurité Microsoft Entra peut être un utilisateur, un principal de service d’application, une identité managée pour les ressources Azure ou un groupe de l’un de ces types.

Bonnes pratiques pour l’authentification

Pour les applications déployées sur Azure, utilisez des identités managées pour éliminer la nécessité de stocker les informations d’identification dans le code. Pour obtenir des conseils d’authentification détaillés et des recommandations de principal de sécurité pour différents environnements (production, développement, local), consultez Authentification dans Azure Key Vault et Sécuriser votre coffre de clés Azure.

Bibliothèques clientes d’identité Azure

Les scénarios d’authentification précédents sont pris en charge par la bibliothèque cliente d’identité Azure et intégrés aux kits de développement logiciel (SDK) Key Vault. Vous pouvez utiliser la bibliothèque cliente d’identité Azure dans des environnements et des plateformes sans modifier votre code. La bibliothèque récupère automatiquement les jetons d’authentification des utilisateurs qui sont connectés à l’utilisateur Azure via Azure CLI, Visual Studio, Visual Studio Code et d’autres moyens.

Pour plus d’informations sur la bibliothèque cliente d’identité Azure, consultez :

.NET Python Java JavaScript
Kit de développement logiciel (SDK) Azure Identity .NET Kit de développement logiciel (SDK) Azure Identity Python Kit de développement logiciel (SDK) Azure Identity SDK Java kit de développement logiciel (SDK) Azure Identity JavaScript

Remarque

Nous vous recommandons d’utiliser la bibliothèque d’authentification des applications pour le Kit de développement logiciel (SDK) Key Vault .NET version 3, mais elle est maintenant déconseillée. Pour migrer vers le Kit de développement logiciel (SDK) Key Vault .NET version 4, suivez l’aide relative à la migration d’AppAuthentication vers Azure.Identity.

Pour obtenir des didacticiels sur la façon de s’authentifier auprès de Key Vault dans les applications, consultez :

Gérer des clés, certificats et secrets

Remarque

Les kits SDK pour .NET, Python, Java, JavaScript, PowerShell et Azure CLI font partie du processus de mise en production de la fonctionnalité Key Vault au moyen de la version préliminaire publique et d’une disponibilité générale avec l’assistance de l’équipe du service Key Vault. D’autres clients de kit de développement logiciel (SDK) pour Key Vault sont disponibles, mais ils sont créés et pris en charge par les équipes individuelles du Kit de développement logiciel (SDK) sur GitHub et publiés dans leur planification d’équipe. Pour connaître les dernières versions et packages d’installation du Kit de développement logiciel (SDK), consultez bibliothèques clientes.

Le plan de données contrôle l’accès aux clés, certificats et secrets. Vous pouvez utiliser Azure RBAC avec Key Vault pour le contrôle d’accès via le plan de données.

API et kits de développement logiciel (SDK) pour les clés

Le tableau suivant répertorie les kits SDK et les guides de démarrage rapide pour l’utilisation des clés (opérations de plan de données). Pour plus d’informations sur les clés, consultez À propos des clés.

Azure CLI (Interface de ligne de commande Azure) PowerShell API REST Gestionnaire de ressources .NET Python Java JavaScript
Référence
Démarrage rapide
Référence
Démarrage rapide
Référence Référence
Démarrage rapide
Référence
Démarrage rapide
Référence
Démarrage rapide
Référence
Démarrage rapide
Référence
Démarrage rapide

Autres bibliothèques

Client de chiffrement pour Key Vault et HSM managé

Ce module fournit un client de chiffrement pour le module de clé client Azure Key Vault pour Go.

Remarque

Ce projet n’est pas pris en charge par l’équipe du kit SDK Azure, mais il s’aligne sur les clients de chiffrement dans d’autres langages pris en charge.

Langue Référence
Allez Référence

API et kits de développement logiciel (SDK) pour les certificats

Le tableau suivant répertorie les kits SDK et les guides de démarrage rapide pour l’utilisation de certificats (opérations de plan de données). Pour plus d’informations sur les certificats, consultez À propos des certificats.

Azure CLI (Interface de ligne de commande Azure) PowerShell API REST Gestionnaire de ressources .NET Python Java JavaScript
Référence
Démarrage rapide
Référence
Démarrage rapide
Référence N/A Référence
Démarrage rapide
Référence
Démarrage rapide
Référence
Démarrage rapide
Référence
Démarrage rapide

API et kits de développement logiciel (SDK) pour les secrets

La table suivante répertorie les SDK et les guides de démarrage rapide pour travailler avec les secrets (opérations sur le plan de données). Pour plus d’informations sur les secrets, consultez À propos des secrets.

Azure CLI (Interface de ligne de commande Azure) PowerShell API REST Gestionnaire de ressources .NET Python Java JavaScript
Référence
Démarrage rapide
Référence
Démarrage rapide
Référence Référence
Démarrage rapide
Référence
Démarrage rapide
Référence
Démarrage rapide
Référence
Démarrage rapide
Référence
Démarrage rapide

Utilisation des secrets

Azure Key Vault permet de ne stocker que des secrets pour votre application. Exemples de secrets qui doivent être stockés dans Key Vault :

  • Secrets des applications clientes
  • Chaînes de connexion
  • Mots de passe
  • Clés d’accès partagé
  • Clés SSH

Toutes les informations liées aux secrets, telles que les noms d’utilisateur et les ID d’application, peuvent être stockées sous la forme d’une étiquette dans un secret. Pour tous les autres paramètres de configuration sensibles, vous devez utiliser Azure App Configuration.

Pour obtenir les packages d’installation et le code source, consultez les bibliothèques clientes.

Utiliser Key Vault dans les applications

Pour tirer parti des fonctionnalités les plus récentes de Key Vault, nous vous recommandons d’utiliser les kits de développement logiciel (SDK) Key Vault disponibles pour l’utilisation de secrets, de certificats et de clés dans votre application. Les kits de développement logiciel (SDK) Key Vault et l’API REST sont mis à jour, car de nouvelles fonctionnalités ont été publiées pour le produit et suivent nos bonnes pratiques et recommandations.

Pour les scénarios de base, il existe d’autres bibliothèques et solutions d’intégration pour un usage simplifié avec la prise en charge fournie par les partenaires de Microsoft ou les communautés open source.

Pour les certificats, vous pouvez utiliser :

Pour les secrets, vous pouvez utiliser :

Exemples de code

Pour obtenir des exemples complets d’utilisation de Key Vault avec des applications, consultez Exemples de code Azure Key Vault.

Aide spécifique relative aux tâches

Les articles et scénarios suivants fournissent des conseils spécifiques sur l’utilisation d’Azure Key Vault :

Intégration à Key Vault

Les services et scénarios suivants utilisent ou s’intègrent à Key Vault :

  • Le chiffrement au repos permet l’encodage (chiffrement) des données quand elles sont stockées. Les clés de chiffrement de données sont souvent chiffrées avec une clé de chiffrement de clé dans Azure Key Vault pour limiter davantage l’accès.
  • Azure Information Protection vous permet de gérer votre propre clé de locataire. Par exemple, plutôt que Microsoft gère votre clé de client (par défaut), vous pouvez gérer votre propre clé pour vous conformer aux réglementations spécifiques à votre organisation. La gestion de votre propre clé de locataire est également appelée BYOK (Bring Your Own Key).
  • Azure Private Link vous permet d’accéder aux services Azure (par exemple, Azure Key Vault, Stockage Azure et Azure Cosmos DB) ainsi qu’aux services de partenaires ou de clients hébergés par Azure via un point de terminaison privé de votre réseau virtuel.
  • L’intégration entre Key Vault et Azure Event Grid permet aux utilisateurs d’être avertis en cas de modification de l’état d’un secret stocké dans Key Vault. Vous pouvez distribuer de nouvelles versions de secrets aux applications ou appliquer une rotation aux secrets proches de l’expiration pour éviter les pannes.
  • Protégez vos secrets Azure DevOps contre tout accès indésirable dans Key Vault.
  • Utilisez le secret stocké dans Key Vault pour la connexion au stockage Azure à partir d’Azure DataBricks.
  • Configurez et exécutez le fournisseur Azure Key Vault pour le pilote CSI du magasin des secrets sur Kubernetes.

Récupération d'urgence et continuité d’activité

Key Vault fournit une récupération d’urgence intégrée avec la réplication régionale automatique. Pour les déploiements de production, activez la protection contre la suppression réversible et le vidage, puis implémentez des sauvegardes régulières. Pour plus d’informations, consultez la disponibilité et la redondance d’Azure Key Vault, la gestion de la récupération Azure Key Vault et la sauvegarde Azure Key Vault.

Performances et extensibilité

Lorsque vous développez des applications qui utilisent Key Vault, tenez compte des meilleures pratiques en matière de performances et d’extensibilité suivantes :

  • Limites de service : Key Vault a des limites de service pour les transactions par coffre par région. Le dépassement de ces limites entraîne un bridage. Pour plus d’informations, consultez les limites du service Azure Key Vault.
  • Recommandations relatives à la limitation de débit : implémentez une logique de nouvelle tentative avec temporisation exponentielle pour gérer les réponses de limitation. Pour plus d’informations, consultez les conseils de limitation d’Azure Key Vault.
  • Mise en cache : Cachez les secrets et les certificats dans votre application pour réduire les appels à Key Vault et améliorer les performances.
  • Gestion des connexions : réutilisez les connexions HTTP dans Key Vault si possible pour réduire la latence et améliorer les performances.

Surveillance et journalisation

Activez la journalisation et la surveillance pour la sécurité, la conformité et la résolution des problèmes. Configurez les paramètres de diagnostic, les notifications Event Grid et les alertes pour les événements critiques. Pour obtenir des instructions détaillées, consultez Surveiller Azure Key Vault, Journalisation Azure Key Vault, Supervision de Azure Key Vault avec Azure Event Grid et Sécurisez votre Azure Key Vault : Journalisation et détection des menaces.

Paramètres courants et modèles de requête

Lorsque vous utilisez l’API REST Key Vault, la compréhension des paramètres courants et des modèles de demande/réponse est utile :

  • Versions d’API : Key Vault utilise des API avec version. Spécifiez toujours la version de l’API dans vos requêtes.
  • En-têtes courants : Découvrez les en-têtes HTTP obligatoires et facultatifs pour les requêtes Key Vault. Pour plus d’informations, consultez les paramètres et en-têtes courants d’Azure Key Vault.
  • Demandes d’authentification : comprendre comment les jetons d’authentification sont acquis et utilisés. Pour plus d’informations, consultez Authentification, demandes et réponses.
  • Codes d’erreur : Familiarisez-vous avec les codes d’erreur d’API REST courants pour gérer correctement les défaillances. Pour plus d’informations, consultez les codes d’erreur de l’API REST Azure Key Vault.

Résolution des problèmes

Pour obtenir de l’aide sur la résolution des problèmes courants :

Bonnes pratiques de sécurité

Pour obtenir des conseils de sécurité complets, notamment la gestion des identités et des accès, la protection des données, la conformité, la gouvernance et les stratégies de sauvegarde, consultez Sécuriser votre coffre de clés Azure.

Ressources supplémentaires

Concepts de Key Vault

Gestion et opérations

Communauté et soutien