Como habilitar ou desabilitar tabelas de anotação
Por padrão, sua configuração de tabela de metadados contém uma tabela de diário, que registra os eventos referentes aos objetos em seu bucket. A tabela de diário é necessária para cada configuração de tabela de metadados.
Se desejar, você pode adicionar uma tabela de anotação à configuração da tabela de metadados. Essa tabela rastreia todas as anotações em objetos em seu bucket para que você possa consultar dados de anotação em grande escala.
A tabela de anotação contém as anotações mais recentes de todos os objetos em seu bucket. É possível usar essa tabela para simplificar e acelerar fluxos de trabalho de negócios e tarefas de big data identificando objetos com base nas anotações. Por exemplo, você pode consultar a tabela de anotação para fazer o seguinte:
-
Encontrar todos os objetos com uma chave ou um valor de anotação específico.
-
Criar uma distribuição de chaves de anotação entre objetos em seu bucket.
-
Encontrar todos os objetos que têm anotações aplicadas por uma entidade principal específica.
Se você optar por habilitar uma tabela de anotação para sua configuração de tabela de metadados, essa tabela passará por um processo conhecido como preenchimento, durante o qual o Amazon S3 verifica o bucket de uso geral para recuperar e preencher anotações de todos os objetos existentes no bucket. Dependendo do número de objetos no bucket, esse processo pode levar de minutos a horas. Quando o processo de preenchimento é concluído, o status da tabela de anotação muda de Preenchimento para Ativo. Depois que o preenchimento é concluído, geralmente as atualizações dos objetos são mostradas na tabela de anotação no prazo de uma hora.
nota
-
Você paga pelo preenchimento da tabela de anotação. Para obter mais informações, consulte Preços do Amazon S3
. -
Não é possível pausar as atualizações na tabela de anotação e depois retomá-las. No entanto, é possível desabilitar a configuração da tabela de anotação. Desabilitar a tabela de anotação não a exclui. A tabela de anotação é mantida em seus registros até que você decida excluí-la.
Se você tiver desabilitado a tabela de anotação e depois quiser reabilitá-la, primeiro exclua a tabela de anotação antiga do bucket de tabela gerenciado pela AWS. Quando você reabilita a configuração de tabela de anotação, o Amazon S3 cria outra tabela de anotação. Nesse caso, você recebe cobrança novamente pelo preenchimento da nova tabela.
Você pode habilitar ou desabilitar as tabelas de anotação usando o console do Amazon S3, a AWS Command Line Interface (AWS CLI), os SDKs da AWS ou a API REST do Amazon S3.
Pré-requisitos
Se você tiver desabilitado a tabela de anotação e agora quiser reabilitá-la, primeiro exclua manualmente a tabela de anotação antiga do bucket de tabela gerenciado pela AWS. Do contrário, a reabilitação da tabela de anotação falhará, porque já existe uma tabela de anotação no bucket de tabela. Para excluir a tabela de anotação, consulte Excluir uma tabela de metadados.
Quando você reabilita a configuração de tabela de anotação, o Amazon S3 cria outra tabela de anotação. Nesse caso, você recebe cobrança novamente pelo preenchimento da nova tabela.
Perfil do IAM da tabela de anotação
A tabela de anotação exige um perfil do IAM que conceda ao Amazon S3 Metadata permissão para ler anotações do seu bucket. Use as seguintes políticas de confiança e permissões ao criar esse perfil.
Política de confiança
A política de confiança a seguir identifica o Amazon S3 Metadata como a entidade principal do serviço que pode assumir o perfil.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "metadata.s3.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnLike": { "aws:SourceArn": "arn:aws:s3:::amzn-s3-demo-bucket" } } } ] }
Política de permissões
A política de permissões a seguir concede ao perfil do IAM as permissões mínimas necessárias para ler anotações.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PermissionForGetAnnotation", "Effect": "Allow", "Action": [ "s3:GetObjectAnnotation", "s3:GetObjectVersionAnnotation" ], "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket/*"] }, { "Sid": "PermissionsForListBucket", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:ListBucketVersions" ], "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket"] }, { "Sid": "PermissionsForDecryptAnnotation", "Effect": "Allow", "Action": ["kms:Decrypt"], "Resource": ["*"] } ] }
Se os objetos usarem criptografia SSE-KMS, a permissão kms:Decrypt vai cobrir a descriptografia da chave do AWS KMS usada para criptografar os objetos. Você também precisa da permissão iam:PassRole para atribuir o perfil à configuração da tabela de anotação.
Habilitar ou desabilitar tabelas de anotação
Para habilitar ou desabilitar tabelas de anotação
Faça login no Console de gerenciamento da AWS e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/
. -
No painel de navegação à esquerda, escolha Buckets de uso geral.
-
Escolha o bucket de uso geral com a configuração da tabela de metadados para a qual você deseja habilitar ou desabilitar uma tabela de anotação.
-
Na página de detalhes do bucket, escolha a guia Metadados.
-
Na guia Metadados, escolha Editar e selecione Editar configuração da tabela de anotação.
-
Na página Editar configuração da tabela de anotação, escolha Habilitada ou Desabilitada em Tabela de anotação.
nota
Antes de escolher Habilitada, verifique se você analisou e atendeu aos pré-requisitos.
-
Se você selecionar Habilitada, em Perfil do IAM, escolha um dos seguintes métodos de seleção de perfil do IAM:
-
Criar um perfil do IAM: o Amazon S3 cria um novo perfil do IAM com as permissões necessárias para a tabela de anotação.
-
Escolher entre perfis do IAM existentes: selecione um perfil do IAM existente no menu suspenso Perfil do IAM. O perfil deve ter as permissões necessárias para ler anotações do bucket.
-
Inserir ARN do perfil do IAM: insira o ARN de um perfil do IAM existente que tenha as permissões necessárias.
Para obter mais informações sobre as permissões necessárias para o perfil do IAM da tabela de anotação, consulte Perfil do IAM da tabela de anotação.
Você também pode optar por criptografar a tabela com criptografia do lado do servidor usando chaves do AWS Key Management Service (AWS KMS) (SSE-KMS). Por padrão, as tabelas de anotação são criptografadas com a criptografia do lado do servidor usando chaves gerenciadas pelo Amazon S3 (SSE-S3).
Se você optar por usar o SSE-KMS, deverá fornecer uma chave do KMS gerenciada pelo cliente na mesma região do bucket de uso geral.
Importante
Você pode definir o tipo de criptografia para uma tabela de metadados somente ao criá-la. Após a criação de uma tabela gerenciada pela AWS, não é possível alterar a configuração de criptografia.
-
Para criptografar uma tabela de anotação com SSE-S3 (o padrão), escolha Não especificar o tipo de criptografia.
-
Para criptografar uma tabela de anotação com SSE-KMS, escolha Especificar o tipo de criptografia. Em Tipo de criptografia, escolha Criptografia do lado do servidor usando chaves do AWS Key Management Service (AWS KMS) (SSE-KMS). Em Chave do AWS KMS, escolha entre suas chaves existentes do KMS ou insira o ARN da chave do KMS. Se você ainda não tiver uma chave do KMS, escolha Inserir o ARN da chave do KMS e selecionar Criar uma chave do KMS.
-
-
Se você escolher Desabilitada, marque a caixa de seleção em Depois que a tabela de anotação for desabilitada, a tabela não será mais atualizada e as atualizações não poderão ser retomadas.
-
-
Escolha Salvar alterações.
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 versão 2 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.
Para habilitar ou desabilitar tabelas de anotação usando a AWS CLI
Para usar os exemplos de comando a seguir, substitua os por suas próprias informações. user input
placeholders
nota
Antes de habilitar uma configuração de anotação, analise e cumpra os pré-requisitos.
-
Crie um arquivo JSON que contenha a configuração da tabela de anotação e salve-o (por exemplo,
annotation-config.json). O exemplo a seguir é uma configuração de amostra para habilitar uma nova tabela de anotação.Se você estiver habilitando uma tabela de anotação, poderá especificar uma configuração de criptografia. Por padrão, as tabelas de metadados são criptografados com a criptografia do lado do servidor usando chaves gerenciadas pelo Amazon S3 (SSE-S3), que você pode especificar configurando
SseAlgorithmcomoAES256.Para criptografar uma tabela de anotação com criptografia do lado do servidor usando chaves do AWS Key Management Service (AWS KMS) (SSE-KMS), defina
SseAlgorithmcomoaws:kms. Você também deve definirKmsKeyArncomo o ARN de uma chave do KMS gerenciada pelo cliente na mesma região em que o bucket de uso geral está localizado.{ "ConfigurationState": "ENABLED", "Role": "arn:aws:iam::account-id:role/annotation-table-role", "EncryptionConfiguration": { "SseAlgorithm": "aws:kms", "KmsKeyArn": "arn:aws:kms:us-east-2:account-id:key/key-id" } }O campo
Roleé obrigatório ao habilitar uma tabela de anotação pela primeira vez ou ao alterar o perfil do IAM. O perfil deve conceder ao Amazon S3 Metadata permissão para ler anotações do seu bucket. Para obter mais informações, consulte Perfil do IAM da tabela de anotação.Se você quiser desabilitar uma tabela de anotação existente, use a seguinte configuração:
{ "ConfigurationState": "DISABLED" } -
Use o seguinte comando para atualizar a configuração da tabela de anotação para o bucket de uso geral (por exemplo,
):amzn-s3-demo-bucketaws s3api update-bucket-metadata-annotation-table-configuration \ --bucketamzn-s3-demo-bucket\ --annotation-table-configuration file://./annotation-config.json \ --regionus-east-2
Você pode enviar solicitações REST para habilitar ou desabilitar tabelas de anotação. Para obter mais informações, consulte UpdateBucketMetadataAnnotationTableConfiguration.
Você pode usar os SDKs da AWS para habilitar ou desabilitar tabelas de anotação no Amazon S3. Para ter mais informações, consulte a lista de SDKs compatíveis.