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.
Desencadenador de Lambda para verificar la respuesta al desafío de autenticación
El disparador de verificación de autenticación es una función de Lambda que compara la respuesta proporcionada por un usuario con una respuesta conocida. Esta función indica al grupo de usuarios si el usuario ha respondido correctamente a la solicitud. Cuando el activador de verificación de autenticación responde con una answerCorrect
detrue
, la secuencia de autenticación puede continuar.
- Verificación de la respuesta a los desafíos de autenticación
-
Amazon Cognito lama a este desencadenador para verificar si la respuesta del usuario a un desafío de autenticación personalizado es o no válida. Forma parte del flujo de autenticación personalizado de un grupo de usuarios.
La solicitud de este disparador contiene los parámetros privateChallengeParameters
y challengeAnswer
. El desencadenador de Lambda para definir el desafío de autenticación devuelve los valores de privateChallengeParameters
, que contienen la respuesta esperada del usuario. El parámetro challengeAnswer
contiene la respuesta del usuario al desafío.
La respuesta contiene el atributo answerCorrect
. Si el usuario finaliza correctamente el desafío, Amazon Cognito establece el valor del atributo en true
. Si el usuario no finaliza correctamente el desafío, Amazon Cognito establece el valor del atributo en false
.
El bucle de desafíos se repite hasta que los usuarios respondan a todos los desafíos.
Temas
Parámetros del desencadenador de Lambda para verificar el desafío de autenticación
La solicitud que Amazon Cognito envía a esta función de Lambda es una combinación de los parámetros que se indican a continuación y los parámetros comunes que Amazon Cognito agrega a todas las solicitudes.
Parámetros de la solicitud para verificar desafíos de autenticación
- userAttributes
-
Este parámetro contiene uno o varios pares de nombre-valor que representan atributos de usuario.
- userNotFound
-
Cuando Amazon Cognito establece
PreventUserExistenceErrors
enENABLED
para su cliente de grupo de usuarios, Amazon Cognito rellena este booleano. - privateChallengeParameters
-
Este parámetro proviene del desencadenador para definir el desafío de autenticación. Para determinar si el usuario ha superado un desafío, Amazon Cognito compara los parámetros con los del usuario. challengeAnswer
Este parámetro contiene toda la información necesaria para validar la respuesta del usuario al desafío. Esta información incluye la pregunta que Amazon Cognito presenta al usuario (
publicChallengeParameters
) y las respuestas válidas a la pregunta (privateChallengeParameters
). Solo el desencadenador de Lambda de verificación de la respuesta al desafío de autenticación utiliza este parámetro. - challengeAnswer
-
Este valor de parámetro es la respuesta del usuario al desafío.
- clientMetadata
-
Este parámetro contiene uno o varios pares de clave-valor que puede proporcionar como datos de entrada personalizados a la función de Lambda para verificar el desencadenador del desafío de autenticación. Para pasar estos datos a la función Lambda, utilice el ClientMetadata parámetro en las operaciones AdminRespondToAuthChallengey RespondToAuthChallengeAPI. Amazon Cognito no incluye los datos del ClientMetadata parámetro ni de AdminInitiateAuthlas InitiateAuthAPIoperaciones en la solicitud que pasa a la función de verificación de autenticación.
Parámetros de la respuesta para verificar desafíos de autenticación
- answerCorrect
-
Si el usuario finaliza correctamente el desafío, Amazon Cognito establece este parámetro en
true
. Si el usuario no finaliza correctamente el desafío, Amazon Cognito establece el parámetro enfalse
.
Ejemplo de verificación de la respuesta a los desafíos de autenticación
En este ejemplo, la función de Lambda comprueba si la respuesta del usuario a un desafío coincide con la respuesta esperada. Amazon Cognito establece el parámetro answerCorrect
en true
si la respuesta del usuario coincide con la respuesta esperada.