Je souhaite que mon compartiment Amazon Simple Storage Service (Amazon S3) stocke uniquement les objets chiffrés par une clé AWS Key Management Service (AWS KMS) de mon compte AWS. Comment être sûr que seuls ces objets peuvent être chargés dans mon compartiment ?

Utilisez le chiffrement par défaut Amazon S3 pour vous assurer que les objets chargés sans en-têtes de chiffrement (par exemple x-amz-server-side-encryption et x-amz-server-side-encryption-aws-kms-key-id) sont chiffrés par AWS KMS avant d'être stockés dans votre compartiment S3. Ensuite, utilisez la stratégie de compartiment afin de vous assurer que les objets sans autre paramètre de chiffrement (AES-256) ne peuvent pas être chargés et que les objets chargés avec le chiffrement AWS KMS contiennent un ID de clé de votre compte AWS.

Remarque : Pour charger un objet chiffré par une clé AWS KMS, la clé et le compartiment S3 doivent se trouver dans la même région AWS.

Chiffrement par défaut Amazon S3

Suivez ces étapes pour définir le chiffrement par défaut Amazon S3 de votre compartiment sur AWS KMS à l'aide de la console Amazon S3 :

  1. Ouvrez la console Amazon S3.
  2. Choisissez le compartiment que vous souhaitez utiliser pour les objets chiffrés par AWS KMS.
  3. Choisissez la vue Properties (Propriétés).
  4. Choisissez Default encryption (Chiffrement par défaut), puis sélectionnez AWS-KMS.
  5. Choisissez Save.

Remarque : Pour activer le chiffrement par défaut Amazon S3 à l'aide de l'API REST, de l'interface de ligne de commande AWS (AWS CLI) ou d'un kit AWS SDK, consultez Comment configurer le chiffrement par défaut d'Amazon S3 pour un compartiment S3 ?

Stratégie de compartiment

Procédez comme suit pour configurer votre stratégie de compartiment de façon à refuser les demandes de chargement qui utilisent un autre paramètre de chiffrement (AES-256) ou qui utilisent le chiffrement AWS KMS, mais contiennent un ID de clé ne provenant pas de votre compte AWS :

  1. Ouvrez la console Amazon S3.
  2. Choisissez le compartiment que vous souhaitez utiliser pour les objets chiffrés par AWS KMS.
  3. Sélectionnez l'affichage Routes.
  4. Choisissez Stratégie de compartiment.
  5. Entrez une stratégie de compartiment similaire à ce qui suit :
    Avertissement : Remplacez samplebucketname par le nom de votre compartiment et remplacez us-east-1:111122223333 par la région AWS et l'ID de compte AWS appropriés.
{
    "Version": "2012-10-17",
    "Id": "PutObjPolicy",
    "Statement": [
        {
            "Sid": "DenySSE-S3",
            "Effect": "Deny",
            "Principal": "*",
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::samplebucketname/*",
            "Condition": {
                "StringEquals": {
                    "s3:x-amz-server-side-encryption": "AES256"
                }
            }
        },
  {
            "Sid": "RequireKMSEncryption",
            "Effect": "Deny",
            "Principal": "*",
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::samplebucketname/*",
            "Condition": {
                "StringNotLikeIfExists": {
                    "s3:x-amz-server-side-encryption-aws-kms-key-id": "arn:aws:kms:us-east-1:111122223333:key/*"
                }
            }
        }
    ]
}

Cette page vous a-t-elle été utile ? Oui | Non

Retour au Centre de connaissances AWS Support

Vous avez besoin d'aide ? Consultez le site du Centre AWS Support

Date de publication : 03/08/2018

Date de mise à jour : 31/08/2018