Endpoints de gateway para o Amazon DynamoDB - Amazon Virtual Private Cloud

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á.

Endpoints de gateway para o Amazon DynamoDB

É possível acessar o Amazon DynamoDB de sua VPC usando endpoints da VPC de gateway. Depois de criar o endpoint de gateway, é possível adicioná-lo como um destino na tabela de rotas para o tráfego destinado da VPC ao DynamoDB.

Não há cobrança adicional pelo uso de endpoints do gateway.

O DynamoDB é compatível com endpoints de gateway e endpoints de interface. Com um endpoint de gateway, você pode acessar o DynamoDB de sua VPC, sem precisar de um gateway de internet ou dispositivo NAT para sua VPC e sem custo adicional. No entanto, os endpoints de gateway não permitem acesso de redes locais, de VPCs emparelhadas em outras AWS regiões ou por meio de um gateway de trânsito. Para esses cenários, você deve usar um endpoint de interface, o qual está disponível por um custo adicional. Para obter mais informações, consulte Tipos de VPC endpoints para o DynamoDB no Amazon DynamoDB Developer Guide.

Considerações

  • Um endpoint de gateway só estará disponível na região em que você o criou. Crie o endpoint de gateway na mesma região que as tabelas do DynamoDB.

  • Se você estiver usando os servidores DNS da Amazon, será necessário habilitar os nomes de host DNS e a resolução de DNS para sua VPC. Se você estiver usando seu próprio servidor DNS, certifique-se de que as solicitações para o DynamoDB sejam resolvidas corretamente para os endereços IP mantidos pela AWS.

  • As regras de saída dos grupos de segurança para instâncias que acessam o DynamoDB pelo endpoint de gateway devem permitir o tráfego no DynamoDB. Você pode referenciar o ID da lista de prefixos do DynamoDB nas regras do grupo de segurança.

  • A ACL da rede para a sub-rede das instâncias que acessam o DynamoDB pelo endpoint de gateway deve permitir o tráfego no DynamoDB. Você não pode referenciar as listas de prefixos nas regras de ACL da rede, mas pode obter os intervalos de endereços IP para o DynamoDB da lista de prefixos do DynamoDB.

  • Se você usa AWS CloudTrail para registrar as operações do DynamoDB, os arquivos de log contêm os endereços IP privados das instâncias do EC2 na VPC do consumidor de serviços e o ID do endpoint do gateway para todas as solicitações realizadas por meio do endpoint.

  • Os endpoints de gateway são compatíveis somente com tráfego IPv4.

  • Os endereços IPv4 de origem de instâncias nas sub-redes afetadas são alterados de endereços IPv4 públicos para endereços IPv4 privados em sua VPC. Um endpoint troca as rotas de rede e desconecta as conexões TCP abertas. As conexões anteriores que usavam endereços IPv4 públicos não são retomadas. É recomendável que não haja nenhuma tarefa essencial em execução ao criar ou modificar um endpoint de gateway. Como alternativa, faça um teste para garantir que o software possa se reconectar automaticamente ao DynamoDB, caso a conexão seja interrompida.

  • Não é possível estender conexões de endpoint para fora de uma VPC. Recursos do outro lado de uma conexão VPN, conexão de emparelhamento de VPC, gateway de trânsito ou AWS Direct Connect conexão em sua VPC não podem usar um endpoint de gateway para se comunicar com o DynamoDB.

  • Sua conta tem uma cota padrão de 20 endpoints de gateway por região, o que é ajustável. Há também um limite de 255 endpoints de gateway por VPC.

Criar um endpoint do gateway

Use o seguinte procedimento para criar um endpoint de gateway que se conecta ao DynamoDB.

Para criar um endpoint do gateway usando o console
  1. Abra o console da Amazon VPC em https://console.aws.amazon.com/vpc/.

  2. No painel de navegação, escolha Endpoints.

  3. Escolha Criar endpoint.

  4. Em Service category (Categoria de serviço), escolha Serviços da AWS.

  5. Em Services (Serviços), adicione o filtro Type: Gateway (Tipo: gateway) e selecione com.amazonaws.region.dynamodb.

  6. Em VPC, selecione a VPC na qual deseja criar o endpoint.

  7. Em Route tables (Tabelas de rotas), selecione as tabelas de rotas a serem usadas pelo endpoint. Adicionamos automaticamente uma rota que aponta o tráfego destinado ao serviço para a interface de rede do endpoint.

  8. Em Policy (Política), selecione Full access (Acesso total) para permitir todas as operações de todas as entidades principais em todos os recursos no endpoint da VPC. Ou então selecione Custom (Personalizar) para anexar uma política de endpoint da VPC que controle as permissões das entidades principais para realizar ações em recursos sobre o endpoint da VPC.

  9. (Opcional) Para adicionar uma tag, escolha Adicionar nova tag e insira a chave e o valor da tag.

  10. Escolha Criar endpoint.

Para criar um endpoint de gateway usando a linha de comando

Controlar o acesso usando políticas do IAM

