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 About Azure Key Vault.

Scénarios de développement

Les tâches courantes du développeur 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

Microsoft publie 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 l’équipe à l’adresse azurekeyvault@microsoft.com. Pour plus d'informations sur les dernières fonctionnalités et mises à jour, consultez Nouveautés de 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 Authentication 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 Secure your Azure Key Vault : Network Security and Configure Azure Key Vault networking settings.

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 du plan de contrôle). Pour obtenir les dernières versions et instructions d’installation, consultez bibliothèques clientes.

Azure CLI 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, ce 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, une identité géré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 instructions d’authentification détaillées et des recommandations de principal de sécurité pour différents environnements (production, développement, local), consultez Authentication dans Azure Key Vault et Secure your Azure Key Vault.

Bibliothèques clientes d’identité Azure

Les scénarios d’authentification précédents sont pris en charge par la bibliothèque cliente Azure Identity et intégrées aux kits sdk Key Vault. Vous pouvez utiliser la bibliothèque de client Azure Identity dans les environnements et les plateformes sans modifier votre code. La bibliothèque récupère automatiquement les jetons d’authentification des utilisateurs signés dans Azure via Azure CLI, Visual Studio, Visual Studio Code et d’autres moyens.

Pour plus d’informations sur la bibliothèque de client Azure Identity, consultez :

.NET Python Java JavaScript
Azure Sdk Identity .NET Azure Sdk Identity Python Azure Sdk Identity Java Azure Sdk Identity JavaScript

Remarque

Nous vous recommandons App Authentication library for Key Vault .NET SDK version 3, mais il est désormais déconseillé. Pour migrer vers Key Vault .NET SDK version 4, suivez le guide de migration depuis AppAuthentication vers Azure.Identity.

Pour obtenir des didacticiels sur l’authentification 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 l'Azure CLI font partie du processus de publication des fonctionnalités Key Vault avec la préversion publique et la disponibilité générale, avec le soutien de l'équipe de service Key Vault. D’autres clients SDK pour Key Vault sont disponibles, mais ils sont créés et pris en charge par des équipes SDK individuelles sur GitHub et publiés selon le calendrier de leurs équipes. 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 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 client Azure Key Vault Keys pour Go.

Remarque

Ce projet n’est pas pris en charge par l’équipe Kit de développement logiciel (SDK) Azure, mais 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 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 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

Utilisez Azure Key Vault pour stocker uniquement les secrets de votre application. Voici quelques 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 SDK Key Vault disponibles pour utiliser des secrets, des certificats et des clés dans votre application. Les sdk Key Vault et l’API REST sont mis à jour à mesure que de nouvelles fonctionnalités sont publiées pour le produit, et suivent les bonnes pratiques et recommandations.

Pour les scénarios de base, il existe d’autres bibliothèques et solutions d’intégration pour une utilisation simplifiée, avec le support fourni par Microsoft partenaires 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 Azure Key Vault exemples de code.

Aide spécifique relative aux tâches

Les articles et scénarios suivants fournissent des conseils spécifiques aux tâches pour l’utilisation de 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, au lieu de Microsoft gérer votre clé de locataire (la valeur par défaut), vous pouvez gérer votre propre clé de locataire pour respecter des réglementations spécifiques qui s’appliquent à 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) et aux services clients/partenaires hébergés par Azure sur un point de terminaison privé dans votre instance virtuelle Réseau.
  • Key Vault intégration à Azure Event Grid permet aux utilisateurs d’être avertis lorsque l’état d’un secret stocké dans Key Vault a changé. 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 les accès indésirables dans Key Vault.
  • Utilisez des secrets stockés dans Key Vault pour connecter à stockage Azure à partir de Azure Databricks.
  • Configurez et exécutez le fournisseur Azure Key Vault pour le pilote CSI Secrets Store CSI 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 Azure Key Vault disponibilité et redondance, Azure Key Vault gestion des récupérations et Azure Key Vault sauvegarde.

Performances et extensibilité

Lors du développement d’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 Azure Key Vault limites de service.
  • 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 de détails, consultez les recommandations relatives à la limitation d’Azure Key Vault.
  • Caching : 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éutiliser les connexions HTTP pour Key Vault lorsque cela est 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 conseils détaillés, consultez Surveiller Azure Key Vault, Journalisation d'Azure Key Vault, Surveillance de 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 requête/réponse est utile :

  • Versions API: Key Vault utilise des API versionnées. Spécifiez toujours la version de l’API dans vos requêtes.
  • Demandes d’authentification : découvrez comment les jetons d’authentification sont acquis et utilisés, y compris les en-têtes de requête courants et les formats de réponse. 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 Azure Key Vault codes d’erreur de l’API REST.

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 Secure your Azure Key Vault.

Ressources supplémentaires

concepts de Key Vault

Gestion et opérations

Communauté et soutien

  • Microsoft Q& A - Posez des questions et obtenez des réponses de la communauté.
  • Stack Overflow pour Key Vault - Q&R technique par les développeurs.
  • Azure Commentaires - Envoyer des demandes de fonctionnalités et des commentaires.