Inicio de sesión administrado de grupos de usuarios - 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.

Inicio de sesión administrado de grupos de usuarios

Puede elegir un dominio web para alojar los servicios de su grupo de usuarios. Un grupo de usuarios de Amazon Cognito obtiene las siguientes funciones al añadir un dominio, denominadas colectivamente inicio de sesión administrado.

Una opción adicional que comparte algunas características con el inicio de sesión administrado es la interfaz de usuario alojada clásica. La interfaz de usuario alojada clásica es una versión de primera generación de los servicios del inicio de sesión administrado. Los servicios de interfaz de usuario alojada, IdP y RP generalmente tienen las mismas características que el inicio de sesión administrado, pero las páginas de inicio de sesión tienen un diseño más simple y menos características. Por ejemplo, el inicio de sesión con clave de acceso no está disponible en la interfaz de usuario alojada clásica. En el plan de características Lite, la interfaz de usuario alojada clásica es la única opción para los servicios de dominio del grupo de usuarios.

Las páginas de inicio de sesión administrado son una colección de interfaces web para las actividades básicas de registro, inicio de sesión, autenticación multifactor y restablecimiento de contraseña en el grupo de usuarios. También conectan a los usuarios con uno o varios proveedores de identidades (IdP) de terceros cuando se desea dar a los usuarios la posibilidad de elegir la opción de inicio de sesión. La aplicación puede invocar las páginas de inicio de sesión administrado en los navegadores de los usuarios cuando desee autenticar y autorizar a los usuarios.

Puede hacer que la experiencia de usuario de inicio de sesión administrado se adapte a la marca con logotipos, fondos y estilos personalizados. Tiene dos opciones de marca que puede aplicar a la interfaz de usuario del inicio de sesión administrado: el editor de marcas, para el inicio de sesión administrado, y la marca de la interfaz de usuario alojada (clásica), para la interfaz de usuario alojada.

Editor de marcas

Una experiencia de usuario renovada con las opciones de autenticación más actualizadas y un editor visual en la consola de Amazon Cognito.

Marca de interfaz de usuario alojada

Una experiencia de usuario familiar para los grupos de usuarios anteriores de Amazon Cognito. La marca de la interfaz de usuario alojada es un sistema basado en archivos. Para aplicar la marca a las páginas de la interfaz de usuario alojadas, debe cargar un archivo de imagen del logotipo y un archivo que establezca los valores de varias opciones de estilo CSS predeterminadas.

El editor de marcas no está disponible en todos los planes de características para grupos de usuarios. Para obtener más información, consulte Planes de características de grupo de usuarios.

Para obtener más información sobre cómo crear solicitudes para los servicios de inicio de sesión administrado y de interfaz de usuario alojada, consulte Referencia de los puntos de conexión de grupos de usuarios y del inicio de sesión administrado.

nota

El inicio de sesión administrado de Amazon Cognito no admite autenticación personalizada con desencadenadores de Lambda de desafíos de autenticación personalizados.

Localización de inicio de sesión administrado

El inicio de sesión administrado se establece de forma predeterminada en inglés en las páginas interactivas para el usuario. Puede mostrar sus páginas de inicio de sesión administrado localizadas para el idioma que elija. Los idiomas disponibles son los que están disponibles en Consola de administración de AWS. En el enlace que distribuya a los usuarios, agregue un parámetro de consulta lang, como se muestra en el siguiente ejemplo.

https://<your domain>/oauth2/authorize?lang=es&response_type=code&client_id=<your app client id>&redirect_uri=<your relying-party url>

Amazon Cognito establece una cookie en el navegador de los usuarios con su idioma preferido después de la solicitud inicial con un parámetro lang. Una vez establecida la cookie, la selección de idioma se mantiene sin que se muestre el parámetro ni se le pida que lo incluya en las solicitudes. Por ejemplo, cuando un usuario realiza una solicitud de inicio de sesión con un parámetro lang=de, sus páginas de inicio de sesión administrado se muestran en alemán hasta que borre las cookies o haga una nueva solicitud con un nuevo parámetro de localización, por ejemplo lang=en.

La localización solo está disponible para el inicio de sesión administrado. Debe tener el plan de características Essentials o Plus y haber asignado su dominio para el uso de la creación de marca en inicio de sesión administrado.

