javascript – AWS:身份池配置无效.检查此池的已分配IAM角色

前端之家收集整理的这篇文章主要介绍了javascript – AWS:身份池配置无效.检查此池的已分配IAM角色前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我创建了一个用户池&身份池.

我用过javascript sdk.

我可以注册,发送确认码&使用javascript sdk成功确认用户.

但是当我尝试使用身份验证方法登录用户时尝试使用以下代码传递idToken来获取“CognitoIdentityCredentials”凭据

logins[cognitoEndpoint + "/" + userPoolId] = jwtToken;

    AWS.config.credentials = new AWS.CognitoIdentityCredentials({
      IdentityPoolId: identityPoolId,Logins: logins
    });

它给了我以下错误

Error: Invalid identity pool configuration. Check assigned IAM roles for this pool.
    at Request.extractError (aws-sdk.js:104063)
    at Request.callListeners (aws-sdk.js:106060)
    at Request.emit (aws-sdk.js:106034)
    at Request.emit (aws-sdk.js:105121)
    at Request.transition (aws-sdk.js:104843)
    at AcceptorStateMachine.runTo (aws-sdk.js:108480)
    at aws-sdk.js:108492
    at Request.<anonymous> (aws-sdk.js:104859)
    at Request.<anonymous> (aws-sdk.js:105123)
    at Request.callListeners (aws-sdk.js:106070)

我已授权管理员访问“Unauthenticated role”&身份池的“未经身份验证的角色”以及我正在使用其凭据的用户.

我是新来的.谁能告诉我我错过了什么?

任何帮助,将不胜感激.

解决方法

检查您在Cognito Identity Pools(联合身份)中分配的角色是否与身份池具有信任关系.

获取身份池ID,该角色名称不起作用.去做这个:

>去Cognito
>选择管理联合身份
>选择标识池
>单击编辑标识池(右上角)
>记下身份池ID
>记下不起作用的角色的名称(例如Cognito_blahUnauth_Role

在IAM中,检查角色的信任关系.确保StringEquals条件值与标识池ID匹配.

去做这个:

>转到IAM
>单击角色
>单击您之前记下的角色名称
>单击信任关系
>在条件下的右侧,检查StringEquals条件是否包含您之前记录的标识池标识.

编辑信任关系以进行修复.

原文链接:https://www.f2er.com/js/153651.html

猜你在找的JavaScript相关文章