Control del acceso a y para usuarios y roles de IAM mediante etiquetas de recursos de IAM - AWS Identity and Access Management

Control del acceso a y para usuarios y roles de IAM mediante etiquetas de recursos de IAM

Utilice la información de la siguiente sección para controlar quién puede obtener acceso a los usuarios y roles de IAM y a qué recursos pueden acceder. Para obtener información general y ejemplos para controlar el acceso a otros recursos de AWS, consulte Control del acceso a recursos de AWS mediante etiquetas de recursos.

Las etiquetas se pueden asociar al recurso de IAM, pasar en la solicitud o asociar a la entidad principal que realiza la solicitud. Un usuario o rol de IAM puede ser tanto un recurso como una entidad principal. Por ejemplo, puede escribir una política que permita a un usuario enumerar los grupos de un usuario. Esta operación solo se permite si el usuario que realiza la solicitud (entidad principal) tiene la misma etiqueta project=blue que el usuario que está intentando ver. En este ejemplo, el usuario puede ver la pertenencia a grupos de cualquier usuario, incluidos ellos mismos, siempre y cuando trabajen en el mismo proyecto.

Para controlar el acceso según las etiquetas, debe proporcionar información de las etiquetas en el elemento de condición de una política. Al crear una política de IAM, puede utilizar las etiquetas de IAM y la clave de condición de etiqueta asociada para controlar el acceso a cualquiera de las siguientes operaciones:

  • Resource (Recurso): permite controlar el acceso a los recursos de usuario o rol en función de sus etiquetas. Para ello, utilice la clave de condición iam: ResourceTag/nombre-clave para especificar qué par de clave-valor de etiqueta debe asociarse al recurso. En otros recursos de AWS se utilizan otras claves específicas de servicios similares, como ec2:ResourceTag. Para obtener más información, consulte Control del acceso a los recursos de AWS.

  • Solicitud: controla las etiquetas que se pueden pasar en una solicitud de IAM. Para ello, utilice la clave de condición aws: RequestTag/clave-nombre para especificar qué etiquetas se pueden agregar, cambiar o eliminar de un usuario o rol de IAM. Esta clave se utiliza de la misma forma para los recursos de IAM y otros recursos de AWS. Para obtener más información, consulte Control del acceso durante solicitudes de AWS.

  • Entidad principal: permite controlar qué puede hacer la persona que realiza la solicitud (entidad principal) en función de las etiquetas que se asocian al usuario o rol de IAM. Para ello, utilice la clave de condición aws: PrincipalTag/clave-nombre para especificar qué etiquetas se deben asociar al usuario o rol de IAM antes de que se admita la solicitud.

  • Cualquier parte del proceso de autorización: utilice la clave de condición aws: TagKeys para controlar si se pueden utilizar claves de etiqueta específicas en un recurso, en una solicitud, o por una entidad principal. En este caso, el valor de clave no importa. Esta clave se comporta de forma similar para los recursos de IAM y otros recursos de AWS. Sin embargo, al etiquetar a un usuario en IAM, esto también controla si la entidad principal puede realizar la solicitud a cualquier servicio. Para obtener más información, consulte Control del acceso en función de las claves de etiqueta.

Puede crear una política de IAM utilizando el editor visual, con JSON o importando una política administrada existente. Para obtener más información, consulte Creación de políticas de IAM.

Control del acceso a los recursos de IAM

Puede utilizar etiquetas en sus políticas de IAM para controlar el acceso a recursos de usuarios y roles de IAM. No obstante, debido a que IAM no es compatible con etiquetas de grupos, no puede utilizar etiquetas para controlar el acceso a grupos.

En este ejemplo se muestra cómo crear una política que permite eliminar usuarios con la etiqueta status=terminated.Para utilizar esta política, sustituya el texto rojo en cursiva del ejemplo de política por su propia información. A continuación, siga las instrucciones en crear una política o editar una política.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:DeleteUser", "Resource": "*", "Condition": {"StringLike": {"iam:ResourceTag/status": "terminated"}} }] }

En este ejemplo se muestra cómo crear una política que permite editar las etiquetas para todos los usuarios con la etiqueta jobFunction = employee.Para utilizar esta política, sustituya el texto rojo en cursiva del ejemplo de política por su propia información. A continuación, siga las instrucciones en crear una política o editar una política.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "iam:ListUserTags", "iam:TagUser", "iam:UntagUser" ], "Resource": "*", "Condition": {"StringLike": {"iam:ResourceTag/jobFunction": "employee"}} }] }

Control del acceso durante solicitudes de IAM

Puede utilizar etiquetas en sus políticas de IAM para controlar qué etiquetas se pueden pasar en la solicitud de IAM. Puede especificar qué pares de clave-valor de etiqueta se pueden añadir, cambiar o eliminar en un usuario o rol de IAM.

En este ejemplo se muestra cómo crear una política que permite etiquetar usuarios solo con una etiqueta department = HR o department = CS.Para utilizar esta política, sustituya el texto rojo en cursiva del ejemplo de política por su propia información. A continuación, siga las instrucciones en crear una política o editar una política.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:TagUser", "Resource": "*", "Condition": {"StringLike": {"aws:RequestTag/department": [ "HR", "CS" ]}} }] }

Control del acceso para entidades principales de IAM

Las etiquetas de IAM le permiten controlar lo que puede hacer la entidad principal en función de las etiquetas asociadas a la identidad de esa persona.

En este ejemplo se muestra cómo crear una política que permite que una entidad principal inicie o detenga una instancia de Amazon EC2. Esta operación solo se permite cuando la etiqueta de recurso de la instancia y la etiqueta de la entidad principal tienen el mismo valor para la clave de etiqueta cost-center.Para utilizar esta política, sustituya el texto rojo en cursiva del ejemplo de política por su propia información. A continuación, siga las instrucciones en crear una política o editar una política.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "ec2:startInstances", "ec2:stopInstances" ], "Resource": "*", "Condition": {"StringEquals": {"ec2:ResourceTag/cost-center": "${aws:PrincipalTag/cost-center}"}} } }

Control del acceso en función de las claves de etiqueta

Puede utilizar etiquetas en sus políticas IAM para controlar si se pueden utilizar claves de etiqueta específicas en un recurso, en una solicitud o por una entidad principal.

En este ejemplo se muestra cómo crear una política que permite eliminar de usuarios solo la etiqueta con la clave temporary.Para utilizar esta política, sustituya el texto rojo en cursiva del ejemplo de política por su propia información. A continuación, siga las instrucciones en crear una política o editar una política.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:UntagUser", "Resource": "*", "Condition": {"ForAllValues:StringEquals": {"aws:TagKeys": ["temporary"]}} }] }