La selección que hace el usuario en el inicio de sesión administrado no está disponible para desencadenadores de envíos de correo o SMS personalizados. Al implementar estos desencadenadores, debe utilizar otros mecanismos para determinar el idioma preferido del usuario. En los flujos de inicio de sesión, el atributo locale puede indicar el idioma preferido del usuario en función de la ubicación. En los flujos de registro, la región o el ID de cliente de la aplicación de su grupo de usuarios pueden indicar una preferencia de idioma.

Están disponibles los siguientes idiomas.

Idiomas de inicio de sesión administrado
Idioma Código
Alemán de
Inglés en
Español es
Francés fr
Bahasa Indonesia id
Italiano it
Japonés ja
Coreano ko
Portugués (Brasil) pt-BR
Chino simplificado zh-CN
Chino tradicional zh-TW

Documentos de términos

Puede configurar sus páginas de inicio de sesión administrado para que muestren enlaces a sus documentos de Términos de uso y Política de privacidad cuando los usuarios se registren. Al configurar ambos documentos de condiciones en el cliente de aplicación, los usuarios ven el siguiente texto durante el registro: By signing up, you agree to our Terms of use and Privacy policy. Las frases Términos de uso y Política de privacidad aparecen en su página de inicio de sesión administrado, con un hipervínculo a sus documentos.

Los documentos de condiciones admiten direcciones URL de idiomas específicos que se ajustan a la localización del inicio de sesión administrado. Cuando los usuarios seleccionan un idioma con el parámetro de consulta lang, Amazon Cognito muestra enlaces a sus documentos de condiciones en ese idioma. Si no ha configurado una URL para un idioma específico, Amazon Cognito usa la URL predeterminada que configuró para el cliente de aplicación.

A fin de configurar los documentos de condiciones para su cliente de aplicación, vaya al menú Inicio de sesión administrado de su grupo de usuarios. En Documentos de términos, seleccione Crear documento de términos.

Amazon Cognito console
Cómo crear un documento de términos
  1. Vaya a su grupo de usuarios y seleccione el menú Inicio de sesión administrado. Busque Documentos de términos.

  2. Elija Crear documento de términos.

  3. Seleccione el cliente de aplicación al que desea asignar el documento de términos.

  4. Introduzca un Nombre de términos. Esto identifica el documento en la consola.

  5. En Enlaces, elija un idioma e introduzca la URL en la que aloja el documento de términos en ese idioma.

  6. Para añadir direcciones URL en otros idiomas, seleccione Agregar otro.

  7. Seleccione Crear.

Amazon Cognito user pools API

A continuación, se muestra un ejemplo del cuerpo de la solicitud CreateTerms. Hace que la página de registro del cliente de aplicación 1example23456789 muestre enlaces a una versión de la política de privacidad en francés y portugués (Brasil) cuando el inicio de sesión administrado está localizado en ese idioma. Es necesaria una solicitud independiente a fin de configurar las URL para terms-of-use antes de que el inicio de sesión administrado muestre los enlaces en la página de registro.

{ "ClientId": "1example23456789", "Enforcement": "NONE", "Links": { "cognito:default" : "https://example.com/privacy/", "cognito:french" : "https://example.com/fr/privacy/", "cognito:portuguese-brazil" : "https://example.com/pt/privacy/" }, "TermsName": "privacy-policy", "TermsSource": "LINK", "UserPoolId": "us-east-1_EXAMPLE" }
nota

Debe crear un documento de condiciones de uso y de política de privacidad para el cliente de aplicación antes de que Amazon Cognito muestre los documentos de condiciones en sus páginas de inicio de sesión administrado.

Configuración del inicio de sesión administrado con AWS Amplify

Si utiliza AWS Amplify para añadir autenticación a su aplicación web o móvil, puede configurar sus páginas de inicio de sesión administrado en la interfaz de la línea de comandos (CLI) de Amplify y en las bibliotecas de Amplify Framework. Para añadir la autenticación a la aplicación, añada la categoría Auth al proyecto. A continuación, en su aplicación, autentique a los usuarios del grupo de usuarios con las bibliotecas cliente de Amplify.

Puede invocar páginas de inicio de sesión administrado para la autenticación o puede federar a los usuarios a través de un punto de conexión de autorización que redirija a un IdP. Después de que un usuario se autentique correctamente con el proveedor, Amplify crea un nuevo usuario en su grupo de usuarios y pasa los tokens del usuario a su aplicación.

En los siguientes ejemplos, se muestra cómo usar AWS Amplify para configurar el inicio de sesión administrado con proveedores sociales en su aplicación.

