Pourquoi je reçois le message d'erreur « Le texte chiffré fait référence à une clé principale du client qui n'existe pas, n'existe pas dans cette région ou à laquelle vous n’avez pas l’autorisation d’accéder » lorsque je télécharge ou copie un objet depuis mon compartiment Amazon S3 ?

Lecture de 3 minute(s)
0

L'erreur suivante s'affiche lorsque j'essaie de télécharger ou de copier un objet depuis mon compartiment Amazon Simple Storage Service (Amazon S3) : Le texte chiffré fait référence à une clé principale du client qui n'existe pas, qui n'existe pas dans cette région ou à laquelle vous n’avez pas l’autorisation d’accéder.

Résolution

Cette erreur s'affiche lorsque les deux conditions suivantes sont remplies :

  • L'objet qui est stocké dans le compartiment auquel vous envoyez des demandes est chiffré à l'aide d'une clé AWS Key Management Service (AWS KMS).
  • Le rôle ou l'utilisateur AWS Identity and Access Management (IAM) à l'origine des demandes ne dispose pas des autorisations suffisantes pour accéder à la clé AWS KMS utilisée pour chiffrer les objets.

Remarque : Si vous recevez des erreurs lors de l'exécution des commandes de l'interface de la ligne de commande AWS (AWS CLI), vérifiez que vous utilisez la version la plus récente de l’AWS CLI.

Vous pouvez vérifier le chiffrement d'un objet à l'aide de la commande head-object de l'AWS CLI :

aws s3api head-object --bucket my-bucket --key my-object

Veillez à effectuer les opérations suivantes dans la commande précédente :

  • Remplacez my-bucket par le nom de votre compartiment.
  • Remplacez my-object par le nom de votre objet.

Le résultat de cette commande ressemble à ce qui suit :

{
  "AcceptRanges": "bytes",
  "ContentType": "text/html",
  "LastModified": "Thu, 16 Apr 2015 18:19:14 GMT",
  "ContentLength": 77,
  "VersionId": "null",
  "ETag": "\"30a6ec7e1a9ad79c203d05a589c8b400\"",
  "ServerSideEncryption": "aws:kms",
  "Metadata": {},
  "SSEKMSKeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
  "BucketKeyEnabled": true
}

Le champ SSEKMSKeyId de la sortie indique la clé AWS KMS qui a été utilisée pour chiffrer l'objet.

Pour résoudre cette erreur, effectuez l'une des opérations suivantes :

  • Assurez-vous que la politique associée à l'utilisateur ou au rôle IAM dispose des autorisations requises. Exemple :
{
  "Version": "2012-10-17",
  "Statement": {
    "Effect": "Allow",
    "Action": [
      "kms:DescribeKey",
      "kms:GenerateDataKey",
      "kms:Decrypt"
    ],
    "Resource": [
      "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
    ]
  }
}
  • Assurez-vous que la politique AWS KMS dispose des autorisations requises. Exemple :
{
  "Version": "2012-10-17",
  "Statement": {
    "Effect": "Allow",
    "Principal": {
      "AWS": "arn:aws:iam::AWS-account-ID:user/user-name-1"
    },
    "Action": [
      "kms:DescribeKey",
      "kms:GenerateDataKey",
      "kms:Decrypt"
    ],
    "Resource": "*"
  }
}

Si l'utilisateur ou le rôle IAM et la clé AWS KMS proviennent de comptes AWS différents, assurez-vous de ce qui suit :

  • La politique associée à l'entité IAM possède les autorisations AWS KMS requises.
  • La stratégie de clé AWS KMS accorde les autorisations requises à l'entité IAM.

Important : Vous ne pouvez pas utiliser les clés gérées par AWS dans des cas d'utilisations multicomptes car les politiques relatives aux clés gérées par AWS ne peuvent pas être modifiées.

Pour obtenir des informations détaillées sur une clé AWS KMS, exécutez la commande describe-key :

aws kms describe-key --key-id arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

Vous pouvez également utiliser la console AWS KMS pour afficher les détails d'une clé AWS KMS.

Remarque : Assurez-vous que la clé AWS KMS utilisée pour chiffrer l'objet est activée.

Informations connexes

Mon compartiment Amazon S3 est chiffré par défaut à l'aide d'une clé AWS KMS personnalisée. Comment autoriser les utilisateurs à effectuer des téléchargements depuis et vers le compartiment ?

Dois-je spécifier la clé AWS KMS lorsque je télécharge un objet chiffré par KMS depuis Amazon S3 ?

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an