【发布时间】:2016-10-27 18:11:48
【问题描述】:
所以我在搞乱 Cognito 及其 Javascript 中的 Beta 用户池功能。多亏了这里的文档,我成功地创建了用户:
当我尝试对用户进行身份验证时,我收到一条奇怪的错误消息:
NotAuthorizedException:用户名或密码不正确。
我不明白为什么会这样,因为我实际上是在复制和粘贴用于创建用户的用户名和密码的值,这工作正常。
下面是我验证用户的代码:
//----- Setup
AWS.config.region = 'us-east-1'; // Region
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: 'myIdentityPoolId'
});
AWSCognito.config.region = 'us-east-1';
AWSCognito.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: 'myIdentityPoolId'
});
var poolData = { UserPoolId : 'myUserPoolId',
ClientId : 'myClientId'
};
//-----Authenticate a user
alert('Authenticate a user with application');
var authenticationData = {
Username : 'markie17061993',
Password : 'MeowWoof123456789!',
};
var authenticationDetails = new AWSCognito.CognitoIdentityServiceProvider.AuthenticationDetails(authenticationData);
var poolData = { UserPoolId : 'myUserPoolId',
ClientId : 'myClientId'
};
var userPool = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserPool(poolData);
var userData = {
Username : 'markie17061993',
Pool : userPool
};
var cognitoUser = new AWSCognito.CognitoIdentityServiceProvider.CognitoUser(userData);
alert('hiss');
cognitoUser.authenticateUser(authenticationDetails, {
onSuccess: function (result) {
console.log('access token + ' + result.getAccessToken().getJwtToken());
},
onFailure: function(err) {
alert(err);
},
});
你觉得这里有什么问题吗?我想也许我在这两个地方的 UserName 参数意味着不同的值或其他东西:
var authenticationData = {
Username : 'markie17061993',
Password : 'MeowWoof123456789!',
};
var userData = {
Username : 'markie17061993',
Pool : userPool
};
谢谢
【问题讨论】:
标签: javascript amazon-web-services authentication amazon-cognito