所以我正在对Cognito用户池进行身份验证。后端Lambda需要具有临时secretKey和accessKey,以便它可以将请求者授权给Dynamo。 请求者或用户位于具有FullDynamoDBAccess的Cognito用户池中的组中。
我已选择在身份池中的Authenticated Role Section中选择Token Token。
但是当我试图获取临时访问详细信息时,它会抛出“配置中缺少凭据”错误[“InvalidIdentityPoolConfigurationException”]。 如果我将“选择角色从令牌”更改为“默认”,则错误消失。
AWS.config.region = "****";
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: "*****",
IdentityId: "****",
Logins: {
"***": event.id_token
}
});
答案 0 :(得分:1)
我遇到了同样的问题,并通过更改分配给Cognito用户池组的角色的信任策略来解决此问题。信任策略必须命名标识池。请参阅http://docs.aws.amazon.com/cognito/latest/developerguide/role-based-access-control.html。
答案 1 :(得分:0)
问题是登录:{' ***':令牌}
***必须无效......您需要使用以下内容: ' cognito-idp..amazonaws.com /'