Uso de un informe de inventario entregado a la cuenta de destino para copiar objetos entre Cuentas de AWS - Amazon Simple Storage Service

Uso de un informe de inventario entregado a la cuenta de destino para copiar objetos entre Cuentas de AWS

Utilice el inventario de Amazon S3 a fin de crear un informe de inventario y utilice este informe a fin de crear una lista de objetos para copiar con la herramienta de operaciones por lotes de S3. Para obtener más información sobre cómo utilizar un manifiesto CSV en la cuenta de origen o destino, consulte Uso de un manifiesto CSV almacenado en la cuenta de origen para copiar objetos entre Cuentas de AWS.

El inventario de Amazon S3 genera inventarios de los objetos de un bucket. La lista resultante se publica en un archivo saliente. El bucket cuyo inventario se crea se denomina bucket de origen y el bucket donde se almacena el archivo de informe de inventario se denomina bucket de destino.

Es posible configurar el informe de Amazon S3 Inventory para que se entregue a otra Cuenta de AWS. Esto permite a las operaciones por lotes de S3 leer el informe de inventario cuando se crea el trabajo en la cuenta de destino.

Para obtener más información sobre los buckets de origen y destino de inventario de Amazon S3, consulte Buckets de origen y destino.

La forma más sencilla de configurar un inventario es a través de la AWS Management Console, pero también puede utilizar la API REST, la AWS Command Line Interface (AWS CLI) o los SDK de AWS.

El siguiente procedimiento de la consola contiene los pasos de alto nivel para establecer permisos para un trabajo de Operaciones por lotes de S3. En este procedimiento se copian objetos de una cuenta de origen a una cuenta de destino, y el informe de inventario se almacena en la cuenta de destino.

Para configurar Amazon S3 Inventory para buckets de origen y destino pertenecientes a distintas cuentas
  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon S3 en https://console.aws.amazon.com/s3/.

  2. Elija el bucket de destino en el que desea almacenar el informe de inventario.

    Elija un bucket de manifiestos de destino para almacenar el informe de inventario. En este procedimiento, la cuenta de destino es la cuenta a la que pertenecen tanto el bucket de manifiestos de destino como el bucket en el que se copian los objetos.

  3. Configure un inventario para enumerar los objetos de un bucket de origen y publicar la lista en el bucket de manifiestos de destino.

    Configure una lista de inventario para un bucket de origen. Cuando lo haga, especifique el bucket de destino donde desea que se almacene la lista. El informe de inventario para el bucket de origen se publica en el bucket de destino. En este procedimiento, la cuenta de origen es la cuenta propietaria del bucket de origen.

    Para obtener información acerca de cómo utilizar la consola para configurar un inventario o cómo cifrar un archivo de lista de inventario, consulte Configuración de Inventario de Amazon S3.

    Elija CSV para el formato de salida.

    Cuando introduzca la información del bucket de destino, elija Buckets in another account (Los buckets de otra cuenta). A continuación, introduzca el nombre del bucket de manifiestos de destino. Si lo desea, puede introducir el ID de la cuenta de destino.

    Cuando se guarda la configuración de inventario, la consola muestra un mensaje similar al siguiente:

    Amazon S3 could not create a bucket policy on the destination bucket. Ask the destination bucket owner to add the following bucket policy to allow Amazon S3 to place data in that bucket (Amazon S3 no pudo crear una política de bucket en el bucket de destino. Pida al propietario del bucket de destino que añada la siguiente política de bucket para permitir que Amazon S3 coloque datos en ese bucket.

    A continuación, la consola muestra una política de bucket que se puede utilizar para el bucket de destino.

  4. Copie la política de bucket de destino que aparece en la consola.

  5. En la cuenta de destino, añada la política de bucket que ha copiado al bucket de manifiestos de destino donde se almacena el informe de inventario.

  6. En la cuenta de destino, cree un rol basado en la política de confianza de Operaciones por lotes de S3. Para obtener más información acerca de la política de confianza, consulte Política de confianza.

    Para obtener más información acerca de cómo crear un rol, consulte Creación de un rol para delegar permisos a un servicio de AWS en la Guía del usuario de IAM.

    Introduzca un nombre para el rol (el rol de ejemplo utiliza el nombre BatchOperationsDestinationRoleCOPY). Elija el servicio S3 y, a continuación, elija el caso de uso S3 bucket Batch Operations (Operaciones por lotes de bucket de S3), que aplica la política de confianza al rol.

    A continuación, elija Create policy (Crear política) para asociar la política siguiente al rol.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowBatchOperationsDestinationObjectCOPY", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectVersionAcl", "s3:PutObjectAcl", "s3:PutObjectVersionTagging", "s3:PutObjectTagging", "s3:GetObject", "s3:GetObjectVersion", "s3:GetObjectAcl", "s3:GetObjectTagging", "s3:GetObjectVersionAcl", "s3:GetObjectVersionTagging" ], "Resource": [ "arn:aws:s3:::ObjectDestinationBucket/*", "arn:aws:s3:::ObjectSourceBucket/*", "arn:aws:s3:::ObjectDestinationManifestBucket/*" ] } ] }

    El rol utiliza la política para conceder permiso a batchoperations.s3.amazonaws.com para leer el manifiesto en el bucket de destino. También concede permisos GET para objetos, listas de control de acceso (ACL), etiquetas y versiones en el bucket de objetos de origen. Y concede permisos PUT para objetos, ACL, etiquetas y versiones en el bucket de objetos de destino.

  7. En la cuenta de origen, cree una política de bucket para el bucket de origen que otorgue el rol que creó en el paso anterior para obtener (GET) objetos, ACL, etiquetas y versiones en el bucket de origen. Este paso permite a Operaciones por lotes de S3 obtener objetos del bucket de origen a través del rol de confianza.

    A continuación, se muestra un ejemplo de política de bucket para la cuenta de origen.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowBatchOperationsSourceObjectCOPY", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::DestinationAccountNumber:role/BatchOperationsDestinationRoleCOPY" }, "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:GetObjectAcl", "s3:GetObjectTagging", "s3:GetObjectVersionAcl", "s3:GetObjectVersionTagging" ], "Resource": "arn:aws:s3:::ObjectSourceBucket/*" } ] }
  8. Una vez que el informe de inventario esté disponible, cree un trabajo de copia del objeto PUT de Operaciones por lotes de S3 en la cuenta de destino y seleccione el informe de inventario en el bucket de manifiestos de destino. Necesita el ARN del rol que creó en la cuenta de destino.

    Para obtener información general acerca de cómo crear un trabajo, consulte Creación de trabajos de operaciones por lotes de S3.

    Para obtener información acerca de cómo crear un trabajo mediante la consola, consulte Creación de trabajos de operaciones por lotes de S3.