Comment puis-je résoudre les erreurs 403 Accès refusé « Échec d’écriture S3 pour le compartiment » émises par Amazon S3 lors de la création d’une synchronisation des données de ressources pour l’inventaire Systems Manager ?

Lecture de 3 minute(s)
0

Je souhaite résoudre les erreurs 403 Accès refusé d’Amazon Simple Storage Service (Amazon S3) qui s’affichent lors de la création d’une synchronisation des données de ressources.

Résolution

Il existe deux méthodes pour configurer la synchronisation des données de ressources pour l’inventaire AWS Systems Manager :

  • Créez une synchronisation des données de ressources pour plusieurs comptes appartenant à la même organisation.
  • Créez une synchronisation des données de ressources pour plusieurs comptes qui ne font pas partie de la même organisation.

Pour résoudre les erreurs d’échec d’écriture du compartiment S3, procédez comme suit :

Résolution des problèmes pour plusieurs comptes appartenant à la même organisation

Vérifiez que la politique centrale du compartiment Amazon S3 dispose des autorisations requises pour autoriser plusieurs comptes AWS à envoyer des données d’inventaire vers le compartiment.

Pour créer une synchronisation des données de ressources pour plusieurs comptes au sein de la même organisation, utilisez l’API CreateResourceDataSync et veillez à spécifier le paramètre DestinationDataSharing. Dans AWS CloudTrail, vous pouvez vérifier la demande d’API pour le nom d’événement CreateResourceDataSync afin de confirmer que le paramètre DestinationDataSharing est inclus dans l’événement.

Remarque : Vous ne pouvez pas créer de synchronisation des données de ressources à partir de la console de gestion AWS lorsque la synchronisation des données de ressources concerne plusieurs comptes appartenant à la même organisation.

Voici un exemple de commande d’interface de la ligne de commande AWS (AWS CLI) pour CreateResourceDataSync :

aws ssm create-resource-data-sync --sync-name name --s3-destination "BucketName=DOC-EXAMPLE-BUCKET,Prefix=prefix-name,SyncFormat=JsonSerDe,Region=AWS Region ID,DestinationDataSharing={DestinationDataSharingType=Organization}"

Remarque : Si vous recevez des erreurs lors de l’exécution des commandes AWS CLI, assurez-vous que vous utilisez la version la plus récente d’AWS CLI.

Résolution des problèmes pour plusieurs comptes n’appartenant pas à la même organisation

Pour créer une synchronisation des données de ressources, vérifiez que la politique du compartiment S3 cible autorise les actions requises à partir du compte source.

Par exemple, les comptes A et B envoient les données d’inventaire à un compartiment S3 du compte C.

La politique du compartiment S3 du compte C est semblable à l’exemple de politique suivant :

{           
    "Version": "2012-10-17",  
    "Statement": [  
        {  
            "Sid": "SSMBucketPermissionsCheck",  
            "Effect": "Allow",  
            "Principal": {  
                 "Service": "ssm.amazonaws.com"    
            },  
            "Action": "s3:GetBucketAcl",  
            "Resource": "arn:aws:s3:::S3_bucket_name"  
         },  
         {  
             "Sid": " SSMBucketDelivery",  
             "Effect": "Allow",  
             "Principal": {  
                 "Service": "ssm.amazonaws.com"  
             },  
             "Action": "s3:PutObject",  
             "Resource": [  
                 "arn:aws:s3:::S3_bucket_name/*/accountid=AWS_AccountA_ID/*",  
                 "arn:aws:s3:::S3_bucket_name/*/accountid=AWS_AccountB_ID/*"  
           ],  
           "Condition": {  
               "StringEquals": {  
                   "aws:SourceAccount": [  
                       "AWS_AccountA_ID",  
                       "AWS_AccountB_ID"  
                    ],  
                    "s3:x-amz-acl": "bucket-owner-full-control"  
                },  
                "ArnLike": {  
                   "aws:SourceArn": [  
                        "arn:aws:ssm:*:AWS_AccountA_ID:resource-data-sync/*",  
                        "arn:aws:ssm:*:AWS_AccountB_ID:resource-data-sync/*"  
                   ]  
                }  
           }  
        }  
   ]  
}  

Remarque : Pour chiffrer la synchronisation des données de ressources, veillez à mettre à jour la stratégie de clé AWS Key Management Service (AWS KMS) et la politique du compartiment S3. Pour en savoir plus, consultez la page Procédure pas à pas : Utiliser la synchronisation des données de ressources pour agréger les données d’inventaire.

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