Agregue un cliente de aplicaciones con la interfaz de usuario alojada - Amazon Cognito

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.

Agregue un cliente de aplicaciones con la interfaz de usuario alojada

Tras crear un grupo de usuarios, puede crear un cliente de aplicación para una aplicación que muestre las páginas web integradas en la interfaz de usuario alojada. En la interfaz de usuario alojada, los usuarios pueden:

Tras crear un grupo de usuarios de Amazon Cognito, el siguiente paso es configurar un cliente de aplicaciones. Un cliente de aplicaciones es la configuración del grupo de usuarios de una aplicación. Esa aplicación puede autenticar a los usuarios con la interfaz de usuario alojada, SDK las solicitudes a los grupos API de usuarios o ambas. En este caso, configuraremos un cliente de aplicación para la interfaz de usuario alojada y el servidor de autorización OAuth 2.0. La interfaz de usuario alojada es un conjunto de páginas web que gestionan los flujos de autenticación de usuarios más comunes, como el registro, el inicio de sesión, el restablecimiento de contraseñas y la autenticación multifactorial.

Al activar la interfaz de usuario alojada, también se activa un servidor de autorización OAuth 2.0. El servidor de autorización gestiona los flujos de autenticación OpenID Connect (OIDC) y OAuth 2.0. Las tareas incluyen la consulta de las cuentas de usuario, la emisión de tokens y la integración con proveedores de identidad externos. La interfaz de usuario alojada y el servidor de autorización funcionan mejor con las aplicaciones en las que se desea limitar el nivel de creación de interfaces de usuario personalizadas y en las que la aplicación funciona mejor con los proveedores de OIDC identidad.

Las siguientes son algunas de las capacidades de la interfaz de usuario alojada y del servidor de autorización:

Características exclusivas de los clientes de aplicaciones de interfaz de usuario alojadas
Para crear un cliente de aplicaciones para el inicio de sesión en la interfaz de usuario alojada
  1. Vaya a la consola de Amazon Cognito. Si se te solicita, introduce tus AWS credenciales.

  2. Elija User Pools (Grupos de usuarios).

  3. Elija un grupo de usuarios existente en la lista o cree un grupo de usuarios. Si crea un nuevo grupo de usuarios, se le pedirá que configure un cliente de aplicación y configure la IU alojada durante el asistente.

  4. Elija el iconoIntegración de aplicacionesde su grupo de usuarios.

  5. Junto a Dominio, elija Acciones y, a continuación, seleccione Crear dominio personalizado o Crear dominio de Amazon Cognito. Si ya ha configurado un dominio de grupo de usuarios, elija Eliminar dominio de Amazon Cognito o Eliminar dominio personalizado antes de crear el nuevo dominio personalizado.

  6. Ingrese un prefijo de dominio disponible para utilizarlo con un dominio de Amazon Cognito. Para obtener información sobre cómo configurar un dominio personalizado, consulte Uso de un dominio propio con la interfaz de usuario alojada

  7. Seleccione Create (Crear).

  8. Vuelva a laIntegración de aplicacionespara el mismo grupo de usuarios y localizarClientes de aplicaciones. Elija Create app client.

  9. Elija un Application type (Tipo de aplicación). Se proporcionarán algunos ajustes recomendados en función de tu selección. Una aplicación que utiliza la interfaz de usuario alojada es un Cliente público.

  10. Ingrese un nombre de cliente de aplicación.

  11. Para este ejercicio, elijaNo generar secreto de cliente. El secreto de cliente lo utilizan las aplicaciones confidenciales que autentican a los usuarios desde una aplicación centralizada. En este ejercicio, presentará una página de inicio de sesión de IU alojada a los usuarios y no requerirá ningún secreto de cliente.

  12. Elija los flujos de autenticación que permitirá con su aplicación. Asegúrese de queUSER_SRP_AUTHse ha seleccionado.

  13. Personalice token expiration (Vencimiento de token), Advanced security configuration (Configuración avanzada de seguridad) y Attribute read and write permissions (Permisos de lectura y escritura de atributos) según sea necesario. Para obtener más información, consulte Configuración de un cliente de aplicación para grupos de usuarios.

  14. Agrega una llamada URL para el cliente de tu aplicación. Aquí es donde se le dirigirá después de la autenticación de la interfaz de usuario alojada. No necesitas añadir un cierre de sesión permitido URL hasta que puedas implementar el cierre de sesión en tu aplicación.

    Para una aplicación iOS o Android, puedes usar una devolución de llamada URL comomyapp://.

  15. Seleccione Identity providers (Proveedores de identidades) para el cliente de aplicación. Como mínimo, habilite Grupo de usuarios de Amazon Cognito como proveedor.

    nota

    Para iniciar sesión con proveedores de identidad externos (IdPs), como Facebook, Amazon, Google y Apple, así como a través de OpenID Connect (OIDC) SAML IdPs, o configurarlos primero como se muestra en Añadir el inicio de sesión a un grupo de usuarios mediante un tercero. A continuación, vuelve a la página de configuración del cliente de la aplicación para activarlos.

  16. Elija los tipos de subvenciones OAuth 2.0. Seleccione Authorization code grant (Concesión de código de autorización) para devolver un código de autorización que se intercambie por tokens de grupos de usuarios. Debido a que los tokens nunca se exponen directamente a un usuario final, es menos probable que se vean comprometidos. Sin embargo, se requiere una aplicación personalizada en el backend para intercambiar el código de autorización para tokens de grupos de usuarios. Por motivos de seguridad, te recomendamos que utilices el flujo de concesión de códigos de autorización, junto con la clave de prueba para Code Exchange (PKCE), para las aplicaciones móviles.

    Seleccione Concesión implícita para que Amazon Cognito le devuelva los tokens JSON web del grupo de usuarios (JWT). Puede utilizar este flujo cuando no hay un backend disponible para intercambiar un código de autorización para tokens. También es útil para depurar tokens.

    nota

    Puede habilitar tanto Authorization code grant (Concesión de código de autorización) como Implicit code grant (Concesión de código implícita) y, a continuación, utilizar cada concesión según sea necesario.

    Seleccione Client credentials (Credenciales del cliente) solo si la aplicación debe solicitar tokens de acceso en su propio nombre y no en nombre de un usuario.

  17. A menos que desee excluir específicamente alguno, seleccione todos los ámbitos de OpenID Connect.

  18. Seleccione los ámbitos personalizados que haya configurado. Los ámbitos personalizados se utilizan normalmente con clientes confidenciales.

  19. Seleccione Crear.