Configuración del inicio de sesión administrado con la consola de Amazon Cognito.

El primer requisito para el inicio de sesión administrado y la interfaz de usuario alojada es un dominio de grupo de usuarios. En la consola de grupos de usuarios, vaya a la pestaña Dominio de su grupo de usuarios y añada un dominio de Cognito o un dominio personalizado. También puede elegir un dominio durante el proceso de creación de un nuevo grupo de usuarios. Para obtener más información, consulte Configuración de un dominio del grupo de usuarios. Cuando un dominio está activo en su grupo de usuarios, todos los clientes de la aplicación publican páginas de autenticación públicas en ese dominio.

Cuando crea o modifica un dominio de grupo de usuarios, configura la versión de marca para su dominio. Esta versión de marca es una opción entre el inicio de sesión administrado o la interfaz de usuario alojada (clásica). La versión de marca que elija se aplica a todos los clientes de aplicaciones que utilizan los servicios de inicio de sesión de su dominio.

El siguiente paso es crear un cliente de aplicación desde la pestaña Clientes de aplicación de su grupo de usuarios. Durante el proceso de creación de un cliente de aplicación, Amazon Cognito le solicitará información sobre la aplicación y, a continuación, le pedirá que seleccione una URL de retorno. La URL de retorno también se denomina URL del actor de confianza (RP), URI de redirección y URL de devolución de llamada. Esta es la URL desde la que se ejecuta la aplicación, por ejemplo, https://www.example.com o myapp://example.

Tras configurar un dominio y un cliente de aplicación con un estilo de marca en el grupo de usuarios, las páginas de inicio de sesión administrado estarán disponibles en Internet.

Consulta de la página de inicio de sesión

En la consola de Amazon Cognito, pulse el botón Ver páginas de inicio de sesión en la pestaña Páginas de inicio de sesión de su cliente de aplicación, en el menú Clientes de aplicación. Este botón le llevará a una página de inicio de sesión en su dominio de grupos de usuarios con los siguientes parámetros básicos.

  • El ID de cliente de aplicación.

  • Una solicitud de concesión de código de autorización

  • Una solicitud para todos los ámbitos que ha activado para el cliente de la aplicación actual

  • La primera URL de devolución de llamada de la lista para el cliente de aplicación actual

El botón Ver página de inicio de sesión es útil cuando se quieren probar las funciones básicas de las páginas del inicio de sesión administrado. Sus páginas de inicio de sesión coincidirán con la versión de marca que asignó al dominio de su grupo de usuarios. Puede personalizar la URL de inicio de sesión con parámetros adicionales y modificados. En la mayoría de casos, los parámetros generados automáticamente del enlace Ver página de inicio de sesión no se ajustan completamente a las necesidades de su aplicación. En estos casos, debe personalizar la URL que invoca su aplicación cuando inicia sesión en sus usuarios. Para obtener más información acerca de los parámetros y valores de los parámetros, consulte Referencia de los puntos de conexión de grupos de usuarios y del inicio de sesión administrado.

La página web de inicio de sesión utiliza el siguiente formato URL. En este ejemplo se solicita la concesión de un código de autorización con el parámetro response_type=code.

https://<your domain>/oauth2/authorize?response_type=code&client_id=<your app client id>&redirect_uri=<your relying-party url>

Puede buscar la cadena de dominio del grupo de usuarios desde el menú Dominio del grupo de usuarios. En el menú Clientes de aplicación, puede identificar los ID de los clientes de aplicación, sus URL de devolución de llamada, sus ámbitos permitidos y otras configuraciones.

Cuando navegue hasta el punto de conexión de /oauth2/authorize con sus parámetros personalizados, Amazon Cognito lo redirige al punto de conexión de /oauth2/login o, si tiene un parámetro identity_provider o idp_identifier, lo redirige silenciosamente a la página de inicio de sesión de su IdP.

Ejemplo de solicitud de concesión implícita

Puede ver la página web de inicio de sesión con la siguiente dirección URL para la concesión de código implícita, donde 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://mydomain.auth.us-east-1.amazoncognito.com/authorize?response_type=token&client_id=1example23456789&redirect_uri=https://mydomain.example.com

Los tokens de identidad y acceso aparecen como parámetros adjuntos a la URL de redireccionamiento.

A continuación, se muestra una respuesta de ejemplo de una solicitud de concesión implícita.

https://auth.example.com/#id_token=eyJraaBcDeF1234567890&access_token=eyJraGhIjKlM1112131415&expires_in=3600&token_type=Bearer

Personalización de las páginas de autenticación

En el pasado, Amazon Cognito solo alojaba páginas de inicio de sesión con la interfaz de usuario alojada clásica, un diseño sencillo que otorga un aspecto universal a las páginas web de autenticación. Puede personalizar los grupos de usuarios de Amazon Cognito con una imagen de logotipo y modificar algunos estilos con un archivo que especifique algunos valores de estilo CSS. Más adelante, Amazon Cognito introdujo el inicio de sesión administrado, un nuevo servicio de autenticación alojado. El inicio de sesión administrado aporta un aspecto renovado con el editor de marcas. El editor de marcas es un editor visual sin código y ofrece un conjunto de opciones más amplio que la experiencia de personalización de la interfaz de usuario alojada. El inicio de sesión administrado también introdujo imágenes de fondo personalizadas y un tema de modo oscuro.

Puede cambiar entre las experiencias de inicio de sesión administrado y de personalización de la interfaz de usuario alojada en los grupos de usuarios. Para obtener más información sobre la personalización de las páginas de inicio de sesión administrado, consulte Aplicación de la creación de marca en las páginas de inicio de sesión administrado.

Cosas que debe saber sobre el inicio de sesión administrado y la interfaz de usuario alojada

La cookie de sesión de interfaz de usuario alojada y de inicio de sesión administrado de una hora de duración

Cuando un usuario inicia sesión con sus páginas de inicio de sesión o con un proveedor externo, Amazon Cognito establece una cookie en su navegador. Con esta cookie, los usuarios pueden volver a iniciar sesión con el mismo método de autenticación durante una hora. Cuando inician sesión con la cookie de su navegador, obtienen nuevos tokens que duran el tiempo especificado en la configuración del cliente de aplicación. Los cambios en los atributos de los usuarios o en los factores de autenticación no afectan a su capacidad para volver a iniciar sesión con la cookie del navegador.

La autenticación con la cookie de sesión no restablece la duración de la cookie a una hora adicional. Los usuarios deben volver a iniciar sesión si intentan acceder a sus páginas de inicio de sesión más de una hora después de su última autenticación interactiva correcta.

Confirmación de las cuentas de usuario y verificación de los atributos de los usuarios

Para los usuarios locales del grupo de usuarios, el inicio de sesión administrado y la interfaz de usuario alojada funcionan mejor cuando se configura el grupo de usuarios en Permitir que Cognito envíe mensajes automáticamente para verificar y confirmar. Al habilitar esta configuración, Amazon Cognito envía un mensaje con un código de confirmación a los usuarios que se registren. En cambio, si confirma a los usuarios como administrador del grupo de usuarios, sus páginas de inicio de sesión mostrarán un mensaje de error tras el registro. En este estado, Amazon Cognito ha creado el nuevo usuario, pero no ha podido enviar un mensaje de verificación. Aún puede confirmar a los usuarios como administradores, pero es posible que se pongan en contacto con el servicio de asistencia cuando detecten un error. Para obtener más información sobre la confirmación administrativa, consulte  Permitir que los usuarios se registren en la aplicación, pero con confirmación del administrador del grupo de usuarios.

Ámbito de operaciones del inicio de sesión administrado

El inicio de sesión administrado y la interfaz de usuario alojada clásica admiten el registro, el inicio de sesión y la administración de contraseñas. Esto incluye completar el inicio de sesión con autenticación multifactor (MFA) y el registro de los autenticadores webAuthn. El inicio de sesión administrado no admite la administración de perfiles de autoservicio de los usuarios, como los cambios de atributos y la configuración de las preferencias de MFA. Debe implementar la administración de perfiles en el código de su propia aplicación. El inicio de sesión administrado tampoco permite confirmar los cambios de atributos al actualizar las direcciones de correo electrónico y los números de teléfono como administrador con la operación de la API AdminUpdateUserAttributes.

Consulta de los cambios realizados en la configuración

Si realiza cambios de estilo en sus páginas y estos no aparecen inmediatamente, espere unos minutos y actualice la página.

Descodificación de los tokens del grupo de usuarios

Los tokens del grupo de usuarios de Amazon Cognito se firman con un algoritmo RS256. Puede descodificar y verificar los tokens del grupo de usuarios utilizando AWS Lambda. Consulte Decode and verify Amazon Cognito JWT tokens en GitHub.

