Comment puis-je résoudre l’erreur « Action execution failed » grâce à la correction automatique de la règle s3-bucket-logging-enabled d’AWS Config ?

Lecture de 3 minute(s)
0

Je souhaite utiliser le dossier d’exploitation AWS-ConfigureS3BucketLogging pour corriger les ressources non conformes. Cependant, la correction automatique échoue avec le message d’erreur « Action execution failed ».

Brève description

La règle AWS Config s3-bucket-logging-enabled vérifie si la journalisation est activée pour un compartiment Amazon Simple Storage Service (Amazon S3) cible. Le dossier d’exploitation AWS-ConfigureS3BucketLogging d’AWS Systems Manager Automation corrige ensuite les ressources non conformes.

Le dossier d’exploitation AWS-ConfigureS3BucketLogging doit disposer des autorisations suivantes :

  • Politique de confiance configurée dans AWS Identity and Access Management (IAM) pour un rôle de service d’automatisation. Ces informations sont transmises en tant que paramètre AutomationAssumeRole.
  • Permissions PutBucketLogging avec un compartiment S3 configuré pour stocker les journaux.

Résolution

Remarque : si des erreurs surviennent lorsque vous exécutez des commandes de l’interface de la ligne de commande AWS (AWS CLI), consultez la page Résoudre les erreurs liées à l’AWS CLI. Vérifiez également que vous utilisez bien la version la plus récente de l’AWS CLI.

Pour résoudre l’erreur Action execution failed, vous devez exécuter la commande describe-remediation-execution-status d’AWS CLI pour consulter le message d’erreur détaillé.

Pour plus d’informations, consultez Comment puis-je résoudre les problèmes liés aux actions de correction qui ont échoué dans AWS Config ?

Accès refusé

Vous recevez le message d’erreur suivant :

« Step fails when it is Execute/Cancelling action. An error occurred (AccessDenied) when calling the PutBucketLogging operation: Access Denied. Please refer to Automation Service Troubleshooting Guide for more diagnosis details. »

Cette erreur se produit, car le rôle AutomationAssumeRole n’est pas autorisé à appeler l’API PutBucketLogging sur les compartiments S3 non conformes. Utilisez l’exemple de politique suivant pour autoriser le rôle à appeler l’API PutBucketLogging :

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:PutBucketLogging",
      "Resource": [
        "arn:aws:s3:::<BUCKET_NAME_1>",
        "arn:aws:s3:::<BUCKET_NAME_2>",
        "arn:aws:s3:::<BUCKET_NAME_3>"
      ]
    }auto
  ]
}

Remarque : si vous devez corriger tous les compartiments S3 d’une région AWS, utilisez la clé de condition aws:RequestedRegion pour limiter l’autorisation du rôle.

Paramètres d’exécution non valides

Vous recevez le message d’erreur suivant :

« Invalid execution parameters sent to Systems Automation. The defined assume role is unable to be assumed. »

Cette erreur se produit, car Systems Manager Automation ne peut pas endosser le rôle AutomationAssumeRole. Utilisez l’exemple de politique suivant pour autoriser Systems Manager à endosser le rôle IAM :

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
         "Service": "ssm.amazonaws.com"
       },
       "Action": "sts:AssumeRole"
     }
  ]
}

Informations connexes

Correction des ressources non conformes à l’aide de règles AWS Config

Assurer la conformité des compartiments Amazon S3 à l’aide de la fonctionnalité de correction automatique d’AWS Config

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