Administración de identidades y accesos para la interconexión de VPC
De forma predeterminada, los usuarios no pueden crear ni modificar interconexiones de VPC. Para conceder acceso a recursos de emparejamiento de VPC, asocie una política de IAM a una identidad de IAM como, por ejemplo, un rol.
Ejemplos
Para obtener una lista de las acciones de Amazon VPC y las claves de condiciones y recursos compatibles para cada acción, consulte Acciones, recursos y claves de condición para Amazon EC2 en la Referencia de autorización de servicios.
Ejemplo: crear una conexión de emparejamiento de VPC
La siguiente política otorga permiso a los usuarios para crear solicitudes de conexión de emparejamiento de VPC mediante VPC con la etiqueta Purpose=Peering
. La primera instrucción aplica una clave de condición (ec2:ResourceTag
) al recurso de la VPC. Tenga en cuenta que el recurso de la VPC de la acción CreateVpcPeeringConnection
corresponde siempre a la VPC solicitante.
La segunda instrucción otorga a los usuarios permiso para crear recursos de conexión de emparejamiento de VPC y, por lo tanto, usa el carácter comodín * en lugar de un 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/*" } ] }
La siguiente política otorga permiso a los usuarios de la cuenta de AWS especificada para crear conexiones de emparejamiento de VPC mediante cualquier VPC de la región especificada, pero solo si la VPC que aceptará la conexión de emparejamiento es una VPC determinada en otra cuenta 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
" } } } ] }
Ejemplo: aceptar una conexión de emparejamiento de VPC
La siguiente política otorga permiso a los usuarios para aceptar solicitudes de conexión de emparejamiento de VPC de una cuenta de AWS específica. Esto ayuda a evitar que los usuarios acepten solicitudes de interconexión de VPC de cuentas desconocidas. La instrucción utiliza la clave de condición ec2:RequesterVpc
para hacer que esto se cumpla.
{ "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/*" } } } ] }
La siguiente política otorga permiso a los usuarios para aceptar solicitudes de emparejamiento solo si la VPC tiene la etiqueta 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
" } } } ] }
Ejemplo: eliminar una conexión de emparejamiento de VPC
La siguiente política otorga permiso a los usuarios de la cuenta especificada para eliminar cualquier conexión de emparejamiento de VPC, salvo aquellas que usen la VPC especificada, la cual se encuentra en la misma cuenta. La política especifica las claves de condición ec2:AccepterVpc
y ec2:RequesterVpc
, ya que es posible que la VPC haya sido la VPC solicitante o la VPC del mismo nivel en la solicitud de interconexión de 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
" } } } ] }
Ejemplo: trabajar con una cuenta específica
La siguiente política otorga permiso a los usuarios para usar conexiones de emparejamiento de VPC de una cuenta específica. La política permite a los usuarios ver, crear, aceptar, rechazar y eliminar interconexiones de VPC siempre que se encuentren en la misma cuenta de AWS.
La primera instrucción otorga permiso a los usuarios para ver todas las conexiones de emparejamiento de VPC. El elemento Resource
requiere el carácter comodín * en este caso, ya que la acción de la API (DescribeVpcPeeringConnections
) no admite actualmente los permisos de nivel de recurso.
La segunda instrucción otorga permiso a los usuarios para crear conexiones de emparejamiento de VPC y permite para ello el acceso a todas las VPC de la cuenta especificada.
La tercera instrucción usa el carácter comodín * como parte del elemento Action
para otorgar permiso para todas las acciones de conexión de emparejamiento de VPC. Las claves de condición aseguran que las acciones solo se puedan realizar en interconexiones de VPC con VPC que forman parte de la cuenta. Por ejemplo, un usuario no puede eliminar una conexión de emparejamiento de VPC si la VPC solicitante o responsable de aceptar la solicitud se encuentran en cuentas distintas. Los usuarios no podrán crear interconexiones de VPC con VPC de otras cuentas distintas.
{ "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/*" } } } ] }
Ejemplo: administrar conexiones de emparejamiento de VPC mediante la consola
Para consultar las interconexiones de VPC en la consola de Amazon VPC, los usuarios deben tener permiso para utilizar la acción ec2:DescribeVpcPeeringConnections
. Para poder utilizar la página Create Peering Connection (Crear interconexiones), los usuarios deben tener permiso para utilizar la acción ec2:DescribeVpcs
. Esto les concede permiso para visualizar y seleccionar una VPC. Puede aplicar permisos de nivel de recurso a todas las acciones ec2:*PeeringConnection
excepto ec2:DescribeVpcPeeringConnections
.
La siguiente política otorga permiso a los usuarios para ver conexiones de emparejamiento de VPC y usar el cuadro de diálogo Create VPC Peering Connection (Crear conexiones de emparejamiento de VPC) para crear una conexión de emparejamiento de VPC que use solo una VPC solicitante específica. Si los usuarios intentan crear una interconexión de VPC con una VPC solicitante distinta, se producirá un error en la solicitud.
{ "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/*" ] } ] }