Desencadenadores de Lambda de desafío de autenticación personalizado - 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.

Desencadenadores de Lambda de desafío de autenticación personalizado

Cuando cree flujos de autenticación para su grupo de usuarios de Amazon Cognito, puede querer que el modelo de autenticación no se limite a los flujos integrados. Normalmente, los desencadenadores de desafíos personalizados se suelen utilizar para implementar controles de seguridad adicionales, además del nombre de usuario, la contraseña y la autenticación multifactor (MFA). Un desafío personalizado es cualquier pregunta y respuesta que se pueda generar en un lenguaje de programación compatible con Lambda. Por ejemplo, puede que quiera solicitar a los usuarios que resuelvan un CAPTCHA o que respondan a una pregunta de seguridad antes de que se les permita autenticarse. También puede darse el caso de que necesite una integración con factores o dispositivos de autenticación especializados. O puede que ya haya desarrollado un software que autentique a los usuarios con una clave de seguridad de hardware o un dispositivo biométrico. La definición de autenticación correcta a un desafío personalizado es cualquier respuesta que su función de Lambda acepte como correcta; por ejemplo, una cadena fija o una respuesta satisfactoria de una API externa.

Puede iniciar la autenticación con el desafío personalizado y controlar el proceso de autenticación por completo, o puede realizar la autenticación con el nombre de usuario y la contraseña antes de que la aplicación reciba el desafío personalizado.

El desencadenador de Lambda de desafío de autenticación personalizado:

Define

Inicia una secuencia de desafío. Determina si desea iniciar un nuevo desafío, marcar la autenticación como completa o detener el intento de autenticación.

Crea

Remite a la aplicación la pregunta que el usuario debe responder. Esta función puede presentar una pregunta de seguridad o un enlace a un CAPTCHA que la aplicación debe mostrar al usuario.

Verifica

Conoce la respuesta esperada y la compara con la respuesta que proporciona la aplicación en la respuesta al desafío. La función puede llamar a la API de su servicio de CAPTCHA para recuperar el resultado esperado y compararla con la solución que el usuario propone.

Estas tres funciones de Lambda se encadenan para presentar un mecanismo de autenticación totalmente controlado y diseñado por usted. Como la autenticación personalizada requiere la lógica de la aplicación en el cliente y en las funciones de Lambda, no puede procesar la autenticación personalizada en el inicio de sesión administrado. Este sistema de autenticación requiere un esfuerzo adicional del desarrollador. Su aplicación debe realizar el flujo de autenticación con la API de grupos de usuarios y gestionar el desafío resultante con una interfaz de inicio de sesión personalizada que sitúe la pregunta en el centro del desafío de autenticación personalizada.

Desencadenadores de Lambda de desafío

Para obtener más información sobre cómo implementar una autenticación personalizada, consulte Flujo de autenticación personalizado y desafíos.

Autenticación entre las operaciones de la API InitiateAutho AdminInitiateAuth, y o. RespondToAuthChallengeAdminRespondToAuthChallenge En este flujo, un usuario se autentica respondiendo a desafíos sucesivos hasta que se produce un error de autenticación o se emiten tokens para el usuario. Una respuesta a un desafío puede ser un desafío nuevo. En dicho caso, la aplicación responde tantas veces como sea necesario a los nuevos desafíos. La autenticación se considerará correcta cuando la función de definición del desafío de autenticación analice los resultados obtenidos hasta el momento, determine que se han resuelto todos los problemas y devuelva IssueTokens.