As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Configurando destinos do S3 para consultas agendadas
Configure o Amazon S3 como um destino para armazenar seus resultados de consulta programados como arquivos JSON para retenção e análise de longo prazo.
Ao usar o Amazon S3 como destino, os resultados da consulta são armazenados como arquivos JSON no bucket e prefixo especificados. Essa opção é ideal para arquivar resultados, realizar análises em lote ou integrar-se a outros AWS serviços que processam dados do S3.
Você pode entregar os resultados da consulta para um bucket do Amazon S3 na mesma AWS conta da consulta agendada ou para um bucket em uma conta diferente AWS . Opcionalmente, você também pode criptografar os resultados da consulta usando uma AWS KMS chave gerenciada pelo cliente (SSE-KMS).
Entregando resultados para um bucket do Amazon S3 na mesma conta
Quando o bucket do Amazon S3 de destino está na mesma AWS conta da consulta agendada, você pode navegar e selecionar o bucket diretamente do console.
Para configurar um destino Amazon S3 com a mesma conta (console)
-
Na seção Publicar resultados da consulta no S3, para bucket do S3, selecione Esta conta.
-
Para o URI do Amazon S3, insira o bucket e o prefixo do Amazon S3 onde os resultados serão armazenados (por exemplo
s3://my-bucket/query-results/,) ou escolha Procurar no Amazon S3 para navegar e selecionar um local existente do Amazon S3. -
(Opcional) Para criptografar os resultados com uma AWS KMS chave gerenciada pelo cliente, insira o ARN da chave AWS KMS no campo ARN da chave KMS. A chave deve estar na mesma AWS região do bucket Amazon S3 de destino. Se você não especificar uma AWS KMS chave, as configurações de criptografia padrão do bucket serão aplicadas.
-
Na seção Função do IAM para publicar resultados da consulta no Amazon S3, escolha Criar automaticamente uma nova função com permissões padrão para configurar automaticamente as permissões necessárias ou escolha Usar uma função existente para selecionar uma função do IAM existente com as políticas necessárias.
A função do IAM de entrega de destino exige as seguintes permissões:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::my-bucket/prefix/*", "Condition": { "StringEquals": { "aws:ResourceAccount": "111122223333" } } } ] }
Entregando resultados para um bucket do Amazon S3 em outra conta
Você pode entregar resultados de consultas programadas para um bucket do Amazon S3 em uma conta diferente AWS . Ao usar um bucket entre contas, você deve fornecer o URI do Amazon S3 e o ID da conta da conta proprietária do bucket.
Para configurar um destino do Amazon S3 entre contas (console)
-
Na seção Publicar resultados da consulta no S3, para o bucket do S3, selecione Outra conta e forneça o ID da conta proprietária do bucket como entrada.
-
Para o URI do Amazon S3, insira o URI completo do Amazon S3 do bucket de destino e o prefixo na outra conta (por exemplo,).
s3://cross-account-bucket/query-results/ -
(Opcional) Para criptografar os resultados com uma AWS KMS chave gerenciada pelo cliente, insira o ARN da chave AWS KMS no campo ARN da chave KMS. A chave deve estar na mesma AWS região do bucket Amazon S3 de destino.
-
Na seção Função do IAM para publicar resultados da consulta no Amazon S3, escolha Criar automaticamente uma nova função com permissões padrão para configurar automaticamente as permissões necessárias ou escolha Usar uma função existente para selecionar uma função do IAM existente com as políticas necessárias.
A entrega entre contas requer permissões de ambos os lados. A função do IAM de entrega de destino na conta de origem exige as seguintes permissões:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::cross-account-bucket/prefix/*", "Condition": { "StringEquals": { "aws:ResourceAccount": "123456789012" } } } ] }
A política de bucket do Amazon S3 na conta de destino deve conceder permissão à função IAM da conta de origem para gravar objetos:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowScheduledQueryRolePutObject", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/my-s3-delivery-role" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::cross-account-bucket/prefix/*" } ] }
Criptografando resultados com uma chave gerenciada pelo AWS KMS cliente
Opcionalmente, você pode especificar uma AWS KMS chave gerenciada pelo cliente para criptografar os resultados da consulta entregues ao Amazon S3 usando o SSE-KMS. A AWS KMS chave pode estar na mesma conta da consulta agendada ou em uma conta diferente.
Quando você especifica uma AWS KMS chave, a consulta agendada usa essa chave para criptografar os resultados via SSE-KMS. Quando você não especifica uma AWS KMS chave, as configurações de criptografia padrão do bucket se aplicam. Se o bucket estiver configurado com criptografia SSE-KMS padrão usando uma chave gerenciada pelo cliente, a função do IAM de entrega de destino ainda deverá ter kms:GenerateDataKey permissão nessa chave.
A função do IAM de entrega de destino exige kms:GenerateDataKey permissão na AWS KMS chave. O exemplo a seguir mostra as permissões necessárias para um destino do Amazon S3 com uma chave gerenciada pelo AWS KMS cliente:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::my-bucket/prefix/*", "Condition": { "StringEquals": { "aws:ResourceAccount": "111122223333" } } }, { "Effect": "Allow", "Action": "kms:GenerateDataKey", "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-id", "Condition": { "StringEquals": { "kms:ViaService": "s3.us-east-1.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::my-bucket*" } } } ] }
Quando a AWS KMS chave está em uma conta diferente da função do IAM de entrega de destino, a política de AWS KMS chaves na conta proprietária da chave deve conceder explicitamente acesso à função:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowScheduledQueryRoleToEncrypt", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/my-s3-delivery-role" }, "Action": "kms:GenerateDataKey", "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "s3.us-east-1.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::my-bucket*" } } } ] }
nota
Quando a AWS KMS chave e a função do IAM de entrega de destino estão na mesma conta, a política de identidade do IAM sozinha é suficiente se a política de AWS KMS chaves incluir a declaração raiz padrão “Ativar políticas do IAM”. Uma concessão explícita de política de AWS KMS chaves só é necessária se a política de chaves não for delegada ao IAM.
A função do IAM para publicar os resultados da consulta no Amazon S3 deve ser configurada separadamente da função do IAM para a execução programada da consulta. Essa separação permite um controle de acesso refinado, em que a função de execução pode executar consultas, enquanto a função do Amazon S3 trata especificamente da entrega dos resultados. Ambas as funções devem incluir uma política de confiança que permita que o serviço CloudWatch Logs (logs.amazonaws.com) assuma a função.