我正在使用aws cognito进行身份验证,而在后端方面,我需要像管理员帐户一样连接cognito并检查用户属性。我发现下面的代码应该有效,但我得到user is not authorized to perform not authorized to perform on ...
如何创建具有此类权限的用户?
`
let cisp = new AWS.CognitoIdentityServiceProvider()
var params = {
AuthFlow: 'ADMIN_NO_SRP_AUTH',
ClientId: appConfig.ClientId,
UserPoolId: appConfig.UserPoolId,
AuthParameters: {
USERNAME: xxxxxxxxxxxxxxxxx,
PASSWORD: yyyyyyyyyyyyyyyyy
}
}
cisp.adminInitiateAuth(params, (err, data) => {
...
}
`
答案 0 :(得分:1)
您可以使用AWS cognito SDK并调用以下方法来获取有关身份的信息。
describeIdentity(params = {},callback)⇒AWS.Request
如果您的代码在AWS EC2,ECS或Lambda中运行,您可以附加有权访问Cognito的IAM角色,以便您的代码可以通过SDK访问Cognito API。
否则,您需要创建具有Cognito权限的IAM用户,并使用AccessKey和Secret来验证模拟用户的SDK API调用。