策略路径 "arn:aws:iam::aws:policy/aws-service-role" 和 " " arn:aws:iam::aws:policy/service-role 之间的区别



路径"aws:policy/service-role"和"aws:policy/aws-service-role"下的策略之间有什么区别?

这个设计背后有什么逻辑吗?

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 实例或承担的任何其他角色代入。

例如,您可以授予某人附加链接服务角色的权限,该角色附加了仅附加到链接到 Lambda 服务的链接角色arn:aws:iam::aws:policy/aws-service-role/AWSLambdaReplicator策略。他们可以在 Lambda 执行角色中使用此角色,但无法将此角色用于其他服务(如 EC2 或 IAM 用户(。这支持管理员允许用户向用户启动的新资源(新 Lambda(分配权限,管理员信任链接的 AWS 服务使用,但不希望允许该用户直接通过其用户账户访问或将其授予在 AWS 中运行的其他自定义应用程序。

最新更新