Acionador do Lambda Verificar resposta do desafio de autenticação - Amazon Cognito

Acionador do Lambda Verificar resposta do desafio de autenticação


            Acionadores do Lambda de desafio
Verificar a resposta do desafio de autenticação

O Amazon Cognito invoca esse acionador para verificar se a resposta do usuário final a um desafio de autenticação personalizado é válida ou não. Ele faz parte de um fluxo de autenticação personalizado do grupo de usuários.

A solicitação deste trigger contém os parâmetros privateChallengeParameters e challengeAnswer. Os valores de privateChallengeParameters são retornados pela acionador do Lambda Criar desafio de autenticação e conterá a resposta esperada do usuário. O parâmetro challengeAnswer contém a resposta do usuário para o desafio.

A resposta contém o atributo answerCorrect, que será definido como true se o usuário concluir o desafio com êxito; do contrário, defina-o como false.

O loop de desafio será repetido até todos os desafios serem respondidos.

Parâmetros do acionador do Lambda Verificar desafio de autenticação

Estes são os parâmetros exigidos por essa função Lambda, além dos parâmetros comuns.

JSON
{ "request": { "userAttributes": { "string": "string", . . . }, "privateChallengeParameters": { "string": "string", . . . }, "challengeAnswer": { "string": "string", . . . }, "clientMetadata": { "string": "string", . . . }, "userNotFound": boolean }, "response": { "answerCorrect": boolean } }

Parâmetros de solicitação Verify Auth Challenge

userAttributes

Um ou mais pares de nome-valor que representam atributos de usuário.

userNotFound

Este booliano é preenchido quando PreventUserExistenceErrors é configurado como ENABLED para o cliente de grupo de usuários.

privateChallengeParameters

Esse parâmetro vem do trigger Create Auth Challenge e é comparado com challengeAnswer do usuário para determinar se o usuário passou no desafio.

Esse parâmetro é usado somente pelo acionador do Lambda Verificar resposta do desafio de autenticação. Ele deve conter todas as informações necessárias para validar a resposta do usuário para o desafio. Isso inclui o parâmetro publicChallengeParameters, que contém a pergunta apresentada ao usuário, e privateChallengeParameters, que contém as respostas válidas da pergunta.

challengeAnswer

A resposta do usuário para o desafio.

clientMetadata

Um ou mais pares de chave-valor que você pode fornecer como entrada personalizada para a função Lambda especificada para o acionador de verificação do desafio de autenticação. É possível passar esses dados para a função Lambda usando o parâmetro ClientMetadata nas ações de API AdminRespondToAuthChallenge e RespondToAuthChallenge.

Parâmetros de resposta Verify Auth Challenge

answerCorrect

Defina como true se o usuário tiver concluído o desafio com êxito; do contrário, defina-o como false.

Exemplo de Verify Auth Challenge Response

Nesse exemplo, a função Lambda verifica se a resposta do usuário a um desafio corresponde à resposta esperada. O parâmetro answerCorrect será definido como true se a resposta do usuário corresponder à resposta esperada.

Node.js
exports.handler = (event, context, callback) => { if (event.request.privateChallengeParameters.answer == event.request.challengeAnswer) { event.response.answerCorrect = true; } else { event.response.answerCorrect = false; } // Return to Amazon Cognito callback(null, event); }