【问题标题】:AWS Amplify - Cognito User Group members lose permissions granted by the default authRoleAWS Amplify - Cognito 用户组成员失去默认 authRole 授予的权限
【发布时间】:2021-06-15 19:21:17
【问题描述】:

我创建了几个名为“admins”和“editors”的 Cognito 用户组,它们又按预期创建了 IAM 角色{USERPOOLID}-adminsGroupRole。这些 IAM 角色没有附加任何策略,当用户成为该组的成员时,似乎完全忽略了他们作为非组用户通过默认 authRole 授予的任何权限。

我希望 authRole 应用于任何经过身份验证的人和我的管理员/编辑组以提供额外的权限。如果这是它的工作方式,那么我预计会在我的 CloudFormation 模板中生成已经存在于其他地方的自定义策略,并且它们需要是动态的以适用于多个环境/存储桶等。这是一个问题。

我是在接近这个错误或误解吗?这种行为看起来很奇怪。

谢谢

【问题讨论】:

标签: amazon-web-services amazon-cognito aws-amplify


【解决方案1】:

在使用 Amazon Cognito 用户池(而不是身份池)时,当您创建组并指定 IAM 角色时,their permissions are determined by the group's associated IAM Role

如果我错了,请纠正我,但是当你说:I would expected the authRole to be applied to anyone who is authenticated and my admins/editors group to provide additional permissions.

authRole 是在身份池中为所有已授权用户定义的 IAM 角色。您可以在身份池的设置中控制选择哪个角色。

此答案中的更多信息: AWS Cognito role: Distinguish between Federated Identity Pool roles and User Pool Group roles

【讨论】:

  • 正确 - authRole 应该与任何被授权的人相关联。我创建了“管理员”和“编辑者”的其他用户池组我希望默认继承这个角色,但他们没有。因此,我需要授予 authRole 的任何权限,然后我需要重新申请自定义组。请记住,我需要通过 cloudformation 完成这一切,我发现自己在 user-pool-group-precedence.json 文件中编写了很多重复的代码,以使管理员或编辑用户拥有与拥有相同权限的用户没有组。
猜你喜欢
  • 2020-09-27
  • 2022-11-10
  • 2017-08-07
  • 2022-10-08
  • 2021-07-20
  • 2021-10-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多