Comment chiffrer un dossier spécifique dans mon compartiment Amazon S3 à l'aide d'une clé AWS KMS ?

Lecture de 3 minute(s)
0

Je souhaite chiffrer un dossier spécifique dans mon compartiment Amazon Simple Storage Service (Amazon S3) à l'aide d'une clé AWS Key Management Service (AWS KMS).

Résolution

Utiliser la console Amazon S3

  1. Ouvrez la console Amazon S3.
  2. Accédez au dossier que vous souhaitez chiffrer.
    **Avertissement :**si votre dossier contient un grand nombre d'objets, il est possible que vous rencontriez une erreur de limitation. Pour éviter les erreurs de limitation, augmentez les limites des demandes Amazon S3 sur votre compartiment Amazon S3. Pour plus de conseils sur la résolution des erreurs de limitation, consultez la page Pourquoi est-ce que je reçois une erreur ThrottlingExceptions lors de l'envoi de demandes à AWS KMS ?
  3. Sélectionnez le dossier, puis sélectionnez Actions.
  4. Choisissez Modifier le chiffrement côté serveur.
  5. Pour activer le chiffrement côté serveur, choisissez Activer.
  6. Pour votre clé AWS Key Management Service (SSE-KMS), choisissez le type de clé de chiffrement.
  7. Sélectionnez la clé AWS KMS que vous souhaitez utiliser pour le chiffrement des dossiers.
    Remarque : la clé nommée aws/s3 est une clé par défaut gérée par AWS KMS. Vous pouvez chiffrer le dossier à l'aide de la clé par défaut ou d'une clé personnalisée.
  8. Choisissez Enregistrer les modifications.

Utiliser l'interface de ligne de commande AWS

Vous ne pouvez pas modifier le chiffrement d'un dossier existant à partir d'une commande de l'interface de ligne de commande AWS (AWS CLI). Exécutez plutôt une commande qui réplique le dossier avec le chiffrement AWS KMS activé.

Remarque : si vous recevez des messages d'erreur lors de l'exécution des commandes AWS CLI, vérifiez que vous utilisez la version la plus récente de l'interface de ligne de commande AWS.

Pour chiffrer les fichiers avec la clé AWS KMS par défaut (aws/s3), exécutez la commande suivante :

aws s3 cp s3://awsexamplebucket/abc s3://awsexamplebucket/abc --recursive --sse aws:kms

Cette syntaxe de commande réplique le dossier avec le chiffrement AWS KMS.

Pour chiffrer les fichiers à l'aide d'une clé AWS KMS personnalisée, exécutez la commande suivante :

aws s3 cp s3://awsexamplebucket/abc s3://awsexamplebucket/abc --recursive --sse aws:kms --sse-kms-key-id a1b2c3d4-e5f6-7890-g1h2-123456789abc

**Remarque :**remplacez --sse-kms-key-id par votre propre identifiant de clé.

Exiger que les prochains téléchargements chiffrent les objets avec AWS KMS

Une fois que vous avez modifié le paramètre de chiffrement, seuls les objets qui se trouvent déjà dans le dossier sont chiffrés. Vous pouvez charger des objets après cette modification sans chiffrement. Pour exiger que les prochains téléchargements chiffrent les objets avec AWS KMS, utilisez une politique de compartiment comme dans l'exemple suivant :

{
  "Version": "2012-10-17",
  "Id": "PutObjPolicy",
  "Statement": [
    {
      "Sid": "DenyIncorrectEncryptionHeader",
      "Effect": "Deny",
      "Principal": "*",
      "Action": "s3:PutObject",
      "Resource": "arn:aws:s3:::awsexamplebucket/awsexamplefolder/*",
      "Condition": {
        "StringNotEquals": {
          "s3:x-amz-server-side-encryption": "aws:kms"
        }
      }
    },
    {
      "Sid": "DenyUnEncryptedObjectUploads",
      "Effect": "Deny",
      "Principal": "*",
      "Action": "s3:PutObject",
      "Resource": "arn:aws:s3:::awsexamplebucket/awsexamplefolder/*",
      "Condition": {
        "Null": {
          "s3:x-amz-server-side-encryption": true
        }
      }
    }
  ]
}

Cette politique de compartiment refuse l'accès à s3:PutObject sur docexamplebucket/docexamplefolder/* sauf si la demande inclut un chiffrement côté serveur avec AWS KMS.

Informations connexes

Utilisation du chiffrement côté serveur avec des clés AWS KMS (SSE-KMS)

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 8 mois