¿Cómo puedo solucionar el «Error de escritura de S3 para el bucket» (error 403 de acceso denegado) de Amazon S3 al crear la sincronización de datos de recursos para el inventario de Systems Manager?

3 minutos de lectura
0

Quiero solucionar los errores 403 de acceso denegado de Amazon Simple Storage Service (Amazon S3) al crear una sincronización de datos de recursos.

Solución

Hay dos métodos para configurar la sincronización de datos de recursos para el inventario de AWS Systems Manager:

  • Crear una sincronización de datos de recursos para varias cuentas de la misma organización.
  • Crear una sincronización de datos de recursos para varias cuentas que no pertenezcan la misma organización.

Para solucionar los errores de escritura de S3 para el bucket, siga los siguientes pasos:

Solución de problemas en caso de tener varias cuentas en la misma organización

Asegúrese de que la política central de buckets de Amazon S3 cuente con los permisos necesarios para permitir que varias cuentas de AWS envíen datos de inventario al bucket.

Para crear una sincronización de datos de recursos para varias cuentas de la misma organización, utilice la API CreateResourceDataSync y asegúrese de indicar el parámetro DestinationDataSharing. Desde AWS CloudTrail, puede comprobar la solicitud de la API para el nombre del evento CreateResourceDataSync y, de esta manera, confirmar que el parámetro DestinationDataSharing se haya incluido en el evento.

Nota: Cuando la sincronización de datos de recursos se lleva a cabo para varias cuentas de la misma organización, no es posible crear la sincronización desde la consola de administración de AWS.

A continuación, se muestra un ejemplo de comando de la interfaz de la línea de comandos de AWS (AWS CLI) para 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}"

Nota: Si se producen errores al ejecutar los comandos de AWS CLI, asegúrese de utilizar la versión más reciente.

Solución de problemas en caso de haber varias cuentas que no pertenezcan a la misma organización

Para crear la sincronización de datos de recursos, confirme que la política del bucket de S3 de destino permita llevar a cabo las acciones necesarias desde la cuenta de origen.

Por ejemplo, que la cuenta A y la cuenta B envíen los datos de inventario a un bucket de S3 de la cuenta C.

La política de bucket de S3 de la cuenta C es similar al siguiente ejemplo:

{           
    "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/*"  
                   ]  
                }  
           }  
        }  
   ]  
}  

Nota: Para cifrar la sincronización de datos de recursos, asegúrese de actualizar la política de claves de AWS Key Management Service (AWS KMS) y la política de bucket de S3. Para obtener más información, consulte Tutorial: usar la sincronización de datos de recursos para añadir datos de inventario.

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año