【发布时间】:2016-09-23 03:51:31
【问题描述】:
我被困在“Amazon Cognito Identity 用户池”流程中。
我尝试了所有可能的代码来验证 cognito 用户池中的用户。但我总是收到错误提示 “错误:无法验证客户端 4b*******fd 的秘密哈希”。
代码如下:
AWS.config.region = 'us-east-1'; // Region
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: 'us-east-1:b64bb629-ec73-4569-91eb-0d950f854f4f'
});
AWSCognito.config.region = 'us-east-1';
AWSCognito.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: 'us-east-1:b6b629-er73-9969-91eb-0dfffff445d'
});
AWSCognito.config.update({accessKeyId: 'AKIAJNYLRONAKTKBXGMWA', secretAccessKey: 'PITHVAS5/UBADLU/dHITesd7ilsBCm'})
var poolData = {
UserPoolId : 'us-east-1_l2arPB10',
ClientId : '4bmsrr65ah3oas5d4sd54st11k'
};
var userPool = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserPool(poolData);
var userData = {
Username : 'ronakpatel@gmail.com',
Pool : userPool
};
var cognitoUser = new AWSCognito.CognitoIdentityServiceProvider.CognitoUser(userData);
cognitoUser.confirmRegistration('123456', true,function(err, result) {
if (err) {
alert(err);
return;
}
console.log('call result: ' + result);
});
【问题讨论】:
-
接受的答案不再有效。如何生成秘密哈希的说明在这里docs.aws.amazon.com/cognito/latest/developerguide/…
-
是的,请查看下面的 @Simon Buchan 答案以获取 JavaScript 实现。效果很好。
-
Note that Generate client secret must be unchecked when creating a web app; the Amazon Cognito Identity SDK for JavaScript doesn’t support apps that have a client secret simply because the client secret could be easily viewed in your code.aws.amazon.com/blogs/mobile/…
标签: amazon-web-services amazon-cognito