Creación de un rol para una federación SAML 2.0 (consola)
Puede utilizar la federación SAML 2.0 en lugar de crear usuarios de IAM en una Cuenta de AWS. Con un proveedor de identidad (IdP), puede administrar sus identidades de usuario fuera de AWS y conceder permisos a estas identidades de usuarios externos para que tengan acceso a los recursos de AWS de su cuenta. Para obtener más información acerca de la identidad federada y los proveedores de identidad, consulte Federación y proveedores de identidades.
nota
Para mejorar la resiliencia de la federación, le recomendamos que configure su IdP y su federación de AWS para que admitan varios puntos de conexión de inicio de sesión de SAML. Para obtener más información, consulte el artículo del blog sobre seguridad de AWS, How to use regional SAML endpoints for failover
Requisitos previos para crear un rol para SAML
Para poder crear un rol de federación de SAML 2.0, antes debe completar los siguientes pasos de requisitos previos.
Preparativos para crear un rol para la federación SAML 2.0
-
Para poder crear un rol para una federación basada en SAML, debe crear un proveedor de SAML en IAM. Para obtener más información, consulte Crear un proveedor de identidades de SAML en IAM.
-
Prepare las políticas del rol que los usuarios autenticados por SAML 2.0 asumirán. Al igual que ocurre con cualquier otro rol, un rol para la federación SAML incluye dos políticas. Una es la política de confianza de rol que especifica quién puede asumir el rol. La otra es la política de permisos de IAM que especifica las acciones y los recursos de AWS a los que el usuario federado puede obtener acceso o se le deniega.
Al crear la política de confianza para el rol, debe utilizar tres valores que garantizan que solo la aplicación pueda asumir el rol:
-
En el elemento
Action
, utilice la acciónsts:AssumeRoleWithSAML
. -
En el elemento
Principal
, utilice la cadena{"Federated":
. SustituyaARNofIdentityProvider
}
por el ARN del proveedor de identidad SAML que ha creado en Paso 1.ARNofIdentityProvider
-
En el elemento
Condition
, utilice una condiciónStringEquals
para probar que el atributosaml:aud
de la respuesta de SAML coincida con el punto de enlace de la federación SAML para AWS.
La política de confianza del ejemplo siguiente está diseñada para un usuario federado de SAML:
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "sts:AssumeRoleWithSAML", "Principal": {"Federated": "arn:aws:iam::
account-id
:saml-provider/PROVIDER-NAME
"}, "Condition": {"StringEquals": {"SAML:aud": "https://signin.aws.amazon.com/saml"}} } }Sustituya el ARN de la entidad principal por el ARN real del proveedor SAML que ha creado en IAM. Tendrá su ID de cuenta y su nombre de proveedor.
-
Creación de un rol para SAML
Después de completar los pasos de los requisitos previos, puede a crear el rol para la federación basada en SAML.
Para crear un rol para la federación basada en SAML
Inicie sesión en la AWS Management Console y abra la consola de IAM en https://console.aws.amazon.com/iam/
. -
En el panel de navegación de la consola de IAM, elija Roles y, a continuación, elija Crear rol.
-
Elija el tipo de rol SAML 2.0 federation.
-
En Select a SAML provider (Seleccionar un proveedor de SAML), elija el proveedor para el rol.
-
Elija el método de nivel de acceso SAML 2.0.
-
Elija Allow programmatic access only (Permitir solo acceso mediante programación) para crear un rol que se pueda asumir mediante programación desde la API o la AWS CLI de AWS.
-
Elija Permitir el acceso AWS Management Console mediante la consola y mediante programación para crear un rol que pueda ser asumido mediante programación y desde la AWS Management Console.
Los roles creados con ambas opciones son similares, pero el rol que puede ser asumido desde la consola incluye una política de confianza con una condición particular. Dicha condición garantiza explícitamente que el público de SAML (atributo
SAML:aud
) esté establecido en el punto de conexión de inicio de sesión de AWS para SAML (https://signin.aws.amazon.com/saml). -
-
Si está creando un rol para el acceso mediante programación, elija un atributo en la lista Attribute (Atributo). A continuación, en el cuadro Value (Valor), ingrese un valor para incluirlo en el rol. Esto restringe el acceso del rol a los usuarios del proveedor de identidad cuya respuesta de autenticación SAML (aserción) incluya los atributos que especifique. Debe especificar al menos un atributo para garantiza que el rol esté limitado a un subconjunto de usuarios de su organización.
Si está creando un rol para acceso programado y desde la consola, el atributo
SAML:aud
se añade y se establece automáticamente en la URL del punto de enlace de SAML de AWS (https://signin.aws.amazon.com/saml). -
Para agregar más condiciones relacionadas con el atributo a la política de confianza, elija Condition (optional) (Condición [opcional]), seleccione la condición adicional y especifique un valor.
nota
La lista incluye los atributos SAML utilizados con más frecuencia. IAM admite atributos adicionales que puede utilizar para crear condiciones. Para ver una lista de los atributos admitidos, consulte Claves disponibles para federaciones SAML. Si necesita una condición para un atributo SAML admitido que no se muestra en la lista, puede añadir manualmente dicha condición. Para ello, edite la política de confianza después de crear el rol.
-
Revise la información de confianza de SAML 2.0 y, a continuación, elija Next (Siguiente).
-
IAM incluye una lista de las políticas administradas por AWS y de las políticas administradas por el cliente en su cuenta. Seleccione la política que desea utilizar como política de permisos o elija Create policy (Crear política) para abrir una pestaña nueva del navegador y crear una política nueva desde cero. Para obtener más información, consulte Crear políticas de IAM. Después de crear la política, cierre esa pestaña y vuelva a la pestaña original. Seleccione la casilla de verificación situada junto a las políticas de permisos que desea conceder a los usuarios federados de OIDC. Si lo prefiere, puede optar por no seleccionar ninguna política en este momento y asociar las políticas al rol más adelante. De forma predeterminada, un rol no tiene permisos.
-
(Opcional) Configure un límite de permisos. Esta es una característica avanzada.
Abra la sección Permissions boundary (Límite de permisos) y elija Use a permissions boundary to control the maximum role permissions (Utilizar un límite de permisos para controlar los permisos que puede tener el rol como máximo). Seleccione la política que desea utilizar para el límite de permisos.
-
Elija Siguiente.
-
Elija Siguiente: Revisar.
-
En Nombre de rol, ingrese un nombre de rol. Los nombres de rol deben ser únicos en su Cuenta de AWS. No distinguen entre mayúsculas y minúsculas. Por ejemplo, no puede crear funciones denominado tanto
PRODROLE
comoprodrole
. Dado que es posible que otros recursos de AWS hagan referencia al rol, no se puede editar el nombre del rol después de crearlo. -
(Opcional) En Description (Descripción), ingrese una descripción para el nuevo rol.
-
Elija Edit (Editar) en las secciones Step 1: Select trusted entities (Paso 1: seleccionar entidades de confianza) o Step 2: Add permissions (Paso 2: agregar permisos) para editar los casos de uso y los permisos del rol.
-
De manera opcional, agregue metadatos al rol asociando etiquetas como pares de clave-valor. Para obtener más información acerca del uso de etiquetas en IAM, consulte Etiquetado de recursos de IAM.
-
Revise el rol y, a continuación, seleccione Crear rol.
Después de crear el rol, complete la relación de confianza de SAML configurando su software de proveedor de identidad con información sobre AWS. Esta información incluye los roles que desea que utilicen los usuarios federados. Esto se denomina configuración de la relación de confianza entre su proveedor de identidad y AWS. Para obtener más información, consulte Configuración su SAML 2.0 IdP con una relación de confianza para usuario autenticado y agregando reclamos.