Uso de roles de IAM - AWS Identity and Access Management

Uso de roles de IAM

Para que un usuario, una aplicación o un servicio de IAM pueda utilizar un rol que usted haya creado, debe conceder permisos para cambiar al rol. Puede utilizar cualquier política asociada a uno de los grupos de usuarios de IAM o al mismo usuario para conceder los permisos necesarios. En esta sección se describe cómo conceder a los usuarios permiso para utilizar un rol y, a continuación, cómo el usuario puede cambiar a un rol con la Consola de administración de AWS, la Herramientas para Windows PowerShell, la AWS Command Line Interface (AWS CLI) y la API AssumeRole.

importante

Si crea un rol mediante programación en lugar de hacerlo en la consola de IAM, tiene la opción de añadir una Path de 512 caracteres como máximo además del RoleName, que puede tener un máximo de 64 caracteres. Sin embargo, si desea utilizar un rol con la característica Switch Role (Cambiar rol) en la consola de AWS, la combinación de Path y RoleName no puede superar los 64 caracteres.

Puede cambiar de rol desde la Consola de administración de AWS. Puede asumir un rol llamando a una operación de la API o de la AWS CLI, o utilizando una URL personalizada. El método que utilice determinará quién puede asumir el rol y cuánto tiempo puede durar la sesión de rol.

Comparación de métodos para el uso de roles
Método ¿Quién puede asumir el rol? Método para especificar la duración de las credenciales Duración de las credenciales (mín | máx | predeterminada)
Consola de administración de AWS Usuario de IAM (mediante el cambio de roles) Ninguno 1 h | 1 h | 1 h
Operación assume-role de la CLI u operación AssumeRole de la API Usuario o rol de IAM¹ Parámetro duration-seconds de la CLI o parámetro DurationSeconds de la API 15 min | configuración de la duración máxima de la sesión² | 1 h
Operación assume-role-with-saml de la CLI u operación AssumeRoleWithSAML de la API Cualquier usuario autenticado mediante SAML Parámetro duration-seconds de la CLI o parámetro DurationSeconds de la API 15 min | configuración de la duración máxima de la sesión² | 1 h
Operación assume-role-with-web-identity de la CLI u operación AssumeRoleWithWebIdentity de la API Cualquier usuario autenticado con un proveedor de identidad web Parámetro duration-seconds de la CLI o parámetro DurationSeconds de la API 15 min | configuración de la duración máxima de la sesión² | 1 h
URL de la consola construida con AssumeRole Usuario o rol de IAM Parámetro HTMLSessionDuration en la URL 15 min | 12 h | 1 h
URL de la consola construida con AssumeRoleWithSAML Cualquier usuario autenticado mediante SAML Parámetro HTMLSessionDuration en la URL 15 min | 12 h | 1 h
URL de la consola construida con AssumeRoleWithWebIdentity Cualquier usuario autenticado con un proveedor de identidad web Parámetro HTMLSessionDuration en la URL 15 min | 12 h | 1 h

¹El uso de las credenciales de un rol para asumir otro rol se denomina encadenamiento de roles. Cuando se utiliza el encadenamiento de roles, las nuevas credenciales tienen una duración máxima de una hora. Cuando utiliza roles para conceder permisos a las aplicaciones que se ejecutan en instancias EC2, esas aplicaciones no están sujetas a esta limitación.

²La duración máxima de la sesión es un valor que se puede aplicar a un rol desde la consola, la AWS CLI o la API. Este ajuste especifica la duración máxima de la sesión para el rol cuando este se asume desde la CLI o la API. Esta opción puede tener un valor comprendido entre 1 y 12 horas. Para obtener información detallada sobre la configuración de la duración máxima de la sesión, consulte Modificación de un rol. Este ajuste determina la duración máxima de la sesión que se puede solicitar al obtener las credenciales del rol. Por ejemplo, cuando utilice las operaciones AssumeRole* de la API para asumir un rol, puede usar el parámetro DurationSeconds para especificar la duración de la sesión. Use este parámetro para especificar la duración de la sesión de rol, que puede oscilar entre 900 segundos (15 minutos) y el valor de la duración máxima de la sesión especificado para el rol. Para obtener información sobre cómo ver el valor máximo para el rol, consulte Cómo consultar la configuración de la duración máxima de la sesión para un rol más adelante en esta misma página.

nota

La configuración de máxima duración de sesión se aplica únicamente a las sesiones creadas con las operaciones de API AssumeRole* o los comandos de la CLI assume-role*. La configuración no limita las sesiones asumidas por los servicios de AWS.

Cómo consultar la configuración de la duración máxima de la sesión para un rol

Cuando se utiliza una operación de la AWS CLI o de la API para asumir un rol, es posible especificar un valor para el parámetro DurationSeconds. Puede utilizar este parámetro para especificar la duración de la sesión de rol, que puede oscilar entre 900 segundos (15 minutos) y el valor indicado en la opción Maximum CLI/API session duration (Duración máxima de la sesión de la CLI o la API) para el rol. Antes de especificar el parámetro, debe consultar este valor para su rol. Si especifica un valor para el parámetro DurationSeconds superior a valor máximo, la operación genera un error.

Para ver la duración máxima de la sesión de un rol (consola)

  1. En el panel de navegación de la consola de IAM, elija Roles (Funciones).

  2. Elija el nombre del rol que desea ver.

  3. Junto a Maximum CLI/API session duration (Duración máxima de la sesión de la API o la API), consulte la duración máxima de la sesión que puede especificar en la operación de la AWS CLI o de la API.

Para ver la duración máxima de la sesión de un rol (AWS CLI)

  1. Si no conoce el nombre del rol que desea asumir, ejecute el siguiente comando para enumerar los roles de su cuenta:

  2. Para ver la duración máxima de la sesión de rol, ejecute el siguiente comando. A continuación, consulte el parámetro de duración máxima de la sesión.

Para ver la duración máxima de la sesión de un rol (API de AWS)

  1. Si no conoce el nombre del rol que desea asumir, llame a la siguiente operación para enumerar los roles de su cuenta:

  2. Para ver la duración máxima de la sesión de rol, ejecute la siguiente operación. A continuación, consulte el parámetro de duración máxima de la sesión.