Pourquoi ai-je reçu une erreur d'autorisation GetBucketAcl Amazon S3 lors de la mise à jour de la configuration de la liste CRL de mon autorité de certification privée ACM ?

Lecture de 3 minute(s)
0

J'ai mis à jour mon autorité de certification privée (CA) AWS Certificate Manager (ACM) afin de configurer une liste de révocation de certificats (CRL). Toutefois, un message d'erreur de ce type s'affiche : « Le principal de service de la CA privée ACM 'acm-pca.amazonaws.com' nécessite les autorisations 's3:GetBucketAcl'.» Comment résoudre ce problème ?

Brève description

L'autorité de certification privée ACM place la CRL dans un compartiment Amazon Simple Storage Service (Amazon S3) que vous avez désigné pour l’utilisation. Votre compartiment Amazon S3 doit être sécurisé par une politique d'autorisations associée. Les utilisateurs autorisés et les principaux de service ont besoin de l'autorisation Put pour autoriser ACM Private CA à placer des objets dans le compartiment, et de l'autorisation Get pour les récupérer.

Pour plus d'informations, consultez Politiques d'accès pour les listes CRL dans Amazon S3.

Résolution

Suivez ces instructions pour remplacer la stratégie Amazon S3 par défaut par la politique moins permissive suivante.

Remarque : Si vous recevez des erreurs lors de l'exécution de l’interface de la ligne de commandes (AWS CLI), assurez-vous d'utiliser la version la plus récente de l’interface de la ligne de commande AWS (AWS CLI).

1.    Ouvrez la console Amazon S3.

2.    Dans la liste des compartiments, ouvrez le compartiment dans lequel vous souhaitez placer la liste CRL.

3.    Sélectionnez l'onglet Permissions (Autorisations).

4.    Dans Bucket policy(politique des compartiments), choisissez Edit(Modifier).

5.    Dans Policy(Politique), copiez et collez la politique suivante :

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "acm-pca.amazonaws.com"
      },
      "Action": [
        "s3:PutObject",
        "s3:PutObjectAcl",
        "s3:GetBucketAcl",
        "s3:GetBucketLocation"
      ],
      "Resource": [
        "arn:aws:s3:::your-crl-storage-bucket/*",
        "arn:aws:s3:::your-crl-storage-bucket"
      ],
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "account",
          "aws:SourceArn": "arn:partition:acm-pca:region:account:certificate-authority/CA_ID"
        }
      }
    }
  ]
}

Remarque : remplacez le nom du compartiment S3, l'identifiant du compte et l'ARN ACM PCA par vos variables.

6.    Sélectionnez Save changes (Enregistrer les modifications).

7.    Suivez les instructions pour chiffrer vos listes CRL.

8.    Mettez à jour la configuration de révocation de l'autorité de certification à l'aide de la commande update-certificate-authority de l'interface de ligne de commande AWS, comme ci-dessous :

$ aws acm-pca update-certificate-authority --certificate-authority-arn <Certification_Auhtority_ARN> --revocation-configuration file://revoke_config.txt

Le fichier revoke_config.txt contient des informations de révocation similaires aux informations suivantes :

{
    "CrlConfiguration": {
        "Enabled": <true>,
        "ExpirationInDays": <7>,
        "CustomCname": "<example1234.cloudfront.net>",
        "S3BucketName": "<example-test-crl-bucket-us-east-1>",
        "S3ObjectAcl": "<BUCKET_OWNER_FULL_CONTROL>"
    }
}

Remarque :

  • Si vous avez désactivé la fonctionnalité Block Public Access (BPA) dans Amazon S3, vous pouvez spécifier BUCKET_OWNER_FULL_CONTROL ou PUBLIC_READ comme valeur.
  • Si vous avez configuré votre liste CRL à l'aide de la console de gestion AWS, vous pouvez recevoir une erreur « ValidationException ». Répétez l'étape 8 pour mettre à jour la configuration de révocation de l'autorité de certification à l'aide de l’interface de ligne de commande AWS (CLI).

Informations connexes

Activation de la fonctionnalité S3 Block Public Access (BPA)

Bonnes pratiques de sécurité pour Amazon S3

GetBucketAcl

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 2 ans