Creación de un trabajo de operaciones por lotes para actualizar el cifrado de objetos
Para actualizar el tipo de cifrado del servidor de más de un objeto de Amazon S3 con una sola solicitud, puede usar operaciones por lotes de S3. Puede utilizar operaciones por lotes de S3 a través de la consola de Amazon S3, la AWS Command Line Interface (AWS CLI), los AWS SDK o la API de REST de Amazon S3.
Para ejecutar los siguientes comandos, debe tener instalado y configurado la AWS CLI. Si aún no ha instalado la AWS CLI, consulte Instalación o actualización de la última versión de la AWS CLI en la Guía del usuario de la AWS Command Line Interface.
De forma alternativa, puede ejecutar comandos de la AWS CLI desde la consola mediante AWS CloudShell. AWS CloudShell es un intérprete de comandos previamente autenticado y basado en el navegador que se puede lanzar directamente desde la Consola de administración de AWS. Para obtener más información, consulte ¿Qué es CloudShell? e Introducción a AWS CloudShell en la Guía el usuario de AWS CloudShell.
ejemplo 1: Crear un trabajo de operaciones por lotes que actualice los objetos cifrados de una AWS KMS key a otra clave de KMS
En el siguiente ejemplo, se muestra cómo crear un trabajo de operaciones por lotes de S3 que actualiza la configuración de cifrado para varios objetos en el bucket de uso general. Este comando crea un trabajo que cambia los objetos cifrados con una clave AWS Key Management Service (AWS KMS) para usar una clave de KMS diferente. Este trabajo también genera y guarda un manifiesto de los objetos afectados y crea un informe de los resultados. Para usar este comando, sustituya por su propia información.user input
placeholders
aws s3control create-job --account-idaccount-id\ --no-confirmation-required \ --operation '{"S3UpdateObjectEncryption": { "ObjectEncryption": { "SSEKMS": { "KMSKeyArn": "KMS-key-ARN-to-apply", "BucketKeyEnabled": false } } } }' \ --report '{ "Enabled": true, "Bucket": "report-bucket-ARN", "Format": "Report_CSV_20180820", "Prefix": "report", "ReportScope": "AllTasks" }' \ --manifest-generator '{ "S3JobManifestGenerator": { "ExpectedBucketOwner": "account-id", "SourceBucket": "source-bucket-ARN", "EnableManifestOutput": true, "ManifestOutputLocation": { "Bucket": "manifest-bucket-ARN", "ManifestFormat": "S3InventoryReport_CSV_20211130", "ManifestPrefix": "manifest-prefix" }, "Filter": { "MatchAnyObjectEncryption": [{ "SSEKMS": { "KmsKeyArn": "kms-key-ARN-to-match" } }] } } }' \ --priority 1 \ --role-arnbatch-operations-role-ARN
Para obtener el mejor rendimiento, se recomienda utilizar el filtro KmsKeyArn junto con otros filtros de metadatos de objetos, como MatchAnyPrefix, CreatedAfter o MatchAnyStorageClass.
ejemplo 2: Crear un trabajo de operaciones por lotes que actualice los objetos cifrados de SSE-S3 a SSE-KMS
En el siguiente ejemplo, se muestra cómo crear un trabajo de operaciones por lotes de S3 que actualiza la configuración de cifrado para varios objetos en el bucket de uso general. Este comando crea un trabajo que cambia objetos cifrados mediante el uso del cifrado del servidor con claves administradas por Amazon S3 (SSE-S3) para usar el cifrado del servidor con claves de AWS Key Management Service (AWS KMS) (SSE-KMS) en su lugar. Este trabajo también genera y guarda un manifiesto de los objetos afectados y crea un informe de los resultados. Para usar este comando, sustituya por su propia información.user input placeholders
aws s3control create-job --account-idaccount-id\ --no-confirmation-required \ --operation '{"S3UpdateObjectEncryption": { "ObjectEncryption": { "SSEKMS": { "KMSKeyArn": "KMS-key-ARN-to-apply", "BucketKeyEnabled": false } } } }' \ --report '{ "Enabled": true, "Bucket": "report-bucket-ARN", "Format": "Report_CSV_20180820", "Prefix": "report", "ReportScope": "AllTasks" }' \ --manifest-generator '{ "S3JobManifestGenerator": { "ExpectedBucketOwner": "account-id", "SourceBucket": "source-bucket-ARN", "EnableManifestOutput": true, "ManifestOutputLocation": { "Bucket": "manifest-bucket-ARN", "ManifestFormat": "S3InventoryReport_CSV_20211130", "ManifestPrefix": "manifest-prefix" }, "Filter": { "MatchAnyObjectEncryption": [{ "SSES3": {} }] } } }' \ --priority 1 \ --role-arnbatch-operations-role-ARN
Para obtener el mejor rendimiento, se recomienda utilizar el filtro KmsKeyArn junto con otros filtros de metadatos de objetos, como MatchAnyPrefix, CreatedAfter o MatchAnyStorageClass.