“ aws:policy / service-role”和“ aws:policy / aws-service-role”路径下的策略有何区别? 这种设计背后有逻辑吗?
谢谢
丹尼尔
答案 0 :(得分:0)
aws-service-role
路径中的AWS托管策略是仅附加到服务链接角色的策略。
如果您转到AWS控制台-> IAM->策略,按AWS托管策略进行过滤并开始单击它们,您会注意到带有aws-servive-role
路径的策略的顶部有一个帮助标签,显示为“此策略已链接到服务,并且仅与该服务的服务链接角色一起使用。您不能附加,分离,修改或删除此策略。”在描述策略而不是检查路径时,也许有一种方法可以过滤掉AWS控制台或CLI中与服务相关的策略,但是它现在在暗示我。
您可以在此处查看其用法 https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html。
这也是描述https://aws.amazon.com/blogs/security/introducing-an-easier-way-to-delegate-permissions-to-aws-services-service-linked-roles/与服务相关的角色是什么的博客文章。基本上,这些角色只能由特定的服务类型承担。
service-role
路径中的AWS托管策略是可以附加到任何角色(包括“普通/基本”角色)的策略。用户,EC2实例或假定其他任何位置的角色都可以承担这些类型的角色。
例如,您可以授予某人权限以附加具有附加策略arn:aws:iam::aws:policy/aws-service-role/AWSLambdaReplicator
的链接服务角色,该角色只能附加到链接到Lambda服务的链接角色。他们将能够在Lambda执行角色中使用此角色,但是他们将无法与EC2或IAM用户之类的其他服务一起使用此角色。这支持管理员允许用户分配对用户旋转的新资源(新的Lambda)的权限,该资源由管理员信任链接的AWS服务使用,但不想允许该用户直接通过其用户帐户访问或将它们提供给在AWS中运行的其他自定义应用程序。