gpt4 book ai didi

amazon-web-services - AWS-Cognito : How to sign in user with email or username

转载 作者:行者123 更新时间:2023-12-05 06:18:39 25 4
gpt4 key购买 nike

在 AWS Cogito User Pool 期间,有两种选项可让用户登录。其中之一是

用户名 - 用户可以使用用户名和可选的多个备选方案来注册和登录。

还允许使用经过验证的电子邮件地址登录

我选择了上面的内容,在使用 aws-amplify 对其进行测试时,我总是得到 __type: "NotAuthorizedException"
消息:“不正确的用户名或密码。”
如果我尝试使用电子邮件登录,但当我尝试使用用户名登录时它工作正常。

这是我的登录方法

Auth.signIn(email, password)
.then(r => {
setLoggedIn(true);
})
.catch(r => {
setLoggedIn(false);
})

};

最佳答案

我知道这是一个旧线程,但我最近遇到了这个问题,必须弄清楚。当您的用户池中的用户没有将 email_verified 设置为 True 时,Auth.signIn 方法将仅适用于该用户的用户名。

不仅如此,Auth.forgotPassword 方法不会将代码发送到用户的电子邮件。可能还有更多这样的互动。

确保您确认您用户的电子邮件地址,仅此而已!

如果您使用后端来创建用户,您可以通过以下方式简单地执行此操作:

const signUpParams = {
UserPoolId: "YOUR_USER_POOL_ID",
TemporaryPassword: "TEMP_PW",
Username: "username",
UserAttributes: [
{
Name: 'email',
Value: "USER_EMAIL",
},
{
Name: 'email_verified',
Value: 'true',
},
],
};

const { User } = await cognitoService.adminCreateUser(signUpParams).promise();

关于amazon-web-services - AWS-Cognito : How to sign in user with email or username,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61179085/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com