É possível criar políticas do IAM para controlar quais entidades principais do IAM poderão acessar as tabelas do DynamoDB usando um endpoint da VPC específico.

exemplo Exemplo: restringir o acesso a um endpoint específico

Você pode criar uma política que restrinja o acesso a um endpoint da VPC específico usando a chave de condição aws:sourceVpce. A seguinte política nega o acesso às tabelas do DynamoDB na conta, a menos que se utilize o endpoint da VPC especificado. Este exemplo supõe que também exista uma declaração de política que permite o acesso necessário para os seus casos de uso.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow-access-from-specific-endpoint", "Effect": "Deny", "Action": "dynamodb:*", "Resource": "arn:aws:dynamodb:region:account-id:table/*", "Condition": { "StringNotEquals" : { "aws:sourceVpce": "vpce-11aa22bb" } } } ] }
exemplo Exemplo: permitir acesso de um perfil do IAM específico

Você pode criar uma política que permita acesso usando um perfil do IAM específico. A seguinte política concede acesso ao perfil do IAM especificado.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow-access-from-specific-IAM-role", "Effect": "Allow", "Principal": "*", "Action": "*", "Resource": "*", "Condition": { "ArnEquals": { "aws:PrincipalArn": "arn:aws:iam::111122223333:role/role_name" } } } ] }
exemplo Exemplo: permite o acesso de uma conta específica

Você pode criar uma política que permita o acesso de apenas uma conta específica. A seguinte política concede acesso aos usuários na conta especificada.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow-access-from-account", "Effect": "Allow", "Principal": "*", "Action": "*", "Resource": "*", "Condition": { "StringEquals": { "aws:PrincipalAccount": "111122223333" } } } ] }

Associar tabela de rotas

Você pode alterar tabelas de rotas associadas ao endpoint de gateway. Quando você associa uma tabela de rotas, adicionamos automaticamente uma rota que aponta o tráfego destinado ao serviço para a interface de rede do endpoint. Quando você desassocia uma tabela de rotas, removemos automaticamente a rota do endpoint da tabela de rotas.

Para associar tabelas de rotas usando o console
  1. Abra o console da Amazon VPC em https://console.aws.amazon.com/vpc/.

  2. No painel de navegação, escolha Endpoints.

  3. Selecione o endpoint de gateway.

  4. Escolha Actions, Manage route tables.

  5. Selecione ou cancele a seleção das tabelas de rotas, conforme necessário.

  6. Escolha Modify route tables (Modificar tabelas de rotas).

Para associar tabelas de rotas usando a linha de comando

Editar a política de endpoints da VPC

É possível editar a política de endpoint para um endpoint de gateway, que controla o acesso ao DynamoDB da VPC até o endpoint. A política padrão permite acesso total. Para ter mais informações, consulte Políticas de endpoint.

Para alterar a política de endpoint usando o console
  1. Abra o console da Amazon VPC em https://console.aws.amazon.com/vpc/.

  2. No painel de navegação, escolha Endpoints.

  3. Selecione o endpoint de gateway.

  4. Escolha Actions (Ações), Manage policy (Gerenciar política).

  5. Escolha Full Access (Acesso total) para permitir acesso total ao serviço ou escolha Custom (Personalizado) e anexe uma política personalizada.

  6. Escolha Salvar.

Para modificar um endpoint de gateway usando a linha de comando

Veja a seguir exemplos de políticas de endpoint para acessar o DynamoDB.

exemplo Exemplo: permitir acesso somente leitura

Você pode criar uma política que restrinja o acesso para somente leitura. A seguinte política concede permissão para listar e descrever tabelas do DynamoDB.

{ "Statement": [ { "Sid": "ReadOnlyAccess", "Effect": "Allow", "Principal": "*", "Action": [ "dynamodb:DescribeTable", "dynamodb:ListTables" ], "Resource": "*" } ] }
exemplo Exemplo: restrição de acesso a uma tabela específica

Você pode criar uma política que restrinja o acesso a uma tabela específica do DynamoDB. A seguinte política permite acesso à tabela do DynamoDB especificada.

{ "Statement": [ { "Sid": "Allow-access-to-specific-table", "Effect": "Allow", "Principal": "*", "Action": [ "dynamodb:Batch*", "dynamodb:Delete*", "dynamodb:DescribeTable", "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:Update*" ], "Resource": "arn:aws:dynamodb:region:123456789012:table/table_name" } ] }

Excluir um endpoint de gateway

Quando não precisar mais de um endpoint de gateway, você poderá excluí-lo. Quando você exclui um endpoint de gateway, removemos a rota do endpoint das tabelas de rotas da sub-rede.

Para excluir um endpoint de gateway do cliente usando o console
  1. Abra o console da Amazon VPC em https://console.aws.amazon.com/vpc/.

  2. No painel de navegação, escolha Endpoints.

  3. Selecione o endpoint de gateway.

  4. Escolha Actions (Ações), Delete VPC endpoints (Excluir endpoints da VPC).

  5. Quando a confirmação for solicitada, insira delete.

  6. Escolha Excluir.

Para excluir um endpoint de gateway do cliente usando a linha de comando