gpt4 book ai didi

javascript - AWS Amplify Auth/Cognito 说得太多了?

转载 作者:行者123 更新时间:2023-12-02 20:06:29 26 4
gpt4 key购买 nike

当前使用 Cognito Javascript SDK ,当我发送的用户名存在与否时收到警告,我有点惊讶:

这是我正在使用的代码:

login(username, password) {
const authenticationData = {
Username : username,
Password : password,
};

const authenticationDetails = new AuthenticationDetails(authenticationData);

const userPool = new CognitoUserPool(this.poolData);
const userData = {
Username : username,
Pool : userPool,
};

this.cognitoUser = new CognitoUser(userData);
this.cognitoUser.authenticateUser(authenticationDetails, {
onSuccess: function (result) {
console.log(result);
},
newPasswordRequired: function(...) {

},
onFailure: function(err) {
console.log(err);
},
});
}

如果我将 username 设置为 mytest(现有用户)并使用错误的密码,则会收到以下错误:

"NotAuthorizedException" Incorrect username or password.

没关系。但是,如果我将 username 设置为 test12345 (非现有用户),则会收到此错误:

"UserNotFoundException" User does not exist.

我认为告诉最终用户用户名是否存在并不真正安全。

我错了吗?是我做错了什么吗?

我只想让第一个异常(exception)通知最终用户登录失败。

最佳答案

我花了一些时间才找到它,但在用户池客户端设置中有一个选项防止用户存在错误(常规设置 -> 应用程序客户端)。请参阅https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-managing-errors.html

关于javascript - AWS Amplify Auth/Cognito 说得太多了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54541366/

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