Knowledge Center Monthly Newsletter - March 2025
Stay up to date with the latest from the Knowledge Center. See all new and updated Knowledge Center articles published in the last month and re:Post’s top contributors.
¿Cómo puedo configurar la replicación entre cuentas en mis buckets de Amazon S3 con el bloqueo de objetos?
Quiero configurar la replicación entre cuentas en un bucket de Amazon Simple Storage Service (Amazon S3) donde esté activado el bloqueo de objetos.
Resolución
Para configurar la replicación entre cuentas en un bucket de Amazon S3 con el bloqueo de objetos, complete los siguientes requisitos previos:
- Asegúrese de que el bucket de destino tenga activado el bloqueo de objetos. Si el bloqueo de objetos no está activado en el bucket de destino, póngase en contacto con AWS Support explicando su solicitud.
- Asegúrese de poder acceder a la Interfaz de la línea de comandos de AWS (AWS CLI) o AWS CloudShell.
- Asegúrese de tener el token de bloqueo de objetos antes de iniciar la replicación.
Paso 1: Crear un rol de IAM para la replicación con los permisos necesarios
1. Cree un rol de replicación en la consola de AWS Identity and Access Management (IAM) para la cuenta de origen con una relación de confianza para Amazon S3.
La relación de confianza es similar a la siguiente:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "s3.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
2. Asegúrese de adjuntar los siguientes permisos al rol de IAM:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SourceBucketPermissions", "Effect": "Allow", "Action": [ "s3:GetObjectRetention", "s3:GetObjectVersionTagging", "s3:GetObjectVersionAcl", "s3:ListBucket", "s3:GetObjectVersionForReplication", "s3:GetObjectLegalHold", "s3:GetReplicationConfiguration" ], "Resource": [ "arn:aws:s3:::SourceBucketName/*", "arn:aws:s3:::SourceBucketName" ] }, { "Sid": "DestinationBucketPermissions", "Effect": "Allow", "Action": [ "s3:ReplicateObject", "s3:ObjectOwnerOverrideToBucketOwner", "s3:GetObjectVersionTagging", "s3:ReplicateTags", "s3:ReplicateDelete" ], "Resource": [ "arn:aws:s3:::DestBucketName/*" ] } ] }
3. Si utiliza las claves de AWS Key Management Service (AWS KMS), asegúrese de adjuntar también los siguientes permisos:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SourceBucketPermissions", "Effect": "Allow", "Action": [ "s3:GetObjectRetention", "s3:GetObjectVersionTagging", "s3:GetObjectVersionAcl", "s3:ListBucket", "s3:GetObjectVersionForReplication", "s3:GetObjectLegalHold", "s3:GetReplicationConfiguration" ], "Resource": [ "arn:aws:s3:::SourceBucketName/*", "arn:aws:s3:::SourceBucketName" ] }, { "Sid": "DestinationBucketPermissions", "Effect": "Allow", "Action": [ "s3:ReplicateObject", "s3:ObjectOwnerOverrideToBucketOwner", "s3:GetObjectVersionTagging", "s3:ReplicateTags", "s3:ReplicateDelete" ], "Resource": [ "arn:aws:s3:::DestBucketName/*" ] }, { "Sid": "SourceBucketKMSKey", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Effect": "Allow", "Resource": "SourceBucketKMSKeyARN" }, { "Sid": "DestinationBucketKMSKey", "Action": [ "kms:Encrypt", "kms:GenerateDataKey" ], "Effect": "Allow", "Resource": "DestinationBucketKMSKeyARN" } ] }
Paso 2: Actualizar los permisos de la clave de AWS KMS
Asegúrese de que la clave de AWS KMS de la cuenta de destino permita el acceso al rol IAM de replicación en la cuenta de origen.
Ejemplo:
{ "Sid": "AllowS3ReplicationSourceRoleToUseTheKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789101:role/s3-replication-role" }, "Action": [ "kms:GenerateDataKey", "kms:Encrypt" ], "Resource": "*" }
Nota: No puede usar la clave de AWS KMS administrada aws/S3 para la replicación entre cuentas. Sin embargo, puede utilizar el cifrado SSE-S3.
Nota: Si utiliza un asterisco (*) como Recurso en la política de claves, esta concede permiso para la clave únicamente al rol de replicación. La política no permite que la función de replicación aumente sus permisos.
Paso 3: Agregar la siguiente política de bucket a la cuenta de destino
En la sección Principal, asegúrese de añadir el ARN del rol de IAM de replicación que ha creado en el paso 1.
{ "Version": "2012-10-17", "Id": "PolicyForDestinationBucket", "Statement": [ { "Sid": "ReplicationPermissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::SourceBucket-account-ID:role/service-role/source-account-IAM-role" }, "Action": [ "s3:ReplicateDelete", "s3:ReplicateObject", "s3:ObjectOwnerOverrideToBucketOwner", "s3:GetBucketVersioning", "s3:PutBucketVersioning" ], "Resource": [ "arn:aws:s3:::DestBucketName/*", "arn:aws:s3:::DestBucketName" ] } ] }
Paso 4: Crear un archivo replication.json
Cree un archivo llamado replication.json que sea similar al siguiente en la cuenta de origen:
{ "Role": "arn:aws:iam::123456789012:role/s3-replication-role", "Rules": [ { "Status": "Enabled", "Priority": 10, "DeleteMarkerReplication": { "Status": "Disabled" }, "Filter": { "Prefix": "" }, "Destination": { "Bucket": "arn:aws:s3:::destination_bucket" } } ] }
Este archivo contiene los parámetros de la formación JSON que configuran la replicación. Estos son los mismos parámetros que puede utilizar al configurar la replicación mediante la consola de Amazon S3. Debe usar la AWS CLI para configurar la replicación, ya que todavía no puede usar la consola de Amazon S3 para hacerlo.
Asegúrese de reemplazar s3-replication-role por el rol de IAM del Paso 1. Además, incluya el ARN del bucket de destino, la especificación del prefijo y las preferencias de eliminación de marcadores, según sea necesario.
Paso 5: Configurar la replicación
Tras guardar la configuración anterior, pase el archivo mediante el siguiente comando de la AWS CLI:
aws s3api put-bucket-replication --bucket <SOURCE BUCKET> --replication-configuration file://Replication.json --token <TOKEN>
Para obtener el valor del token de bloqueo de objetos que se utilizará en este comando, póngase en contacto con AWS Support. El <TOKEN> valor es el token de bloqueo de objetos para el bucket de origen.
Paso 6: Verificación
Al ejecutar el comando anterior, la regla de replicación se añade al bucket de origen. Esta regla permite que los objetos recién añadidos se repliquen en el bucket de destino. Puede probar la regla añadiendo nuevos objetos al origen y comprobando el destino.
Nota: Puede actualizar la configuración de la replicación mediante la consola Amazon S3 después de configurar la replicación. Para replicar objetos cifrados con AWS KMS, modifique la configuración de la replicación seleccionando Replicar objetos cifrados con AWS KMS en Cifrado.
Información relacionada
Configuración del bloqueo de objetos de S3 mediante la consola
Activación del bloqueo de objetos de S3
Replicación de objetos creados con cifrado del servidor (SSE-C, SSE-S3, SSE-KMS)

Contenido relevante
- preguntada hace 2 meseslg...
- preguntada hace 2 meseslg...
- preguntada hace un meslg...
- preguntada hace 2 meseslg...
- Respuesta aceptadapreguntada hace un meslg...
- OFICIAL DE AWSActualizada hace un año
- OFICIAL DE AWSActualizada hace 3 meses
- OFICIAL DE AWSActualizada hace 3 años
- OFICIAL DE AWSActualizada hace 5 meses