Definir permissões para configurar tabelas de metadados - Amazon Simple Storage Service

Definir permissões para configurar tabelas de metadados

Para criar uma configuração de tabelas de metadados, é necessário ter as permissões do AWS Identity and Access Management (IAM) necessárias para criar e gerenciar essa configuração de tabelas de metadados e para criar e gerenciar a tabela de metadados e o bucket de tabela em que a tabela de metadados está armazenada.

Para criar e gerenciar a configuração de tabelas de metadados, você deve ter as seguintes permissões:

  • s3:CreateBucketMetadataTableConfiguration: essa permissão possibilita criar uma configuração de tabelas de metadados para o bucket de uso geral.

  • s3:GetBucketMetadataTableConfiguration: essa permissão possibilita recuperar informações sobre a configuração de tabelas de metadados.

  • s3:DeleteBucketMetadataTableConfiguration: essa permissão possibilita excluir a configuração de tabelas de metadados.

Para criar e trabalhar com tabelas e buckets de tabela, é necessário ter determinadas permissões s3tables. No mínimo, para criar uma configuração de tabelas de metadados, você deve ter as seguintes permissões s3tables:

  • s3tables:CreateNamespace: essa permissão possibilita criar um namespace em um bucket de tabela. As tabelas de metadados usam o namespace padrão aws_s3_metadata.

  • s3tables:GetTable: essa permissão possibilita recuperar informações sobre a tabela de metadados.

  • s3tables:CreateTable: essa permissão possibilita criar a tabela de metadados.

  • s3tables:PutTablePolicy: essa permissão possibilita adicionar ou atualizar a política da tabela de metadados.

Para ter informações detalhadas sobre todas as permissões de tabelas e de buckets de tabela, consulte Access management for S3 Tables.

Importante

Se você também quiser integrar o bucket de tabela com os serviços de analytics da AWS para poder consultar a tabela de metadados, precisará de permissões adicionais. Para ter mais informações, consulte Integrating Amazon S3 Tables with AWS analytics services.

Permissões para SSE-KMS

Para acessar buckets de tabela do S3 ou tabelas do S3 que estão usando criptografia do lado do servidor com chaves do AWS Key Management Service (AWS KMS) (SSE-KMS), você precisa incluir outras permissões.

  1. O usuário ou o perfil do IAM precisa das permissões a seguir. Você pode conceder essas permissões no console do IAM, em https://console.aws.amazon.com/iam/.

    1. s3tables:PutTableEncryption para configurar a criptografia de tabelas.

    2. s3tables:PutTableBucketEncryption para configurar a criptografia do bucket de tabela.

    3. kms:DescribeKey na chave usada do AWS KMS.

  2. Na política de recursos para a chave do KMS, você precisa das permissões a seguir. Você pode conceder essas permissões usando o console do KMS, em https://console.aws.amazon.com/kms.

    1. Permissão kms:GenerateDataKey para metadata.s3.amazonaws.com e maintenance.s3tables.amazonaws.com.

    2. Permissão kms:Decrypt para metadata.s3.amazonaws.com e maintenance.s3tables.amazonaws.com.

    3. Permissão kms:DescribeKey para a entidade principal AWS invocadora.

Para ter mais informações sobre como conceder as permissões necessárias ao serviço S3 Metadata, consulte a documentação em Conceder permissões à entidade principal do serviço S3 Metadata para usar sua chave do KMS.

Exemplo de política

Para criar e trabalhar com tabelas de metadados e buckets de tabela, você pode usar o exemplo de política a seguir. Nesta política, o bucket de uso geral ao qual você está aplicando a configuração de tabelas de metadados é chamado de amzn-s3-demo-source-bucket. O bucket de tabela em que você está armazenando a tabela de metadados é chamado de amzn-s3-demo-bucket. Para usar essa política, substitua esses nomes de bucket e os user input placeholders por suas próprias informações:

{ "Version":"2012-10-17", "Statement":[ { "Sid":"PermissionsToWorkWithMetadataTables", "Effect":"Allow", "Action":[ "s3:CreateBucketMetadataTableConfiguration", "s3:GetBucketMetadataTableConfiguration", "s3:DeleteBucketMetadataTableConfiguration", "s3tables:*" ], "Resource":[ "arn:aws:s3:::bucket/amzn-s3-demo-source-bucket", "arn:aws:s3tables:region:account_id:bucket/amzn-s3-demo-bucket", "arn:aws:s3tables:region:account_id:bucket/amzn-s3-demo-bucket/table/*" ] } ] }