Controlar o acesso a partir de VPC endpoints com políticas de bucket - Amazon Simple Storage Service

Controlar o acesso a partir de VPC endpoints com políticas de bucket

É possível usar políticas de bucket do Amazon S3 para controlar o acesso a buckets por endpoints específicos da nuvem privada virtual (VPC) ou por VPCs específicas. Esta seção contém exemplos de políticas de bucket que você pode usar para controlar o acesso de endpoints da VPC ao bucket do Amazon S3. Para saber como configurar VPC endpoints, consulte VPC Endpoints no Guia do usuário da VPC.

A VPC permite executar os recursos da AWS em uma rede virtual definida por você. Um endpoint da VPC permite criar uma conexão privada entre a VPC e outro AWS service (Serviço da AWS). Essa conexão privada não exige acesso pela internet, por meio de uma conexão de rede privada virtual (VPN), de uma instância NAT ou do AWS Direct Connect.

Um endpoint de VPC para Amazon S3 é uma entidade lógica em uma VPC que oferece conectividade apenas ao Amazon S3. O VPC endpoint roteia as solicitações para o Amazon S3 e roteia as respostas de rotas de volta para a VPC. Os VPC endpoints alteram somente a forma como as solicitações são roteadas. Os endpoints públicos do Amazon S3 e os nomes de DNS continuarão funcionando com VPC endpoints. Consulte informações importantes sobre o uso de endpoints da VPC com o Amazon S3 em Gateway endpoints e em Gateway endpoints for Amazon S3 no Guia do usuário da VPC.

Os VPC endpoints para Amazon S3 fornecem duas maneiras de controlar o acesso aos dados do Amazon S3:

  • É possível controlar as solicitações, os usuários ou os grupos permitidos por um VPC endpoint específico. Consulte informações sobre esse tipo de controle de acesso em Controlling access to VPC endpoints using endpoint policies no Guia do usuário da VPC.

  • É possível controlar quais VPCs ou VPC endpoints têm acesso aos seus buckets usando as políticas de bucket do Amazon S3. Para obter exemplos desse tipo de controle de acesso de política de bucket, consulte os seguintes tópicos sobre restrição de acesso.

Importante

Ao aplicar políticas de bucket do Amazon S3 para os endpoints da VPC descritos nesta seção, talvez você bloqueie o acesso ao bucket de maneira não intencional. As permissões de bucket destinadas especificamente a limitar o acesso do bucket às conexões originadas do seu VPC endpoint podem bloquear todas as conexões ao bucket. Consulte informações sobre como corrigir esse problema em Como corrigir uma política de bucket quando ela tem o ID da VPC ou do endpoint da VPC errado? no Centro de Conhecimento da AWS Support.

Restringir o acesso a um VPC endpoint específico

O seguinte é um exemplo de um política de bucket do Amazon S3 que restringe o acesso a um bucket específico, awsexamplebucket1, somente no VPC endpoint com o ID vpce-1a2b3c4d. Se o endpoint especificado não for usado, essa política negará todo acesso ao bucket. A condição aws:SourceVpce especifica o endpoint. A condição aws:SourceVpce não exige um nome do recurso da Amazon (ARN) para o recurso do endpoint da VPC, somente o ID correspondente. Para obter mais informações sobre o uso de condições em uma política, consulte Exemplos de políticas de bucket usando chaves de condição.

Importante
  • Antes de usar a política de exemplo a seguir, substitua o ID do VPC endpoint por um valor apropriado para o caso de uso. Caso contrário, não será possível acessar o bucket.

  • Essa política desabilita o acesso do console ao bucket especificado, pois as solicitações do console não se originam do endpoint da VPC especificado.

{ "Version": "2012-10-17", "Id": "Policy1415115909152", "Statement": [ { "Sid": "Access-to-specific-VPCE-only", "Principal": "*", "Action": "s3:*", "Effect": "Deny", "Resource": ["arn:aws:s3:::awsexamplebucket1", "arn:aws:s3:::awsexamplebucket1/*"], "Condition": { "StringNotEquals": { "aws:SourceVpce": "vpce-1a2b3c4d" } } } ] }

Restringir o acesso a uma VPC específica

Você pode criar uma política de bucket que restringe o acesso a uma VPC específica usando a condição aws:SourceVpc. Isso será útil se você tiver vários VPC endpoints configurados na mesma VPC e desejar gerenciar o acesso aos buckets do Amazon S3 para todos os endpoints. Veja a seguir um exemplo de política que nega acesso a awsexamplebucket1 e seus objetos para qualquer pessoa de fora da VPC vpc-111bbb22. Se a VPC especificada não for usada, a política negará todo acesso ao bucket. Essa instrução não concede acesso ao bucket. Para conceder acesso, é necessário adicionar uma instrução Allow separada. A chave de condição vpc-111bbb22 não exige um ARN para o recurso da VPC, somente o ID correspondente.

Importante
  • Antes de usar a política de exemplo a seguir, substitua o ID da VPC por um valor apropriado para o caso de uso. Caso contrário, não será possível acessar o bucket.

  • Essa política desabilita o acesso do console ao bucket especificado, pois as solicitações do console não se originam da VPC especificada.

{ "Version": "2012-10-17", "Id": "Policy1415115909153", "Statement": [ { "Sid": "Access-to-specific-VPC-only", "Principal": "*", "Action": "s3:*", "Effect": "Deny", "Resource": ["arn:aws:s3:::awsexamplebucket1", "arn:aws:s3:::awsexamplebucket1/*"], "Condition": { "StringNotEquals": { "aws:SourceVpc": "vpc-111bbb22" } } } ] }