Identity and Access Management para emparelhamento de VPC
Por padrão, usuários não podem criar ou modificar conexões de emparelhamento de VPC. Para conceder acesso a recursos de emparelhamento da VPC, anexe uma política do IAM a uma identidade do IAM, como um perfil.
Exemplos
Para obter uma lista de ações da Amazon VPC, dos recursos compatíveis e das chaves de condição para cada ação, consulte Ações, recursos e chaves de condição do Amazon EC2 na Referência de autorização do serviço.
Exemplo: criar uma conexão de emparelhamento da VPC
A política a seguir permite que usuários criem solicitações de conexão de emparelhamento da VPC usando VPCs marcadas com Purpose=Peering
. A primeira instrução aplica uma chave de condição (ec2:ResourceTag
) ao recurso da VPC. Observe que o recurso de VPC para a ação CreateVpcPeeringConnection
é sempre a VPC solicitante.
A segunda instrução concede permissão aos usuários para criar os recursos de conexão de emparelhamento da VPC e usar o curinga * no lugar de um ID de recurso específico.
{ "Version": "2012-10-17", "Statement":[ { "Effect":"Allow", "Action": "ec2:CreateVpcPeeringConnection", "Resource": "arn:aws:ec2:
region
:account-id
:vpc/*", "Condition": { "StringEquals": { "ec2:ResourceTag/Purpose
": "Peering
" } } }, { "Effect": "Allow", "Action": "ec2:CreateVpcPeeringConnection", "Resource": "arn:aws:ec2:region
:account-id
:vpc-peering-connection/*" } ] }
A política a seguir permite que os usuários da conta da AWS especificada criem conexões de emparelhamento da VPC usando qualquer VPC na região indicada, mas somente se a VPC que aceitará as conexões de emparelhamento for uma VPC específica em uma conta específica.
{ "Version": "2012-10-17", "Statement": [ { "Effect":"Allow", "Action": "ec2:CreateVpcPeeringConnection", "Resource": "arn:aws:ec2:
region
:account-id-1
:vpc/*" }, { "Effect": "Allow", "Action": "ec2:CreateVpcPeeringConnection", "Resource": "arn:aws:ec2:region
:account-id-1
:vpc-peering-connection/*", "Condition": { "ArnEquals": { "ec2:AccepterVpc": "arn:aws:ec2:region
:account-id-2
:vpc/vpc-id
" } } } ] }
Exemplo: aceitar uma conexão de emparelhamento da VPC
A política a seguir permite que usuários aceitem solicitações de conexão de emparelhamento da VPC de uma conta específica da AWS. Isso ajuda a evitar que usuários aceitem solicitações de conexão de emparelhamento de VPC de contas desconhecidas. A instrução usa a chave de condição ec2:RequesterVpc
para reforçar isso.
{ "Version": "2012-10-17", "Statement":[ { "Effect":"Allow", "Action": "ec2:AcceptVpcPeeringConnection", "Resource": "arn:aws:ec2:
region
:account-id-1
:vpc-peering-connection/*", "Condition": { "ArnEquals": { "ec2:RequesterVpc": "arn:aws:ec2:region
:account-id-2
:vpc/*" } } } ] }
A política a seguir concede permissões aos usuários para aceitarem solicitações de emparelhamento da VPC se a VPC tiver a tag Purpose=Peering
.
{ "Version": "2012-10-17", "Statement":[ { "Effect": "Allow", "Action": "ec2:AcceptVpcPeeringConnection", "Resource": "arn:aws:ec2:
region
:account-id
:vpc/*", "Condition": { "StringEquals": { "ec2:ResourceTag/Purpose
": "Peering
" } } } ] }
Exemplo: excluir uma conexão de emparelhamento da VPC
A política a seguir permite que usuários da conta indicada excluam qualquer conexão de emparelhamento da VPC, exceto as que usam a VPC especificada, que está na mesma conta. A política especifica as chaves de condição ec2:AccepterVpc
e ec2:RequesterVpc
, já que a VPC pode ter sido a VPC solicitante ou a VPC de mesmo nível na solicitação de conexão de emparelhamento da VPC original.
{ "Version": "2012-10-17", "Statement": [ { "Effect":"Allow", "Action": "ec2:DeleteVpcPeeringConnection", "Resource": "arn:aws:ec2:
region
:account-id
:vpc-peering-connection/*", "Condition": { "ArnNotEquals": { "ec2:AccepterVpc": "arn:aws:ec2:region
:account-id
:vpc/vpc-id
", "ec2:RequesterVpc": "arn:aws:ec2:region
:account-id
:vpc/vpc-id
" } } } ] }
Exemplo: trabalhar em uma conta específica
A política a seguir permite que os usuários trabalhem com conexões de emparelhamento da VPC em uma conta específica. Os usuários podem visualizar, criar, aceitar, rejeitar e excluir conexões de emparelhamento da VPC, desde que todas estejam na conta da AWS.
A primeira instrução permite que os usuários visualizem todas as conexões de emparelhamento da VPC. O elemento Resource
exige um * curinga neste caso, pois esta ação de API (DescribeVpcPeeringConnections
), atualmente, não é compatível com permissões em nível de recurso.
A segunda instrução permite que os usuários criem conexões de emparelhamento da VPC e, para que possam fazê-lo, proporciona acesso a todas as VPCs na conta especificada.
A terceira instrução usa um curinga * como parte do elemento Action
para permitir todas as ações de conexão de emparelhamento da VPC. As chaves de condição garantem que todas as ações só possam ser executadas em conexões de emparelhamento da VPC em VPCs que façam parte da conta. Por exemplo, um usuário não pode excluir uma conexão de emparelhamento da VPC se a VPC receptora ou solicitante estiver em uma conta diferente. Um usuário não pode criar uma conexão de emparelhamento da VPC com uma VPC em uma conta diferente.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:DescribeVpcPeeringConnections", "Resource": "*" }, { "Effect": "Allow", "Action": ["ec2:CreateVpcPeeringConnection","ec2:AcceptVpcPeeringConnection"], "Resource": "arn:aws:ec2:*:
account-id
:vpc/*" }, { "Effect": "Allow", "Action": "ec2:*VpcPeeringConnection", "Resource": "arn:aws:ec2:*:account-id
:vpc-peering-connection/*", "Condition": { "ArnEquals": { "ec2:AccepterVpc": "arn:aws:ec2:*:account-id
:vpc/*", "ec2:RequesterVpc": "arn:aws:ec2:*:account-id
:vpc/*" } } } ] }
Exemplo: gerenciar conexões de emparelhamento da VPC usando o console
Para visualizar conexões de emparelhamento de VPC no console da Amazon VPC, os usuários precisam ter permissão para usar a ação ec2:DescribeVpcPeeringConnections
. Para usar a página Create Peering Connection (Criar conexão de emparelhamento), os usuários precisam ter permissão para usar a ação ec2:DescribeVpcs
. Isso concede a eles permissão para visualizar e selecionar uma VPC. Você pode aplicar permissões em nível de recurso para todas as ações ec2:*PeeringConnection
, exceto ec2:DescribeVpcPeeringConnections
.
A política a seguir permite que os usuários visualizem as conexões de emparelhamento da VPC e usem a caixa de diálogo Create VPC Peering Connection (Criar conexão de emparelhamento da VPC) para criar uma conexão de emparelhamento da VPC usando somente uma VPC solicitante específica. Se usuários tentarem criar uma conexão de emparelhamento de VPC com uma VPC solicitante, haverá falha na solicitação.
{ "Version": "2012-10-17", "Statement": [ { "Effect":"Allow", "Action": [ "ec2:DescribeVpcPeeringConnections", "ec2:DescribeVpcs" ], "Resource": "*" }, { "Effect":"Allow", "Action": "ec2:CreateVpcPeeringConnection", "Resource": [ "arn:aws:ec2:*:*:vpc/
vpc-id
", "arn:aws:ec2:*:*:vpc-peering-connection/*" ] } ] }