Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso de los puntos de conexión de VPC para controlar el acceso a los recursos de AWS KMS
Puede controlar el acceso a recursos y operaciones de AWS KMScuando la solicitud proviene de VPC o utiliza un punto de conexión de VPC. Para ello, utilice una de las siguientes claves de condición global en una política de claves o política de IAM.
-
Utilice la clave de condición
aws:sourceVpce
para conceder o restringir el acceso en función del punto de conexión de VPC. -
Utilice la clave de condición
aws:sourceVpc
para conceder o restringir el acceso en función de la VPC que aloja el punto de conexión privado.
nota
Actúe con precaución al crear políticas de IAM y de claves basadas en el punto de conexión de VPC. Si una declaración de política requiere que las solicitudes procedan de una VPC o un punto de conexión de VPC determinados, las solicitudes de los servicios de AWS integrados que utilicen un recurso AWS KMS en su nombre podrían producir un error. Para obtener ayuda, consulte Uso de las condiciones VPC de los puntos finales en las políticas con permisos AWS KMS.
Además, la clave de condición aws:sourceIP
no es efectiva si la solicitud procede de un punto de conexión de Amazon VPC. Para restringir las solicitudes a un punto de conexión de VPC, utilice las claves de condición aws:sourceVpce
o aws:sourceVpc
. Para obtener más información, consulte Administración de identidades y accesos para puntos de conexión de VPC y servicios de puntos de conexión de VPC en la Guía de AWS PrivateLink.
Puede utilizar estas claves de condición globales para controlar el acceso a AWS KMS keys (claves KMS), alias y operaciones como CreateKey que no dependen de ningún recurso en particular.
Por ejemplo, la siguiente política de claves de ejemplo permite a un usuario realizar operaciones de cifrado con una clave KMS solo cuando la solicitud utiliza el punto de conexión de VPC especificado. Cuando un usuario realiza una solicitud a AWS KMS, el ID del punto de conexión de VPC de la solicitud se compara con el valor de la clave de condición aws:sourceVpce
de la política. Si no coinciden, la solicitud se deniega.
Para utilizar una política como esta, sustituya el ID de la cuenta de Cuenta de AWS del marcador de posición y los ID del punto de conexión de VPC por valores válidos para su cuenta.
{ "Id": "example-key-1", "Version": "2012-10-17", "Statement": [ { "Sid": "Enable IAM policies", "Effect": "Allow", "Principal": {"AWS":["
111122223333
"]}, "Action": ["kms:*"], "Resource": "*" }, { "Sid": "Restrict usage to my VPC endpoint", "Effect": "Deny", "Principal": "*", "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*" ], "Resource": "*", "Condition": { "StringNotEquals": { "aws:sourceVpce": "vpce-1234abcdf5678c90a
" } } } ] }
También puede utilizar la clave de condición aws:sourceVpc
para restringir el acceso a las claves KMS en función de la VPC en la que reside el punto de conexión.
La siguiente política de claves de ejemplo permite comandos que administran la clave KMS solo cuando proceden de vpc-12345678
. Además, permite comandos que utilizan la clave KMS para operaciones criptográficas únicamente si proceden de vpc-2b2b2b2b
. Podría utilizar una política como esta en caso de que una aplicación se ejecute en una VPC, pero utiliza una segunda VPC aislada para funciones de administración.
Para utilizar una política como esta, sustituya el ID de la cuenta de Cuenta de AWS del marcador de posición y los ID del punto de conexión de VPC por valores válidos para su cuenta.
{ "Id": "example-key-2", "Version": "2012-10-17", "Statement": [ { "Sid": "Allow administrative actions from
vpc-12345678
", "Effect": "Allow", "Principal": {"AWS": "111122223333
"}, "Action": [ "kms:Create*","kms:Enable*","kms:Put*","kms:Update*", "kms:Revoke*","kms:Disable*","kms:Delete*", "kms:TagResource", "kms:UntagResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:sourceVpc": "vpc-12345678
" } } }, { "Sid": "Allow key usage fromvpc-2b2b2b2b
", "Effect": "Allow", "Principal": {"AWS": "111122223333
"}, "Action": [ "kms:Encrypt","kms:Decrypt","kms:GenerateDataKey*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:sourceVpc": "vpc-2b2b2b2b
" } } }, { "Sid": "Allow read actions from everywhere", "Effect": "Allow", "Principal": {"AWS": "111122223333
"}, "Action": [ "kms:Describe*","kms:List*","kms:Get*" ], "Resource": "*", } ] }