Uso de etiquetas en las políticas de permisos de IAM - Recursos de etiquetado AWS

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 etiquetas en las políticas de permisos de IAM

AWS Identity and Access Management (IAM) es la Servicio de AWS que utiliza para crear y gestionar las políticas de permisos que determinan quién puede acceder a sus recursos de AWS. Cada intento de acceder a un servicio de AWS o leer o escribir un recurso de AWS está controlado por una política de IAM.

Estas políticas le permiten proporcionar acceso detallado a los recursos. Una de las características que puede utilizar para ajustar este acceso es el elemento Condition de la política. Este elemento le permite especificar las condiciones que deben cumplir con la solicitud para determinar si la solicitud puede continuar. Entre las cosas que puede comprobar con el elemento Condition se encuentran las siguientes:

  • Las etiquetas asociadas al usuario o rol que realiza la solicitud.

  • Etiquetas adjuntas al recurso objeto de la solicitud.

Claves de condición relacionadas con etiquetas

La siguiente tabla describe las claves de condición que puede utilizar en una política de permisos de IAM para controlar el acceso basado en etiquetas. Estas claves de condición le permiten hacer lo siguiente:

  • Comparar las etiquetas de la entidad principal que realiza la operación.

  • Comparar las etiquetas proporcionadas con la operación como parámetro.

  • Comparar las etiquetas asociadas a un recurso al que accedería la operación.

Para obtener más detalles sobre una clave de condición y cómo utilizarla, consulte la página enlazada en la columna Nombre de clave de condición.

Nombre de clave de condición Descripción

aws:PrincipalTag

Compara la etiqueta asociada a la entidad principal (rol o usuario de IAM) que realiza la solicitud con la etiqueta que especifique en la política.

aws:RequestTag Compara el par clave-valor de etiqueta que se transfirió en la solicitud como un parámetro con el par de etiquetas clave-valor especificado en la política.

aws:ResourceTag

Compara el par clave-valor que se adjunta al recurso con el par clave-valor de la etiqueta que se especifica en la política.

aws:TagKeys Compara solo las claves de etiqueta de la solicitud con las claves que se especifican en la política.

Ejemplos de políticas de IAM que utilizan etiquetas

ejemplo Ejemplo 1: obligar a los usuarios a adjuntar una etiqueta específica al crear un recurso

El siguiente ejemplo de política de permisos de IAM muestra cómo obligar al usuario que crea o modifica las etiquetas de una política de IAM a incluir una etiqueta con la clave Owner. Además, la política requiere que el valor de la etiqueta Owner se establezca en el mismo valor que la etiqueta actualmente adjunta a la entidad principal de seguridad de llamada. Para que esta estrategia funcione, todas las entidades principales deben tener una etiqueta Owner adjunta y se debe impedir que los usuarios modifiquen esa etiqueta. Si se intenta crear o modificar una política sin incluir la etiqueta Owner, la política no coincide y la operación no está permitida.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "TagCustomerManagedPolicies", "Effect": "Allow", "Action": [ "iam:CreatePolicy", "iam:TagPolicy" ], "Resource": "arn:aws:iam::123456789012:policy/*", "Condition": { "StringEquals": {"aws:RequestTag/Owner": "${aws:PrincipalTag/Owner}"} } } ] }
ejemplo Ejemplo 2: usar etiquetas para limitar el acceso a un recurso a su “propietario”

El siguiente ejemplo de política de permisos de IAM permite al usuario detener una instancia de Amazon EC2 en ejecución solo si la entidad principal de seguridad que realiza la llamada está etiquetada con el mismo valor de etiqueta project que la instancia.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor1", "Effect": "Allow", "Action": [ "ec2:StopInstances" ], "Resource": [ "arn:aws:iam::123456789012:instance/*" ], "Condition": { "StringEquals": {"aws:ResourceTag/project": "${aws:PrincipalTag/project}"} } } ] }

Este es un ejemplo de control de acceso basado en atributos (ABAC). Para obtener más información y ejemplos adicionales sobre el uso de políticas de IAM para implementar una estrategia de control de acceso basada en etiquetas, consulte los siguientes temas en la Guía del usuario de AWS Identity and Access Management: