Dois-je utiliser une clé gérée par AWS KMS ou une clé gérée par le client pour chiffrer mes objets sur Amazon S3 ?

Dernière mise à jour : 01/11/2021

Je veux utiliser le chiffrement côté serveur avec AWS Key Management Service (SSE-KMS) pour mes objets stockés sur Amazon Simple Storage Service (Amazon S3). Dois-je utiliser une clé AWS KMS gérée par le client ? Ou dois-je utiliser la clé gérée par AWS KMS appelée aws/s3 ? Quelle est la différence entre les deux ?

Solution

AWS KMS gère la clé KMS par défaut aws/s3, mais vous avez un contrôle total sur une clé gérée par le client.

Utilisation de la clé KMS aws/s3 par défaut

Remarque : le nom de la clé KMS est aws/s3 dans la console Amazon S3, mais vous ne spécifiez pas ce nom ou cet ID si vous utilisez AWS Command Line Interface (AWS CLI).

Envisagez d'utiliser la clé KMS aws/s3 par défaut si :

  • Vous téléchargez ou accédez à des objets S3 à l'aide des principaux AWS Identity and Access Management (IAM) qui se trouvent dans le même compte AWS que la clé KMS.
  • Vous ne souhaitez pas gérer les politiques pour la clé KMS.
  • Vous ne souhaitez pas faire tourner la clé KMS.

Pour chiffrer un objet en utilisant la clé KMS par défaut aws/s3, définissez SSE-KMS comme méthode de chiffrement lors du téléchargement, mais ne spécifiez pas de clé :

aws s3 cp ./mytextfile.txt s3://DOC-EXAMPLE-BUCKET/ --sse aws:kms

Remarque : si vous recevez des erreurs lors de l'exécution de commandes AWS CLI, assurez-vous d'utiliser la version la plus récente de l'AWS CLI.

Utilisation d'une clé gérée par le client

Envisagez d'utiliser une clé gérée par le client si :

  • Vous souhaitez créer, faire tourner, désactiver ou définir des contrôles d'accès pour la clé.
  • Vous souhaitez autoriser l'accès entre comptes à vos objets S3. Vous pouvez configurer la politique d'une clé gérée par le client afin d'autoriser l'accès à partir d'un autre compte.

Pour chiffrer un objet à l'aide d'une clé gérée par le client, définissez SSE-KMS comme étant la méthode de chiffrement lors du chargement. Ensuite, spécifiez votre clé gérée par le client comme clé (--sse-kms-key-id) :

aws s3 cp ./mytextfile.txt s3://DOC-EXAMPLE-BUCKET/ --sse aws:kms --sse-kms-key-id testkey

Pour contrôler l'accès à votre clé gérée par le client, modifiez la politique de clé. Pour plus d'informations sur la création d'une politique de clé, consultez Exemple de politique de clé.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?