Magasins de clés externes - AWS Key Management Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Magasins de clés externes

Les magasins de clés externes vous permettent de protéger vos ressources AWS en utilisant des clés cryptographiques en dehors d'AWS. Cette fonctionnalité avancée est conçue pour les charges de travail réglementées que vous devez protéger avec des clés de chiffrement stockées dans un système de gestion des clés externe que vous contrôlez. Les magasins de clés externes respectent l'AWS Digital Sovereignty Pledge pour vous donner le contrôle souverain de vos données dans AWS, y compris la possibilité de chiffrer avec des éléments de clé que vous possédez et contrôlez en dehors d'AWS.

Un magasin de clés externe est un magasin de clés personnalisé soutenu par un gestionnaire de clés externe que vous possédez et contrôlez en dehors d'AWS. Votre gestionnaire de clés externe peut être un module de sécurité matérielle (HSM) physique ou virtuel, ou tout système matériel ou logiciel capable de générer et d'utiliser des clés cryptographiques. Les opérations de chiffrement et de déchiffrement qui utilisent une clé KMS dans un magasin de clés externe sont effectuées par votre gestionnaire de clés externe à l'aide de vos éléments de clé cryptographiques, une fonctionnalité connue sous le nom de Hold your Own Keys (HYOK).

AWS KMS n'interagit jamais directement avec votre gestionnaire de clés externe et ne peut pas créer, afficher, gérer ou supprimer vos clés. Au lieu de cela, AWS KMS n'interagit qu'avec le logiciel de proxy de magasin de clés externe (proxy XKS) que vous fournissez. Le proxy de votre magasin de clés externe assure la médiation de toutes les communications entre AWS KMS et votre gestionnaire de clés externe. Il transmet toutes les requêtes AWS KMS à votre gestionnaire de clés externe et transmet les réponses de votre gestionnaire de clés externe à AWS KMS. Le proxy de magasin de clés externe traduit également les requêtes génériques émises par AWS KMS dans un format propre au fournisseur que votre gestionnaire de clés externe peut comprendre, ce qui vous permet d'utiliser des magasins de clés externes avec des gestionnaires de clés provenant de différents fournisseurs.

Vous pouvez utiliser des clés KMS dans un magasin de clés externe pour le chiffrement côté client, notamment avec l'AWS Encryption SDK. Mais les magasins de clés externes constituent une ressource importante pour le chiffrement côté serveur, car elles vous permettent de protéger vos ressources AWS réparties sur différents Services AWS à l'aide de vos clés de chiffrement en dehors d'AWS. Les Services AWS qui prennent en charge les clés gérées par le client pour le chiffrement symétrique prennent également en charge les clés KMS d'un magasin de clés externes. Pour plus d'informations sur la prise en charge des services, consultez Intégration des services AWS.

Les magasins de clés externes vous permettent d'utiliser AWS KMS pour les charges de travail réglementées où les clés de chiffrement doivent être stockées et utilisées en dehors d'AWS. Ils constituent toutefois une rupture majeure par rapport au modèle standard de responsabilité partagée et nécessitent des charges opérationnelles supplémentaires. Pour la plupart des clients, le risque accru pour la disponibilité et la latence dépassera les avantages en termes de sécurité perçus pour les magasins de clés externes.

Les magasins de clés externes vous permettent de contrôler la source de confiance. Les données chiffrées au moyen des clés KMS dans votre magasin de clés externe ne peuvent être déchiffrées qu'en utilisant le gestionnaire de clés externe que vous contrôlez. Si vous révoquez temporairement l'accès à votre gestionnaire de clés externe, par exemple en déconnectant le magasin de clés externe ou en déconnectant votre gestionnaire de clés externe du proxy de magasin de clés externe, AWS perd tout accès à vos clés cryptographiques jusqu'à ce que vous le rétablissiez. Pendant cet intervalle, le texte chiffré qui a été chiffré au moyen de vos clés KMS ne peut pas être déchiffré. Si vous révoquez définitivement l'accès à votre gestionnaire de clés externe, tout le texte chiffré au moyen d'une clé KMS dans votre magasin de clés externe devient irrécupérable. Les seules exceptions sont les services AWS qui mettent brièvement en cache les clés de données protégées par vos clés KMS. Ces clés de données continuent de fonctionner jusqu'à ce que vous désactiviez la ressource ou que le cache expire. Pour plus de détails, consultez Comment les clés KMS inutilisables affectent les clés de données.

