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. También se explica cómo el usuario puede cambiar a un rol de la Consola de administración de AWS, Herramientas para Windows PowerShell, la AWS Command Line Interface (AWS CLI) y la API AssumeRole.

importante

Cuando 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 hasta 512 caracteres 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 Consola de administración de AWS, la combinación de Path yRoleName 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 de asumir el rol ¿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) Duración máxima de la sesión en la página Resumen de funciones 1 h | Configuración de la duración máxima de la sesión² | 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.

² Esta opción puede tener un valor comprendido entre 1 y 12 horas. Para obtener información detallada sobre modificar 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. Utilice 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 duración máxima de la sesión para el rol. A los usuarios deIAM que cambian de rol en la consola se les concede la duración máxima de la sesión, o el tiempo restante en la sesión del usuario de IAM, lo que sea menor. Suponga que establece una duración máxima de 5 horas en un rol. Un usuario de IAM que ha iniciado sesión en la consola durante 10 horas (fuera del máximo predeterminado de 12) cambia al rol. La duración de la sesión de rol disponible es de 2 horas. Para obtener información sobre cómo ver el valor máximo para el rol, consulte Ver 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 duración máxima de sesión no limita las sesiones que asumen los servicios de AWS.

Ver la configuración de la duración máxima de la sesión para un rol

Puede especificar la duración máxima de la sesión de un rol mediante la Consola de administración de AWS o mediante la API de AWS o AWS CLI. 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 de duración máxima de la sesión 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 Duración máxima de la sesión, vea la duración máxima de la sesión que se concede para el rol. Esta es la duración máxima de la sesión que puede especificar en su AWS CLIu operación de 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.