Sha*_*aho 4 amazon-web-services amazon-cognito
我正在尝试实现以下目标:我有一个Web应用程序,它对某些菜单和对API网关的调用需要不同的用户权限。
我已执行以下操作:-设置具有2个组(组1和组2)的用户池-将用户分配给这些组-设置2个策略(策略1和策略2,其中策略1是经过身份验证的角色的默认策略在联合身份中) -在角色中设置正确的信任策略-在联合身份中,在身份验证提供程序下,我设置了身份验证角色选择以从令牌中选择角色
在前面,我已经解码了ID令牌,并验证了初始化登录时cognito:groups等是否正确。
因此,组1是允许所有内容的宽松策略,策略2是更严格的策略,不应允许调用API网关中的某个资源。
但是,当我将用户分配给具有更严格策略2的组2时,该用户似乎仍然使用允许所有内容的策略1。我在这里做错了什么?
我有与此线程相同的问题,并完全按照它说的做,但仍然没有任何进展
检查分配给用户组的角色是否带有trust relationship。它需要它,因此它可以担当联合身份提供者的角色。
您可以通过执行以下操作为用户池组角色构建适当的角色:
Choose role from token Role resolution为DENY参考文献:
小智 0
这可能是一个愚蠢的问题,但是您是否已将 IAM 角色分配给 Cognito 用户池组?
此外,我会选择更严格的政策优先。您应该应用“普通用户”策略作为经过身份验证的角色,并应用更多“管理员用户”策略作为属于特定组的用户所承担的角色。
如同:
组:管理员(附加策略 A)(优先级 0) 组:用户(附加策略 B)(优先级 10)
已验证角色:策略 B
| 归档时间: |
|
| 查看次数: |
1094 次 |
| 最近记录: |