Les magasins de clés externes débloquent les quelques cas d'utilisation liés aux charges de travail réglementées où les clés de chiffrement doivent rester sous votre seul contrôle et inaccessibles à AWS. Mais il s'agit d'un changement majeur dans la façon dont vous exploitez une infrastructure basée sur le cloud et d'un changement significatif du modèle de responsabilité partagée. Pour la plupart des charges de travail, la charge opérationnelle supplémentaire et les risques accrus en termes de disponibilité et de performances dépasseront les avantages en termes de sécurité perçus pour les magasins de clés externes.

En savoir plus :

Ai-je besoin d'un magasin de clés externe ?

Pour la plupart des utilisateurs, le magasin de clés AWS KMS par défaut, qui est protégé par les modules de sécurité matériels validés FIPS 140-2, Niveau de sécurité 3, répond à leurs exigences en matière de sécurité, de contrôle et de réglementation. Les utilisateurs de magasins de clés externes supportent des coûts, une maintenance et une charge de dépannage considérables, ainsi que des risques en matière de latence, de disponibilité et de fiabilité.

Lorsque vous envisagez de choisir un magasin de clés externe, prenez le temps de comprendre les alternatives, notamment un magasin de clés AWS CloudHSM soutenu par un cluster AWS CloudHSM que vous possédez et gérez, et des clés KMS contenant des éléments de clé importés que vous générez dans vos propres modules HSM et que vous pouvez supprimer des clés KMS à la demande. En particulier, l'importation d'éléments de clé ayant un délai d'expiration très court peut fournir un niveau de contrôle similaire sans risques pour la performance ou la disponibilité.

Un magasin de clés externe peut être la solution adaptée à votre organisation si vous répondez aux exigences suivantes :

  • Vous devez utiliser des clés cryptographiques dans votre gestionnaire de clés sur site ou dans un gestionnaire de clés en dehors d'AWS que vous contrôlez.

  • Vous devez prouver que vos clés cryptographiques sont conservées uniquement sous votre contrôle en dehors du cloud.

  • Vous devez pouvoir chiffrer et déchiffrer à l'aide de clés cryptographiques disposant d'une autorisation indépendante.

  • Les clés doivent être soumises à un chemin d'audit indépendant secondaire.

Si vous choisissez un magasin de clés externe, limitez son utilisation aux charges de travail qui nécessitent une protection au moyen de clés cryptographiques en dehors d'AWS.

Modèle de responsabilité partagée

Les clés KMS standard utilisent des éléments de clé générés et utilisés dans les modules HSM qu'AWS KMS possède et gère. Vous établissez les politiques de contrôle d'accès sur vos clés KMS et configurez les Services AWS qui utilisent les clés KMS pour protéger vos ressources. AWS KMS endosse la responsabilité en matière de sécurité, de disponibilité, de latence et de durabilité des éléments de clé de vos clés KMS.

Les clés KMS des magasins de clés externes dépendent des éléments et des opérations de clé de votre gestionnaire de clés externe. À ce titre, l'équilibre des responsabilités penche en votre faveur. Vous êtes responsable de la sécurité, de la fiabilité, de la durabilité et des performances des clés cryptographiques de votre gestionnaire de clés externe. AWS KMS est chargé de répondre rapidement aux requêtes et de communiquer avec le proxy de votre magasin de clés externe, ainsi que de maintenir nos normes de sécurité. Pour garantir que chaque clé externe stocke un texte chiffré au moins aussi robuste que le texte chiffré AWS KMS standard, AWS KMS chiffre d'abord tout le texte brut avec des éléments de clé AWS KMS spécifiques à votre clé KMS, puis l'envoie à votre gestionnaire de clés externe pour chiffrement à l'aide de votre clé externe, une procédure connue sous le nom de double chiffrement. Par conséquent, ni AWS KMS ni le propriétaire des éléments de clé externes ne peuvent déchiffrer seuls le texte chiffré à double chiffrement.

Vous êtes responsable du maintien d'un gestionnaire de clés externe qui répond à vos normes réglementaires et de performance, de la fourniture et de la maintenance d'un proxy de magasin de clés externe conforme à la spécification de l'API du proxy de magasin de clés externe AWS KMS (langue française non garantie), ainsi que de la disponibilité et de la durabilité de vos éléments de clé. Vous devez également créer, configurer et maintenir un magasin de clés externe. Lorsque des erreurs surviennent et sont causées par des composants que vous gérez, vous devez être prêt à les identifier et à les résoudre afin que les services AWS puissent accéder à vos ressources sans interruption excessive. AWS KMS fournit des conseils de dépannage pour vous aider à déterminer la cause des problèmes et les résolutions les plus probables.

