Partager via


Configurer un certificat de chiffrement et chiffrer des secrets sur clusters Windows

Dans cet article, découvrez comment configurer un certificat de chiffrement et l’utiliser pour chiffrer des secrets sur clusters Windows. Pour les clusters Linux, consultez Configurer un certificat de chiffrement et chiffrer des secrets sur des clusters Linux.

Azure Key Vault est utilisé ici comme un emplacement de stockage sécurisé pour des certificats et comme un moyen d’installer des certificats sur des clusters Service Fabric dans Azure. Si vous ne déployez pas dans Azure, il est inutile d’utiliser le coffre de clés pour gérer les secrets dans des applications Service Fabric. Toutefois, l’utilisation de secrets dans une application cloud est indépendante de la plateforme et permet ainsi un déploiement d’applications dans un cluster hébergé à n’importe quel endroit.

Obtenir un certificat de chiffrement de données

Un certificat de chiffrement de données est utilisé exclusivement pour le chiffrement et le déchiffrement des paramètres du fichier Settings.xml d’un service et des variables d’environnement du fichier ServiceManifest.xml d’un service. Il n’est pas utilisé pour l’authentification ou la signature du texte chiffré. Le certificat doit répondre aux exigences suivantes :

  • Le certificat doit contenir une clé privée.

  • Le certificat doit être créé pour l'échange de clés et pouvoir faire l'objet d'un export au format Personal Information Exchange (.pfx).

  • L’utilisation d’une clé de certificat doit inclure le chiffrement de données (10) et ne doit pas inclure l’authentification du serveur ou l’authentification du client.

    Par exemple, lorsque vous créez un certificat auto-signé à l’aide de PowerShell, l’indicateur KeyUsage doit être défini sur DataEncipherment :

    New-SelfSignedCertificate -Type DocumentEncryptionCert -KeyUsage DataEncipherment -Subject mydataenciphermentcert -Provider 'Microsoft Enhanced Cryptographic Provider v1.0'
    

Installation du certificat dans votre cluster

Ce certificat doit être installé sur chaque nœud du cluster. Consultez la page concernant la création d’un cluster à l’aide d’Azure Resource Manager pour obtenir des instructions d’installation.

Chiffrement de secrets d’application

La commande PowerShell suivante est utilisée pour chiffrer un secret. Cette commande chiffre uniquement la valeur ; elle ne signe pas le texte chiffré. Vous devez utiliser le certificat de chiffrement qui est installé dans votre cluster afin de produire le texte chiffré pour les valeurs secrètes :

Invoke-ServiceFabricEncryptText -CertStore -CertThumbprint "<thumbprint>" -Text "mysecret" -StoreLocation CurrentUser -StoreName My

La chaîne encodée en base 64 qui en résulte contient à la fois le texte chiffré secret et plus d’informations sur le certificat qui a été utilisé pour le chiffrement.

Étapes suivantes

Découvrez comment Spécifier des secrets chiffrés dans une application.