O Amazon Cognito não enviou o código de verificação por e-mail ou SMS para a chamada de API ForgotPassword.
Resolução
Siga estas práticas recomendadas para solucionar problemas de configuração do grupo de usuários do Amazon Cognito.
Verifique a pasta de spam e a lixeira
Certifique-se de que o e-mail de verificação não tenha ido para as pastas de spam ou lixeira do usuário.
Confirme se o usuário existe no grupo de usuários
Verifique se o usuário existe no grupo de usuários do Amazon Cognito. Para pesquisar usuários no grupo de usuários usando o console do Amazon Cognito, consulte Gerenciar e procurar contas de usuário.
-ou-
Procure o usuário no grupo de usuários usando a API AdminGetUser.
O usuário não está em um status CONFIRMED
Os usuários criados por administradores estão em um status FORCE_CHANGE_PASSWORD por padrão até entrarem com a senha fornecida. Em seguida, é solicitado que eles alterem a senha.
Se o status do usuário for FORCE_CHANGE_PASSWORD, a chamada de API ForgotPassword não poderá ser usada, e o código de verificação não será enviado.
Verificar como o usuário pode recuperar a conta
Verifique como a conta de usuário está configurada para recuperar a conta. Por exemplo: e-mail, telefone, somente e-mail, somente telefone, telefone, se disponível, ou nenhum.
1. Abra o console do Amazon Cognito, escolha Manage user pools (Gerenciar grupos de usuários) e escolha o grupo de usuários.
2. Em General settings (Configurações gerais), escolha MFA and verifications (MFA e verificações).
3. Na seção How will a user be able to recover their account? (Como um usuário poderá recuperar sua conta?), observe a seleção do método de recuperação.
Os usuários com status CONFIRMED podem não ter seu e-mail ou telefone verificados para recuperação de senha. As contas de usuário criadas pelos administradores devem ser verificadas ao serem criadas usando a caixa de seleção de verificação. Os administradores também podem usar a chamada de API AdminUpdateUserAttributes para marcar o telefone e o e-mail como verificados, de maneira semelhante à seguinte:
E-mail verificado
aws cognito-idp admin-update-user-attributes --user-pool-id <userpool
id> --username <user name> --user-attributes
Name=email_verified,Value=true --region <region name>
Número de telefone verificado
aws cognito-idp admin-update-user-attributes --user-pool-id <userpool
id> --username <user name> --user-attributes
Name=phone_number_verified,Value=true --region <region name>
Verificar o limite de cota do Amazon SNS
O Amazon Cognito usa o Amazon Simple Notification Service (Amazon SNS) para fornecer SMS. A cota de gastos padrão do Amazon SNS para contas é de USD 1,00 por mês. Para verificar ou alterar o limite de gastos da conta, consulte Definir preferências de SMS usando o Console de Gerenciamento da AWS.
Importante: se o limite de gastos da conta definido no Console de Gerenciamento da AWS exceder sua cota de serviço, o Amazon SNS deixará de publicar SMS.
Para aumentos de cota, consulte Solicitar aumentos na sua cota de gastos mensais de SMS para o Amazon SNS.
Verificar o limite do Amazon SES
O Amazon Cognito usa o Amazon Simple Email Service (Amazon SES) para entregar e-mails. Por padrão, o Amazon Cognito permite um número limitado de e-mails por dia para seu grupo de usuários. Para obter mais informações, consulte Cotas de recursos de grupos de usuários do Amazon Cognito.
É possível definir uma entrega de e-mail mais alta configurando seu grupo de usuários para usar sua configuração de e-mail do Amazon SES. Para obter instruções, consulte Configurações de e-mail para grupos de usuários do Amazon Cognito.
Redefinir a senha do usuário usando a API AdminSetUserPassword
Os administradores podem definir a senha de um usuário em um grupo de usuários do Amazon Cognito como temporária ou permanente usando a API AdminSetUserPassword. Usuários com senhas temporárias devem fazer login e alterá-las antes que elas expirem. Depois que um usuário redefine a senha temporária ou se a senha é permanente, o status é definido como CONFIRMED.
Informações relacionadas
Motivos de falha na entrega de SMS
admin-get-user
AdminResetUserPassword