Versión de TLS

Las páginas de inicio de sesión administrado y de interfaz de usuario alojadas requieren el cifrado durante el tránsito. Los dominios de grupos de usuarios que Amazon Cognito proporciona requieren que los navegadores de los usuarios usen, como mínimo, la versión 1.2 de TLS. Los dominios personalizados admiten conexiones de navegador con la versión 1.2 de TLS. La interfaz de usuario alojada (clásica) no requiere TLS 1.2 para los dominios personalizados, pero el inicio de sesión administrado más reciente requiere la versión 1.2 de TLS, tanto para los dominios personalizados como para los de prefijo. Dado que Amazon Cognito gestiona la configuración de los servicios de dominio, no es posible modificar los requisitos TLS del dominio del grupo de usuarios.

Políticas CORS

Ni el inicio de sesión administrado ni la interfaz de usuario alojada admiten políticas de origen personalizadas para el uso compartido de recursos entre orígenes (CORS). Una política CORS impediría que los usuarios pasaran parámetros de autenticación en sus solicitudes. En su lugar, implemente una política CORS en el frontend de su aplicación. Amazon Cognito devuelve un encabezado de respuesta Access-Control-Allow-Origin: * a las solicitudes a los siguientes puntos de conexión.

Cookies

El inicio de sesión administrado y la interfaz de usuario alojada configuran cookies en los navegadores de los usuarios. Las cookies cumplen los requisitos de algunos navegadores de que los sitios no instalen cookies de terceros. Están dirigidas únicamente a los puntos de conexión del grupo de usuarios e incluyen lo siguiente:

  • Una cookie XSRF-TOKEN para cada solicitud.

  • Una cookie csrf-state para garantizar la coherencia de la sesión cuando se redirige a un usuario.

  • Una cookie csrf-state-legacy para garantizar la coherencia de la sesión, que Amazon Cognito lee como alternativa cuando el navegador no admite el atributo SameSite.

  • Una cookie de sesión cognito que conserva los intentos de inicio de sesión correctos durante una hora.

  • Una cookie lang que guarda la elección del usuario de idioma de localización en el inicio de sesión administrado.

  • Una cookie page-data que guarda los datos necesarios mientras el usuario navega entre las páginas del inicio de sesión administrado.

En iOS, puede bloquear todas las cookies. Esta configuración no es compatible con la interfaz de usuario alojada ni el inicio de sesión administrado. Para trabajar con los usuarios que podrían habilitar esta configuración, cree la autenticación del grupo de usuarios en una aplicación de iOS nativa con un AWS SDK. En este escenario, puede crear un almacenamiento de sesiones propio que no esté basado en cookies.

Efectos del cambio de versión del inicio de sesión administrado

Tenga en cuenta los siguientes efectos por añadir dominios y configurar la versión de inicio de sesión administrado.

  • Cuando añade un dominio con prefijo, ya sea con inicio de sesión administrado o con una marca de interfaz de usuario alojada (clásica), las páginas de inicio de sesión pueden tardar hasta 60 segundos en estar disponibles.

  • Cuando añade un dominio personalizado, ya sea con inicio de sesión administrado o con una marca de interfaz de usuario alojada (clásica), las páginas de inicio de sesión pueden tardar hasta 5 minutos en estar disponibles.

  • Si cambia la versión de marca de su dominio, las páginas de inicio de sesión pueden tardar hasta 4 minutos en estar disponibles en la nueva versión de marca.

  • Al cambiar entre el inicio de sesión administrado y la marca de la interfaz de usuario alojada (clásica), Amazon Cognito no mantiene las sesiones de usuario. El usuario debe volver a iniciar sesión con la nueva interfaz.

Estilo predeterminado

Al crear un cliente de aplicación en la Consola de administración de AWS, Amazon Cognito asigna automáticamente un estilo de marca al cliente de aplicación. Al crear un cliente de aplicación mediante programación con la operación CreateUserPoolClient, no se crea ningún estilo de marca. El inicio de sesión administrado no está disponible para un cliente de aplicación creado con un AWS SDK hasta que cree uno con una solicitud CreateManagedLoginBranding.

Finalización del tiempo de espera de la petición de autenticación en el inicio de sesión administrado

Amazon Cognito cancela las solicitudes de autenticación que no se completan en 5 minutos y redirige al usuario al inicio de sesión administrado. La página muestra un mensaje de error Something went wrong.