Consultez les CloudWatch statistiques et les dimensions Amazon AWS KMS enregistrées pour les principaux magasins externes. AWS KMSrecommande vivement de créer des CloudWatch alarmes pour surveiller votre magasin de clés externe afin de détecter les premiers signes de performances et de problèmes opérationnels avant qu'ils ne surviennent.

Qu'est-ce qui change ?

Les magasins de clés externes ne prennent en charge que les clés KMS de chiffrement symétriques. Au sein d'AWS KMS, vous utilisez et gérez les clés KMS dans un magasin de clés externe de la même manière que vous gérez les autres clés gérées par le client, notamment en définissant des politiques de contrôle d'accès et en surveillant l'utilisation des clés. Vous utilisez les mêmes API avec les mêmes paramètres pour solliciter une opération cryptographique avec une clé KMS dans un magasin de clés externe que celles que vous utilisez pour toute clé KMS. La tarification est également la même que pour les clés KMS standard. Pour plus d'informations, veuillez consulter la rubrique Gérer des clés KMS dans un magasin de clés externe, Utiliser des clés KMS dans un magasin de clés externe, ainsi que la Tarification AWS Key Management Service.

Toutefois, avec les magasins de clés externes, les principes suivants changent :

  • Vous êtes responsable de la disponibilité, de la durabilité et de la latence des opérations de clé.

  • Vous êtes responsable de tous les coûts liés au développement, à l'achat, à l'exploitation et à la licence de votre système de gestion de clés externe.

  • Vous pouvez implémenter une autorisation indépendante pour toutes les requêtes provenant d'AWS KMS à destination de votre proxy de magasin de clés externe.

  • Vous pouvez surveiller, auditer et journaliser toutes les opérations de votre proxy de magasin de clés externe, ainsi que toutes les opérations de votre gestionnaire de clés externe liées aux requêtes AWS KMS.

Où commencer ?

Pour créer et gérer un magasin de clés externe, vous devez choisir l'option de connectivité du proxy de votre magasin de clés externe, réunir les conditions préalables, puis créer et configurer votre magasin de clés externe. Pour commencer, veuillez consulter la rubrique Planifier un magasin de clés externe.

Quotas

AWS KMS autorise jusqu'à 10 magasins de clés personnalisés dans chaque Compte AWS et région, y compris les magasins de clés AWS CloudHSM et les magasins de clés externes, quel que soit leur état de connexion. En outre, il existe des quotas de requêtes AWS KMS concernant l'utilisation des clés KMS dans un magasin de clés externes.

Si vous choisissez la connectivité proxy VPC pour votre proxy de magasin de clés externe, des quotas peuvent également s'appliquer aux composants requis, tels que les VPC, les sous-réseaux et les équilibreurs de charge réseau. Pour plus d'informations sur ces quotas, consultez la console Service Quotas.

Régions

Pour minimiser la latence du réseau, créez les composants de votre magasin de clés externe dans la Région AWS la plus proche de votre gestionnaire de clés externe. Si possible, choisissez une région dont le temps d'aller-retour sur le réseau (RTT, round-trip time) est inférieur ou égal à 35 millisecondes.

Les magasins de clés externes sont pris en charge dans tous Régions AWS dans lesquels AWS KMS est pris en charge à l'exception de la Chine (Beijing) et Chine (Ningxia).

Fonctions non prises en charge

AWS KMS ne prend pas en charge les fonctions suivantes dans les magasins de clés personnalisés.

Concepts de magasins de clés externes

Cette rubrique explique certains des concepts utilisés dans les magasins de clés externes.

Magasin de clés externe

Un magasin de clés externe est un magasin de clés personnalisé AWS KMS soutenu par un gestionnaire de clés externe en dehors d'AWS que vous possédez et gérez. Chaque clé KMS d'un magasin de clés externe est associée à une clé externe dans votre gestionnaire de clés externe. Lorsque vous utilisez une clé KMS dans un magasin de clés externe à des fins de chiffrement ou de déchiffrement, l'opération est exécutée dans votre gestionnaire de clés externe à l'aide de votre clé externe, une disposition connue sous le nom de Hold your Own Keys (HYOK). Cette fonctionnalité est conçue pour les entreprises qui sont tenues de conserver leurs clés cryptographiques dans leur propre gestionnaire de clés externe.

Les magasins de clés externes garantissent que les clés et les opérations cryptographiques qui protègent vos ressources AWS restent dans votre gestionnaire de clés externe sous votre contrôle. AWS KMS envoie des requêtes à votre gestionnaire de clés externe pour chiffrer et déchiffrer des données, mais AWS KMS ne peut pas créer, supprimer ou gérer de clés externes. Toutes les requêtes provenant d'AWS KMS à destination de votre gestionnaire de clés externe sont transmises par un composant logiciel de proxy de magasin de clés externe que vous fournissez, possédez et gérez.

Les services AWS qui prennent en charge les clés AWS KMS gérées par le client peuvent utiliser les clés KMS qui se trouvent dans votre magasin de clés externe pour protéger vos données. En définitive, vos données sont bel et bien protégées par vos clés à l'aide de vos opérations de chiffrement dans votre gestionnaire de clés externe.

Les clés KMS d'un magasin de clés externe présentent des modèles de confiance, des accords de responsabilité partagée et des attentes en matière de performances fondamentalement différents de ceux des clés KMS standard. Avec les magasins de clés externes, vous êtes responsable de la sécurité et de l'intégrité des éléments de clé et des opérations cryptographiques. La disponibilité et la latence des clés KMS dans un magasin de clés externe sont affectées par le matériel, les logiciels, les composants réseau ainsi que par la distance entre AWS KMS et votre gestionnaire de clés externe. Vous êtes également susceptible d'encourir des coûts supplémentaires pour votre gestionnaire de clés externe et pour l'infrastructure de mise en réseau et d'équilibrage de charge dont vous avez besoin pour que votre gestionnaire de clés externe communique avec AWS KMS.

Vous pouvez utiliser votre magasin de clés externe dans le cadre de votre stratégie globale de protection des données. Pour chaque ressource AWS que vous protégez, vous pouvez décider laquelle nécessite une clé KMS dans un magasin de clés externe et laquelle peut être protégée par une clé KMS standard. Cela vous donne la possibilité de choisir des clés KMS pour des classifications de données, des applications ou des projets spécifiques.

Gestionnaire de clés externe

Un gestionnaire de clés externe est un composant extérieur à AWS qui peut générer des clés symétriques AES 256 bits et effectuer un chiffrement et un déchiffrement symétriques. Le gestionnaire de clés externe pour un magasin de clés externe peut être un module de sécurité matérielle (HSM) physique, un module HSM virtuel ou un gestionnaire de clés logiciel avec ou sans composant HSM. Il peut être situé n'importe où à l'extérieur d'AWS, y compris dans vos locaux, dans un centre de données sur site ou à distance, ou dans n'importe quel cloud. Votre magasin de clés externe peut être soutenu par un seul gestionnaire de clés externe ou par plusieurs instances de gestionnaire de clés connexes qui partagent des clés cryptographiques, comme un cluster HSM. Les magasins de clés externes sont conçus pour prendre en charge divers gestionnaires externes provenant de différents fournisseurs. Pour plus d'informations sur les exigences relatives à votre gestionnaire de clés externe, veuillez consulter la rubrique Planifier un magasin de clés externe.

Clé externe

Chaque clé KMS d'un magasin de clés externe est associée à une clé cryptographique dans votre gestionnaire de clés externe appelée clé externe. Lorsque vous chiffrez ou déchiffrez avec une clé KMS dans votre magasin de clés externe, l'opération cryptographique est effectuée dans votre gestionnaire de clés externe à l'aide de votre clé externe.

Avertissement

La clé externe est essentielle au fonctionnement de la clé KMS. En cas de perte ou de suppression de la clé externe, le texte chiffré au moyen de la clé KMS associée est irrécupérable.

Pour les magasins de clés externes, une clé externe doit être une clé AES 256 bits activée et capable d'effectuer le chiffrement et le déchiffrement. Pour obtenir des informations détaillées sur les exigences relatives aux clés externes, veuillez consulter la rubrique Exigences relatives à une clé KMS dans un magasin de clés externe.

AWS KMS ne peut pas créer, supprimer ou gérer des clés externes. Les éléments de votre clé cryptographique ne quittent jamais votre gestionnaire de clés externe. Lorsque vous créez une clé KMS dans un magasin de clés externe, vous fournissez l'ID d'une clé externe (XksKeyId). Vous ne pouvez pas modifier l'ID de clé externe associé à une clé KMS, bien que votre gestionnaire de clés externe puisse effectuer une rotation des éléments de clé associés à l'ID de clé externe.

Outre votre clé externe, une clé KMS contenue dans un magasin de clés externe contient également des éléments de clé AWS KMS. Les données protégées par la clé KMS sont chiffrées d'abord par AWS KMS à l'aide des éléments de clé AWS KMS, puis par votre gestionnaire de clés externe à l'aide de votre clé externe. Ce processus de double chiffrement garantit que le texte chiffré protégé par votre clé KMS est toujours au moins aussi robuste que le texte chiffré protégé uniquement par AWS KMS.

De nombreuses clés cryptographiques possèdent différents types d'identifiants. Lorsque vous créez une clé KMS dans un magasin de clés externe, indiquez l'ID de la clé externe que le proxy de magasin de clés externe utilise pour faire référence à la clé externe. Si vous utilisez le mauvais identifiant, votre tentative de créer une clé KMS dans votre magasin de clés externe échoue.

Proxy de magasin de clés externe

Le proxy de magasin de clés externe (« proxy XKS ») est une application logicielle détenue et gérée par le client qui assure la médiation de toutes les communications entre AWS KMS et votre gestionnaire de clés externe. Il traduit également les requêtes AWS KMS génériques dans un format que le gestionnaire de clés externe propre à votre fournisseur comprend. Un proxy de magasin de clés externe est requis pour un magasin de clés externe. Chaque magasin de clés externe est associé à exactement un proxy de magasin de clés externe.


                Proxy de magasin de clés externe

AWS KMS ne peut pas créer, supprimer ou gérer des clés externes. Vos éléments de clé cryptographique ne quittent jamais votre gestionnaire de clés externe. Toute communication entre AWS KMS et votre gestionnaire de clés externe est assurée par votre proxy de magasin de clés externe. AWS KMS envoie des requêtes au proxy de magasin de clés externe et reçoit des réponses du proxy de magasin de clés externe. Le proxy de magasin de clés externe est chargé de transmettre les requêtes d'AWS KMS à votre gestionnaire de clés externe et de renvoyer les réponses de votre gestionnaire de clés externe à AWS KMS.

Vous possédez et gérez le proxy de magasin de clés externe pour votre magasin de clés externe, et vous êtes responsable de sa maintenance et de son fonctionnement. Vous pouvez développer votre proxy de magasin de clés externe en vous basant sur la spécification de l'API du proxy de magasin de clés externe (langue française non garantie) open source qu'AWS KMS publie ou acheter une application proxy auprès d'un fournisseur. Votre proxy de magasin de clés externe est peut-être inclus dans votre gestionnaire de clés externe. Pour faciliter le développement de proxy, fournit AWS KMS également un exemple de proxy de stockage de clés externe (aws-kms-xks-proxy) et un client de test (xks-kms-xksproxy-test-client) qui vérifie que votre proxy de stockage de clés externe est conforme à la spécification.

Pour s'authentifier sur AWS KMS, le proxy utilise des certificats TLS côté serveur. Pour vous authentifier auprès de votre proxy, AWS KMS signe toutes les requêtes adressées à votre proxy de magasin de clés externe à l'aide d'informations d'identification pour l'authentification du proxy SigV4. Votre proxy peut éventuellement activer le protocole TLS mutuel (mTLS) afin de garantir qu'il n'accepte que les requêtes émises par AWS KMS.

Votre proxy de stockage de clés externe doit prendre en charge HTTP/1.1 ou version ultérieure et TLS 1.2 ou version ultérieure avec au moins l'une des suites de chiffrement suivantes :

  • TLS_AES_256_GCM_SHA384 (TLS 1.3)

  • TLS_CHACHA20_POLY1305_SHA256 (TLS 1.3)

    Note

    Le AWS GovCloud (US) Region ne prend pas en charge TLS_CHACHA20_POLY1305_SHA256.

  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (TLS 1.2)

  • TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (TLS 1.2)

Pour créer et utiliser les clés KMS dans votre magasin de clés externe, vous devez d'abord connecter le magasin de clés externe à son proxy de magasin de clés externe. Vous pouvez également déconnecter votre magasin de clés externe de son proxy à la demande. Dans ce cas, toutes les clés KMS du magasin de clés externe deviennent indisponibles ; elles ne peuvent être utilisées dans aucune opération cryptographique.

Connectivité du proxy de magasin de clés externe

La connectivité du proxy de magasin de clés externe (« connectivité proxy XKS ») décrit la méthode qu'AWS KMS utilise pour communiquer avec le proxy de magasin de clés externe.

Vous spécifiez votre option de connectivité de proxy lorsque vous créez votre magasin de clés externe, et elle devient une propriété du magasin de clés externe. Vous pouvez modifier l'option de connectivité de votre proxy en mettant à jour la propriété du magasin de clés personnalisé, mais vous devez vous assurer que votre proxy de magasin de clés externe peut toujours accéder aux mêmes clés externes.

AWS KMS prend en charge les options de connectivité suivantes :

  • Connectivité au point de terminaison public : AWS KMS envoie des requêtes pour votre proxy de magasin de clés externe via Internet à un point de terminaison public que vous contrôlez. Cette option est simple à créer et à gérer, mais elle peut ne pas répondre aux exigences de sécurité pour chaque installation.

  • Connectivité au service de point de terminaison d'un VPC : AWS KMS envoie des requêtes à un service de point de terminaison Amazon Virtual Private Cloud (Amazon VPC) que vous créez et gérez. Vous pouvez héberger votre proxy de magasin de clés externe au sein de votre Amazon VPC, ou héberger votre proxy de magasin de clés externe à l'extérieur d'AWS et utiliser Amazon VPC uniquement pour la communication.

Pour plus d'informations sur les options de connectivité du proxy de magasin de clés externe, veuillez consulter la rubrique Choisir une option de connectivité de proxy.

Informations d'identification pour l'authentification du proxy de magasin de clés externe

Pour vous authentifier auprès du proxy de votre magasin de clés externe, AWS KMS signe toutes les requêtes adressées au proxy de votre magasin de clés externe à l'aide d'informations d'identification d'authentification Signature V4 (SigV4). Vous établissez et gérez les informations d'identification de l'authentification sur votre proxy, puis vous les fournissez à AWS KMS lorsque vous créez votre magasin externe.

Note

Les informations d'identification SigV4 qu'AWS KMS utilise pour signer les requêtes adressées au proxy XKS ne sont pas liées aux informations d'identification SigV4 associées aux principaux de AWS Identity and Access Management dans vos Comptes AWS. Ne réutilisez aucune information d'identification IAM SigV4 pour votre proxy de magasin de clés externe.

Chaque information d'identification pour l'authentification du proxy comporte deux parties. Vous devez fournir les deux parties lors de la création d'un magasin de clés externe ou de la mise à jour des informations d'identification de l'authentification pour votre magasin de clés externe.

  • ID de la clé d'accès : identifie la clé d'accès secrète. Vous pouvez fournir cet ID en texte brut.

  • Clé d'accès secrète : partie secrète des informations d'identification. AWS KMS chiffre la clé d'accès secrète contenue dans les informations d'identification avant de les stocker.

Vous pouvez modifier le paramètre des informations d'identification à tout moment, par exemple lorsque vous saisissez des valeurs incorrectes, lorsque vous modifiez vos informations d'identification sur le proxy ou lorsque votre proxy effectue une rotation des informations d'identification. Pour plus de détails techniques sur l'authentification AWS KMS auprès du proxy de magasin de clés externe, veuillez consulter la rubrique Authentification dans la spécification de l'API du proxy de magasin de clés externe AWS KMS (langue française non garantie).

Pour vous permettre d'effectuer une rotation de vos informations d'identification sans perturber les Services AWS qui utilisent des clés KMS dans votre magasin de clés externe, nous recommandons que le proxy de magasin de clés externe prenne en charge au moins deux informations d'identification valides pour AWS KMS. Cela garantit que vos anciennes informations d'identification continuent de fonctionner pendant que vous fournissez vos nouvelles informations d'identification à AWS KMS.

Pour vous aider à suivre l'âge de votre identifiant d'authentification proxy, définissez AWS KMS une CloudWatch métrique Amazon, XksProxyCredentialAge. Vous pouvez utiliser cette métrique pour créer une CloudWatch alarme qui vous avertit lorsque l'âge de votre identifiant atteint un seuil que vous avez établi.

Pour garantir que votre proxy de magasin de clés externe ne réponde qu'à AWS KMS, certains proxys de clés externes prennent en charge le protocole Transport Layer Security mutuel (mTLS). Pour plus de détails, consultez Authentification mTLS (facultatif).

API de proxy

Pour prendre en charge un magasin de clés externe AWS KMS, un proxy de magasin de clés externe doit implémenter les API de proxy requises, comme décrit dans la spécification de l'API du proxy de magasin de clés externe AWS KMS (langue française non garantie). Ces requêtes API du proxy sont les seules qu'AWS KMS envoie au proxy. Bien que vous n'envoyiez jamais ces requêtes directement, le fait de les connaître peut vous aider à résoudre les problèmes qui pourraient survenir avec votre magasin de clés externe ou son proxy. Par exemple, AWS KMS inclut des informations sur la latence et les taux de réussite de ces appels d'API dans ses CloudWatch statistiques Amazon pour les magasins de clés externes. Pour plus de détails, consultez Surveiller un magasin de clés externe.

Le tableau suivant répertorie et décrit chacune des API de proxy. Il inclut également les opérations AWS KMS qui déclenchent un appel à l'API de proxy et toutes les exceptions d'opération AWS KMS liées à l'API de proxy.

API de proxy Description Opérations AWS KMS liées
Decrypt AWS KMS envoie le texte chiffré à déchiffrer et l'ID de la clé externe à utiliser. L'algorithme de chiffrement requis est AES_GCM. Décrypter, ReEncrypt
Encrypt AWS KMS envoie les données à chiffrer et l'ID de la clé externe à utiliser. L'algorithme de chiffrement requis est AES_GCM. Chiffrer, GenerateDataKey, GenerateDataKeyWithoutPlaintextReEncrypt
GetHealthStatus AWS KMS demande des informations sur l'état du proxy et de votre gestionnaire de clés externe.

L'état de chaque gestionnaire de clés externe peut être l'un des suivants.

  • Active : sain ; peut assurer le trafic

  • Degraded : défectueux, mais peut assurer le trafic

  • Unavailable : défectueux ; ne peut pas assurer le trafic

CreateCustomKeyStore(pour la connectivité des points de terminaison publics), ConnectCustomKeyStore(pour la connectivité des services de point de terminaison VPC)

Si toutes les instances externes du gestionnaire de clés sont Unavailable, les tentatives de création ou de connexion du magasin de clés échouent avec l'exception XksProxyUriUnreachableException.

GetKeyMetadata AWS KMS demande des informations sur la clé externe associée à une clé KMS dans votre magasin de clés externe.

La réponse inclut la spécification de la clé (AES_256), l'utilisation de la clé ([ENCRYPT, DECRYPT]) et indique si la clé externe est ENABLED ou DISABLED.

CreateKey

Si la spécification de la clé n'est pas AES_256, si l'utilisation de la clé n'est pas [ENCRYPT, DECRYPT], ou si l'état est DISABLED, l'opération CreateKey échoue avec l'exception XksKeyInvalidConfigurationException.

Double chiffrement

Les données chiffrées par une clé KMS dans un magasin de clés externe sont chiffrées deux fois. Tout d'abord, AWS KMS chiffre les données avec des éléments de clé AWS KMS spécifiques à la clé KMS. Ensuite, le texte chiffré au moyen d'AWS KMS est chiffré par votre gestionnaire de clés externe à l'aide de votre clé externe. Ce processus est connu sous le nom de double chiffrement.

Le double chiffrement garantit que les données chiffrées par une clé KMS dans un magasin de clés externe sont au moins aussi robustes que le texte chiffré au moyen d'une clé KMS standard. Il protège également votre texte brut en transit depuis AWS KMS vers votre proxy de magasin de clés externe. Grâce au double chiffrement, vous gardez le contrôle total de vos textes chiffrés. Si vous révoquez définitivement l'accès d'AWS à votre clé externe par le biais de votre proxy externe, tout texte chiffré restant dans AWS est en fait détruit par chiffrement.


                Double chiffrement des données protégées par une clé KMS dans un magasin de clés externe

Pour activer le double chiffrement, chaque clé KMS d'un magasin de clés externe possède deux clés de sauvegarde cryptographiques :

  • Des éléments de clé AWS KMS uniques à la clé KMS. Ces éléments de clé sont générés et utilisés uniquement dans les modules de sécurité matériels certifiés FIPS 140-2 - Niveau de sécurité 3 AWS KMS.

  • Une clé externe dans votre gestionnaire de clés externe.

Le double chiffrement a les effets suivants :

  • AWS KMS ne peut pas déchiffrer un texte chiffré au moyen d'une clé KMS dans un magasin de clés externe sans accéder à vos clés externes via votre proxy de magasin de clés externe.

  • Vous ne pouvez pas déchiffrer un texte chiffré au moyen d'une clé KMS dans un magasin de clés externe situé à l'extérieur d'AWS, même si vous possédez sa clé externe.

  • Vous ne pouvez pas recréer une clé KMS qui a été supprimée d'un magasin de clés externe, même si vous possédez ses éléments de clé externes. Chaque clé KMS possède des métadonnées uniques qu'elle inclut dans le texte chiffré symétrique. Une nouvelle clé KMS ne serait pas en mesure de déchiffrer le texte chiffré au moyen de la clé d'origine, même si elle utilisait les mêmes éléments de clé externes.

