繁体   English   中英

用于授权的 AWS cognito 自定义用户角色

[英]AWS cognito custom user roles for authorization

AWS cognito 的文档建议了 IAM 周围的所有角色。 如何使我的应用程序(资源服务器)理解的有意义的角色?

我在我的应用程序中广泛使用了 AWS Cognito,我可以尝试在这里为您提供帮助。

无论您说什么,都可以使用 Cognito。 我相信您正在尝试为 map 您的应用程序角色与 Cognito/AWS IAM 角色建立一种模式。

池中的所有 Cognito 用户都可以隔离在不同的 Cognito 组下。 文档在这里-> https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-user-groups.html

每个 Cognito 用户组都必须映射到相应的 IAM 角色(您可以自定义的权限)。

现在,这些组需要与应用程序中的用户角色/组进行一对一的映射。

可以通过 2 种不同的方式利用这些组。 我们正在考虑带有 UI 层的设计模式(例如:AngularJS)-> AWS APi 网关-> RestAPI(Lambda/作为 Beanstalk/container/Ec2/等中的应用程序托管)

  1. UI 控件需要根据用户组显示。 例如,超级管理员将看到所有链接和菜单,完全权限。 但是对于普通的最终用户,有限的链接和菜单将是可见的。 为了实现这一点,您可以使用 AngularJS 的一些插件(在您的情况下可能会有所不同)来根据组信息控制 UI 的呈现。

  2. API 层可以通过将 API 网关的 Authorizer 配置设置为 IAM/Cognito 来引入授权层来保护。 因此,在请求到达后端托管的 API 之前,API 网关将检查请求的用户组是否有权访问 API。

我希望这有帮助。

不确定您的意思太多,但角色用于访问 AWS 资源。 Cognito 可以与身份池一起使用,以向 AWS 资源授予临时凭证。 这意味着您可以将您的服务器/ec2 实例放在配置了 IAM 身份验证的 API 网关之后,并在您的身份池中创建一个经过身份验证的角色,该角色允许 HTTP 调用您的 API

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM