Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services AWS Cognito和自定义角色_Amazon Web Services_Authorization_Amazon Cognito - Fatal编程技术网

Amazon web services AWS Cognito和自定义角色

Amazon web services AWS Cognito和自定义角色,amazon-web-services,authorization,amazon-cognito,Amazon Web Services,Authorization,Amazon Cognito,我是AWS的新手。。。 我们有一个自主开发的用户身份验证和授权。 我们在公司术语中定义授权(角色),角色1允许您执行任务1和任务2。角色2只允许执行任务3 我可以看到如何使用Cognito进行用户/密码管理。 不清楚我是否使用cognito进行角色验证,即授权 想法?在Cognito用户池中,可以定义用户和组,这可以用来驱动细粒度RBAC许可。您可以在用户模型中定义自定义属性(例如,“部门”或“角色”),并将此属性映射到组 每个组都可以选择性地与IAM角色关联,因此可以按组限制对AWS资源(例

我是AWS的新手。。。 我们有一个自主开发的用户身份验证和授权。 我们在公司术语中定义授权(角色),角色1允许您执行任务1和任务2。角色2只允许执行任务3

我可以看到如何使用Cognito进行用户/密码管理。 不清楚我是否使用cognito进行角色验证,即授权


想法?

在Cognito用户池中,可以定义用户和组,这可以用来驱动细粒度RBAC许可。您可以在用户模型中定义自定义属性(例如,“部门”或“角色”),并将此属性映射到组

每个组都可以选择性地与IAM角色关联,因此可以按组限制对AWS资源(例如,某些DynamoDB表)的访问,作为附加的安全层


但是,如果您不需要/不想将用户映射到不同的IAM角色,则可以完全从应用程序内部处理身份验证

为了确保我的理解,我为我的问题域设置了自定义角色,不关心对AWS资源的访问限制,将我的自定义角色变形为IAM角色会给我带来什么好处吗?你可能不会得到任何好处——如果你需要动态角色定义(例如,如果你有允许“管理员用户”的应用程序功能)重新定义应用程序中的角色)然后将域角色紧密映射到IAM角色只会带来麻烦。OTOH,如果您有不同的用户群体,比如“客户”和“客户服务代理”,并且假设他们访问不同的API端点,那么您可以将所有客户映射到一个IAM角色,将所有代理映射到另一个IAM角色,并以这种方式进行粗粒度许可——作为自定义细粒度身份验证之外的一个层。