View a markdown version of this page

Habilitado AWS acceso a la cuenta para aplicaciones administradas por el cliente - AWS IAM Identity Center

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.

Habilitado AWS acceso a la cuenta para aplicaciones administradas por el cliente

Puede habilitar el acceso a las AWS cuentas de las aplicaciones gestionadas por los clientes en el Centro de Identidad de IAM configurando un emisor de token de confianza. Un emisor de tokens de confianza es un servidor de autorización de OAuth 2.0 que emite tokens firmados en nombre de los usuarios autenticados. El Centro de Identidad de IAM intercambia estos tokens por credenciales que permiten a su aplicación acceder mediante programación a las AWS cuentas y funciones asignadas a esos usuarios. Los emisores de tokens de confianza también se pueden utilizar para acceder a las aplicaciones gestionadas. AWS Para obtener más información, consulte Uso de aplicaciones con un emisor de tokens de confianza.

nota

Puede habilitar esta función solo para las instancias organizativas de IAM Identity Center. Solo los administradores de cuentas de administración o los administradores delegados pueden habilitar el sso:account:access alcance de una aplicación gestionada por el cliente. Si es un creador de aplicaciones en una cuenta de miembro, póngase en contacto con el administrador del Centro de Identidad de IAM para habilitar este ámbito para su aplicación.

Funcionamiento

Una vez que un administrador habilita el sso:account:access ámbito de una aplicación gestionada por el cliente, se produce el siguiente flujo de trabajo:

  1. Un usuario inicia sesión en tu aplicación a través de tu proveedor de identidad externo (IdP).

  2. Su aplicación recibe un token JWT firmado por el IdP.

  3. Su aplicación intercambia este token por un token del IAM Identity Center llamando a la CreateTokenWithIAM API con el tipo de concesión del portador JWT (). urn:ietf:params:oauth:grant-type:jwt-bearer Esta llamada requiere la autenticación de la versión 4 de Sigv4 (SigV4). Para obtener más información, consulte la referencia de CreateTokenWithIAMla API OIDC del IAM Identity Center.

  4. Su aplicación utiliza el token del IAM Identity Center para llamar a las operaciones de la API del portal (ListAccounts,ListAccountRoles,GetRoleCredentials) a fin de descubrir las cuentas y funciones asignadas al usuario y recuperar las AWS credenciales temporales en su nombre.

  5. El usuario accede a AWS los recursos a través de la aplicación sin necesidad de realizar ningún paso de inicio de sesión adicional.

Si habilitaste la concesión del token de actualización al configurar la aplicación, CreateTokenWithIAM también devuelve un token de actualización junto con el token de acceso. Tu aplicación puede usar este token de actualización para obtener nuevos tokens de acceso sin repetir el intercambio completo de tokens de JWT Bearer. Para actualizar un token de acceso, llama CreateTokenWithIAM con el tipo de refresh_token concesión.

Requisitos previos

Antes de habilitar el acceso a la cuenta de una aplicación gestionada por el cliente, necesita:

  • Una aplicación gestionada por el cliente configurada en el Centro de Identidad de IAM que admite los JSON Web Tokens (JWT). La aplicación debe tener un componente de servidor de fondo que pueda almacenar las credenciales de forma segura. Browser-based esta función no admite aplicaciones, como las aplicaciones de una sola página (SPA), y otros clientes públicos.

  • Un emisor de token de confianza adjunto a su aplicación.

  • Acceso a la cuenta AWS Organizations de administración o a la cuenta de administrador delegado del IAM Identity Center. Los creadores de aplicaciones de las cuentas de los miembros no pueden habilitar este ámbito directamente.

Habilite el acceso a la cuenta

Para habilitar el ámbito sso:account:access para una aplicación gestionada por el cliente
  1. Inicie sesión Consola de administración de AWS con la cuenta de administración o la cuenta de administrador delegado de su organización.

  2. Abra la consola de IAM Identity Center.

  3. En el panel de navegación, elija Aplicaciones.

  4. Seleccione la pestaña Administrada por el cliente.

  5. Elija el nombre de la aplicación que desee configurar.

  6. En la sección de acceso a la AWS cuenta, activa Habilitar el acceso a la AWS cuenta.

Tras habilitar el acceso a la cuenta, la aplicación puede llamar mediante programación a las operaciones de la API del portal Identity para enumerar las cuentas y las funciones y recuperar AWS las credenciales temporales de las funciones a las que un usuario autenticado está autorizado a acceder.

importante

Al habilitar el sso:account:access ámbito de una aplicación, esa aplicación puede acceder a todas las cuentas y funciones disponibles para un usuario autenticado mediante sus asignaciones de conjuntos de permisos. No puede restringir la aplicación a cuentas o funciones específicas. Asegúrese de comprender este nivel de acceso antes de habilitar esta función.

Acceso programático

Puede usar la PutApplicationAccessScope API para habilitar mediante programación el sso:account:access alcance de una aplicación gestionada por el cliente. Debe llamar a la API desde la cuenta de administración o la cuenta de administrador delegado de su organización.

AWS CLI

aws sso-admin put-application-access-scope \ --application-arn arn:aws:sso::123456789012:application/ssoins-1234567890abcdef/apl-1234567890abcdef \ --scope "sso:account:access"

Solicitud de API:

{ "ApplicationArn": "arn:aws:sso::123456789012:application/ssoins-1234567890abcdef/apl-1234567890abcdef", "Scope": "sso:account:access" }

Para inhabilitar el acceso a la cuenta, usa la DeleteApplicationAccessScope API con el mismo ARN de aplicación y el mismo valor de alcance.

Para obtener más información, consulte PutApplicationAccessScopey consulte la referencia DeleteApplicationAccessScopede la API de IAM Identity Center.

Prácticas recomendadas de seguridad

  • El sso:account:access alcance otorga a la aplicación acceso a todas las cuentas y funciones disponibles para el usuario autenticado. No puede restringir el acceso a cuentas o funciones específicas. Habilite este ámbito únicamente para las aplicaciones que requieren este nivel de acceso.

  • Conserve los identificadores de acceso al Centro de Identidad de IAM y actualícelos en su servidor backend. Nunca los exponga al código del lado del cliente.

  • No registre los identificadores o las credenciales en los registros de las aplicaciones, los mensajes de error o los resultados de la depuración.

  • No introduzcas identificadores en los parámetros de consulta de URL. Usa el x-amz-sso_bearer_token encabezado para los tokens de acceso.

  • Úselo AWS CloudTrailpara monitorear las llamadas a la API realizadas por sus aplicaciones.