Criar um trabalho de operações em lote para atualizar a criptografia de objetos
Para atualizar o tipo de criptografia do lado do servidor de mais de um objeto do Amazon S3 com uma única solicitação, você pode usar o recurso Operações em Lote do S3. É possível usar o recurso Operações em Lote do S3 por meio do console do Amazon S3, da AWS Command Line Interface (AWS CLI), de SDKs da AWS ou da API REST do Amazon S3.
Para executar os comandos a seguir, você deve ter a AWS CLI instalada e configurada. Se ainda não tiver a AWS CLI instalada, consulte Instalar ou atualizar a versão mais recente da AWS CLI no Guia do usuário da AWS Command Line Interface.
Também é possível executar comandos da AWS CLI pelo console usando o AWS CloudShell. O AWS CloudShell é um shell pré-autenticado e baseado em navegador que você pode iniciar diretamente do Console de gerenciamento da AWS. Para ter mais informações, consulte What is CloudShell? e Getting started with AWS CloudShell no Guia do usuário do AWS CloudShell.
exemplo 1: criar um trabalho de operações em lote que atualiza o tipo de criptografia de objetos de uma AWS KMS key para outra chave do KMS
O exemplo a seguir mostra como criar um trabalho de operações em lote do S3 que atualiza as configurações de criptografia para vários objetos em um bucket de uso geral. Esse comando cria um trabalho que altera os objetos criptografados com uma chave do AWS Key Management Service (AWS KMS) para usar uma chave diferente do KMS. Esse trabalho também gera e salva um manifesto dos objetos afetados e cria um relatório dos resultados. Para usar esse comando, substitua os por suas informações.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 obter o melhor desempenho, recomendamos usar o filtro KmsKeyArn com outros filtros de metadados de objeto, como MatchAnyPrefix, CreatedAfter ou MatchAnyStorageClass.
exemplo 2: criar um trabalho de operações em lote que atualiza o tipo de criptografia de objetos de SSE-S3 para SSE-KMS
O exemplo a seguir mostra como criar um trabalho de operações em lote do S3 que atualiza as configurações de criptografia para vários objetos em um bucket de uso geral. Esse comando cria um trabalho que altera o tipo de criptografia de objetos da criptografia do lado do servidor com chaves gerenciadas pelo Amazon S3 (SSE-S3) para a criptografia do lado do servidor com chaves do AWS Key Management Service (AWS KMS) (SSE-KMS). Esse trabalho também gera e salva um manifesto dos objetos afetados e cria um relatório dos resultados. Para usar esse comando, substitua os por suas informações.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 obter o melhor desempenho, recomendamos usar o filtro KmsKeyArn com outros filtros de metadados de objeto, como MatchAnyPrefix, CreatedAfter ou MatchAnyStorageClass.