Para ver su página de inicio de sesión

En la página del cliente de la aplicación, selecciona Ver la interfaz de usuario alojada para abrir una nueva pestaña del navegador y abrir una página de inicio de sesión que viene rellenada previamente con el ID del cliente de la aplicación, el alcance, la concesión y los parámetros de devolución de llamada. URL

Puedes ver la página web de inicio de sesión de la interfaz de usuario alojada de forma manual con lo siguiente. URL Anote el response_type. En este caso, response_type=code para la concesión de código de autorización.

https://your_domain/login?response_type=code&client_id=your_app_client_id&redirect_uri=your_callback_url

Puedes ver la página web de inicio de sesión de la interfaz de usuario alojada con lo siguiente URL para la concesión de código implícita: response_type=token. Tras un inicio de sesión correcto, Amazon Cognito devuelve tokens de grupo de usuarios a su barra de direcciones de navegador web.

https://your_domain/login?response_type=token&client_id=your_app_client_id&redirect_uri=your_callback_url

Puedes encontrar el token de identidad del token JSON web (JWT) después del parámetro en la respuesta. #idtoken=

El siguiente URL es un ejemplo de respuesta de una solicitud de concesión implícita. La cadena del token de identidad será mucho más larga.

https://www.example.com/#id_token=123456789tokens123456789&expires_in=3600&token_type=Bearer

Los tokens de los grupos de usuarios de Amazon Cognito se firman mediante un RS256 algoritmo. Puede decodificar y verificar los tokens del grupo de usuarios mediante. AWS Lambda Para obtener más información, consulte Decodificar y verificar los tokens de Amazon JWT Cognito en AWS GitHub el sitio web.

Su dominio aparece en la página Domain Name (Nombre de dominio). El identificador de cliente de la aplicación y la devolución de la llamada URL se muestran en la página de configuración general. Si los cambios que has realizado en la consola no aparecen inmediatamente, espera unos minutos y, a continuación, actualiza el navegador.