As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Acionador do Lambda de criar desafio de autenticação
O gatilho de desafio create auth é uma função Lambda que tem os detalhes de cada desafio declarado pelo gatilho de desafio define auth. Ele processa o nome do desafio declarado pelo gatilho do desafio define auth e retorna um publicChallengeParameters
que seu aplicativo deve apresentar ao usuário. Essa função então fornece ao seu grupo de usuários a resposta para o desafioprivateChallengeParameters
, que seu grupo de usuários passa para o gatilho do desafio verify auth. Onde seu gatilho de desafio de autenticação define gerencia a sequência do desafio, seu gatilho de criação de desafio de autenticação gerencia o conteúdo do desafio.
- Criar o desafio de autenticação
-
O Amazon Cognito invocará esse acionador depois de Definir desafio de autenticação se um desafio personalizado tiver sido especificado como parte do acionador Definir desafio de autenticação. Ele cria um fluxo de autenticação personalizado.
Esse acionador do Lambda é invocado para criar um desafio a ser apresentado ao usuário. A solicitação deste acionador do Lambda inclui challengeName
e session
. O challengeName
é uma string que representa o nome do próximo desafio a ser apresentado ao usuário. O valor desse atributo é definido no acionador do Lambda Definir desafio de autenticação.
O loop de desafio será repetido até todos os desafios serem respondidos.
Tópicos
Parâmetros do acionador do Lambda de criar desafio de autenticação
A solicitação que o Amazon Cognito transmite para essa função do Lambda é uma combinação dos parâmetros abaixo e dos parâmetros comuns que o Amazon Cognito adiciona a todas as solicitações.
Parâmetros de solicitação de criar desafio de autenticação
- userAttributes
-
Um ou mais pares de nome-valor que representam atributos de usuário.
- userNotFound
-
Este booleano é preenchido quando
PreventUserExistenceErrors
é configurado comoENABLED
para o cliente de grupo de usuários. - challengeName
-
O nome do novo desafio.
- sessão
-
O elemento session é uma matriz de elementos
ChallengeResult
, cada um deles contendo os seguintes elementos:- challengeName
-
O tipo de desafio. Um destes:
"CUSTOM_CHALLENGE"
,"PASSWORD_VERIFIER"
,"SMS_MFA"
,"DEVICE_SRP_AUTH"
,"DEVICE_PASSWORD_VERIFIER"
ou"ADMIN_NO_SRP_AUTH"
. - challengeResult
-
Defina como
true
se o usuário tiver concluído o desafio com êxito; do contrário, defina-o comofalse
. - challengeMetadata
-
Seu nome para o desafio personalizado. Usado somente se
challengeName
for"CUSTOM_CHALLENGE"
.
- 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 criação do desafio de autenticação. Você pode usar o ClientMetadata parâmetro nas RespondToAuthChallengeAPIações AdminRespondToAuthChallengee para passar esses dados para sua função Lambda. A solicitação que invoca a função create auth challenge não inclui dados passados no ClientMetadata parâmetro in AdminInitiateAuthand operations. InitiateAuthAPI
Parâmetros de resposta de criar desafio de autenticação
- publicChallengeParameters
-
Um ou mais pares de chave-valor do aplicativo cliente que serão usados no desafio a ser apresentado ao usuário. Este parâmetro deve conter todas as informações necessárias para apresentar com precisão o desafio ao usuário.
- privateChallengeParameters
-
Esse parâmetro é usado somente pelo acionador do Lambda Verificar resposta do desafio de autenticação. Este parâmetro deve conter todas as informações necessárias para validar a resposta do usuário para o desafio. Em outras palavras, o parâmetro
publicChallengeParameters
contém a pergunta apresentada ao usuário, enquantoprivateChallengeParameters
contém as respostas válidas da pergunta. - challengeMetadata
-
Seu nome para o desafio personalizado, caso esse seja um desafio personalizado.
Exemplo de criar desafio de autenticação
A CAPTCHA é criado como um desafio para o usuário. O URL para a CAPTCHA imagem é adicionado aos parâmetros do desafio público como "captchaUrl
“, e a resposta esperada é adicionada aos parâmetros do desafio privado.