Pour un exemple de double chiffrement en pratique, veuillez consulter la rubrique Fonctionnement des magasins de clés externes.

Fonctionnement des magasins de clés externes

Votre magasin de clés externe, votre proxy de magasin de clés externe et votre gestionnaire de clés externe travaillent ensemble pour protéger vos ressources AWS. La procédure suivante décrit le flux de travail de chiffrement d'un Service AWS typique qui chiffre chaque objet sous une clé de données unique protégée par une clé KMS. Dans ce cas, vous avez choisi une clé KMS dans un magasin de clés externe pour protéger l'objet. L'exemple montre comment AWS KMS utilise le double chiffrement pour protéger la clé de données en transit et garantir que le texte chiffré généré par une clé KMS dans un magasin de clés externe est toujours au moins aussi robuste que le texte chiffré qui a été chiffré par une clé KMS symétrique standard contenant des éléments de clé dans AWS KMS.

Les méthodes de chiffrement utilisées par chaque Service AWS réel qui s'intègre à AWS KMS varient. Pour plus de détails, veuillez consulter la rubrique « Protection des données » dans le chapitre Sécurité de la documentation Service AWS.


            Fonctionnement des magasins de clés externes
  1. Vous ajoutez un nouvel objet à votre ressource Service AWS. Pour chiffrer l'objet, Service AWS envoie une GenerateDataKeydemande à l'AWS KMSaide d'une clé KMS dans votre banque de clés externe.

  2. AWS KMS génère une clé de données symétrique de 256 bits et prépare l'envoi d'une copie de la clé de données en texte brut à votre gestionnaire de clés externe via votre proxy de magasin de clés externe. AWS KMS commence le processus de double chiffrement en chiffrant la clé de données en texte brut avec les éléments de clé AWS KMS associés à la clé KMS dans le magasin de clés externe.

  3. AWS KMS envoie une requête de chiffrement au proxy de magasin de clés externe associé au magasin de clés externe. La requête inclut le texte chiffré de la clé de données à chiffrer et l'ID de la clé externe associée à la clé KMS. AWS KMS signe la requête à l'aide des informations d'identification d'authentification du proxy pour votre proxy de magasin de clés externe.

    La copie en texte brut de la clé de données n'est pas envoyée au proxy du magasin de clés externes.

  4. Le proxy de magasin de clés externe authentifie la requête, puis transmet la requête de chiffrement à votre gestionnaire de clés externe.

    Certains proxys de magasin de clés externe implémentent également une politique d'autorisation facultative qui permet uniquement à certains principaux d'effectuer des opérations dans des conditions spécifiques.

  5. Votre gestionnaire de clés externe chiffre le texte chiffré de la clé de données à l'aide de la clé externe spécifiée. Le gestionnaire de clés externe renvoie la clé de données doublement chiffrée à votre proxy de magasin de clés externe, qui la renvoie à AWS KMS.

  6. AWS KMS renvoie à l'Service AWS la clé de données en texte brut et la copie doublement chiffrée de cette clé de données.

  7. L'Service AWS utilise la clé de données en texte brut pour chiffrer l'objet ressource, détruit la clé de données en texte brut et stocke la clé de données chiffrée avec l'objet chiffré.

    Certains Services AWS peuvent mettre en cache la clé de données en texte brut afin de l'utiliser pour plusieurs objets ou de la réutiliser tant que la ressource est en service. Pour plus de détails, consultez Comment les clés KMS inutilisables affectent les clés de données.

Pour déchiffrer l'objet chiffré, l'Service AWS doit renvoyer la clé des données chiffrées à AWS KMS dans une requête Decrypt. Pour déchiffrer la clé de données chiffrée, AWS KMS doit renvoyer la clé de données chiffrée à votre proxy de magasin de clés externe avec l'ID de la clé externe. Si la requête de déchiffrement adressée au proxy de magasin de clés externe échoue pour quelque raison que ce soit, AWS KMS ne peut pas déchiffrer la clé de données chiffrée et l'Service AWS ne peut pas déchiffrer l'objet chiffré.