Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Usar o controle de acesso por atributo com o DynamoDB

Modo de foco
Usar o controle de acesso por atributo com o DynamoDB - Amazon DynamoDB

O controle de acesso por atributo (ABAC) é uma estratégia de autorização que define as permissões de acesso com base em condições de tag em suas políticas baseadas em identidade ou em outras políticas da AWS, como políticas baseadas em recursos e políticas do IAM da organização. É possível anexar tags às tabelas do DynamoDB, que são então avaliadas em relação às condições baseadas em tags. Os índices associados a uma tabela herdam as tags adicionadas à tabela. É possível adicionar até cinquenta tags a cada tabela do DynamoDB. O tamanho máximo aceito para todas as tags em uma tabela é de 10 KB. Para ter mais informações sobre a marcação de recursos do DynamoDB e restrições de marcação, consulte Marcar recursos no DynamoDB e Restrições de marcação no DynamoDB.

Para ter informações sobre como usar essas tags para controlar o acesso aos recursos da AWS, consulte no Guia do usuário do IAM:

Com o uso do ABAC, é possível impor diferentes níveis de acesso para que suas equipes e aplicações realizem ações nas tabelas do DynamoDB usando menos políticas. É possível especificar uma tag no elemento de condição de uma política do IAM para controlar o acesso às tabelas ou aos índices do DynamoDB. Essas condições determinam o nível de acesso que uma entidade principal do IAM, um usuário ou um perfil tem às tabelas e aos índices do DynamoDB. Quando uma entidade principal do IAM faz uma solicitação de acesso ao DynamoDB, as tags do recurso e da identidade são avaliadas em relação às condições de tag na política do IAM. Depois disso, a política será efetiva somente se as condições de tag forem atendidas. Isso permite criar uma política do IAM que informe efetivamente uma das seguintes opções:

  • Permitir que o usuário gerencie apenas os recursos que têm uma tag com uma chave X e um valor Y.

  • Negar acesso a todos os usuários aos recursos marcados com uma chave X.

Por exemplo, é possível criar uma política que permita que os usuários atualizem uma tabela apenas se ela tiver o par de chave-valor de tag: "environment": "staging". É possível usar a chave de condição aws:ResourceTag para permitir ou negar acesso a uma tabela com base nas tags anexadas a essa tabela.

É possível incluir condições baseadas em atributos ao criar a política ou posteriormente usar o AWS Management Console, a API da AWS, a AWS Command Line Interface (AWS CLI), o SDK da AWS ou o AWS CloudFormation.

O exemplo a seguir permite a ação UpdateItem em uma tabela chamada MusicTable se ela incluir uma chave de tag com o nome environment e o valor production.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:UpdateItem" ], "Resource": "arn:aws:dynamodb:*:*:table/MusicTable", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "production" } } } ] }

Por que devo usar o ABAC?

  • Gerenciamento de políticas mais simples: é possível usar menos políticas porque não é necessário criar políticas diferentes para definir o nível de acesso para cada entidade principal do IAM.

  • Controle de acesso escalável: ajustar a escala do controle de acesso é mais fácil com o ABAC, pois não é necessário atualizar as políticas ao criar recursos do DynamoDB. É possível usar tags para autorizar o acesso às entidades principais do IAM que contêm tags correspondentes às tags do recurso. É possível integrar novas entidades principais do IAM ou recursos do DynamoDB e aplicar as tags apropriadas para conceder automaticamente as permissões necessárias sem precisar fazer nenhuma alteração na política.

  • Gerenciamento de permissões refinado: é prática recomendada conceder o privilégio mínimo ao criar políticas. Com o uso do ABAC, é possível criar tags para a entidade principal do IAM e usá-las para conceder acesso a ações e recursos específicos que correspondam às tags na entidade principal do IAM.

  • Alinhamento com o diretório corporativo: é possível associar tags com atributos de funcionários existentes do seu diretório corporativo com o objetivo de alinhar suas políticas de controle de acesso à estrutura organizacional.

Chaves de condição para implementar o ABAC com o DynamoDB

É possível usar as seguintes chaves de condição nas políticas da AWS para controlar o nível de acesso às suas tabelas e índices do DynamoDB:

  • aws:ResourceTag/tag-key: controla o acesso com base no fato de o par de chave-valor da tag em uma tabela ou um índice do DynamoDB corresponder ou não à chave e ao valor da tag em uma política. Essa chave de condição é relevante para todas as APIs que operam em uma tabela ou um índice existente.

    As condições dynamodb:ResourceTag são avaliadas como se você não tivesse anexado nenhuma tag a um recurso.

  • aws:RequestTag/tag-key: permite comparar o par de chave/valor da tag que foi transmitido na solicitação com o par de tags especificado na política. Essa chave de condição é relevante para APIs que contêm tags como parte da carga útil da solicitação. Essas APIs incluem CreateTable e TagResource.

  • aws:TagKeys: compara as chaves de tag em uma solicitação com as chaves especificadas na política. Essa chave de condição é relevante para APIs que contêm tags como parte da carga útil da solicitação. Essas APIs incluem CreateTable, TagResource e UntagResource.

Considerações sobre o uso do ABAC com o DynamoDB

Ao usar o ABAC com tabelas ou índices do DynamoDB, as seguintes considerações se aplicam:

  • A marcação e o ABAC não são aceitos no DynamoDB Streams.

  • A marcação e o ABAC não são aceitos em backups do DynamoDB. Para usar o ABAC com backups, recomendamos usar AWS Backup.

  • As tags não são preservadas nas tabelas restauradas. É necessário adicionar tags às tabelas restauradas para usar condições baseadas em tags em políticas.

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.