AWS官方网站将角色读取为权限的集合,将组读取为用户的集合。 但是他们对我来说还是一样。 您将策略附加到组或角色,然后将组或角色分配给用户。 角色和小组之间到底有什么区别?
googlers的简短答案:您无法为用户分配角色。
用户可以根据AWS文档设定角色:
承担角色
AWS Groups是标准组,您可以将其视为几个用户的集合,并且一个用户可以属于多个组。
AWS IAM角色都是不同的物种。 它们的工作方式类似于单个用户,不同之处在于,它们主要工作在模拟风格上,并在不指定凭证的情况下与AWS API调用进行通信。
鉴于IAM角色几乎没有什么不同,我仅强调这一点。 IAM角色有几种类型,例如EC2 IAM角色,Lambda等。如果您考虑的话,可以使用EC2 IAM角色启动EC2实例。 因此,任何与AWS API相关的通信都不需要任何AWS Access Key或Secret Key进行身份验证,而是可以直接调用API(但是答案很长-它使用STS并在后台不断回收凭证); 其功能的特权或权限由IAM角色附带的IAM策略确定。
Lambda IAM角色的工作原理完全相同,只是只有Lambda函数可以使用Lambda IAM角色等。
用户:最终用户(认为人员)。
组:一组权限下的用户集合(权限作为策略)。
角色:您创建角色并将其分配给AWS资源(AWS资源示例可以是客户,供应商,承包商,雇员,EC2实例,AWS外部的某些外部应用程序),但请记住,您无法将角色分配给用户。
对于这两个功能之间的差异,我一直感到困惑。
简而言之,
角色就像是带有可附加在IAM用户/组或AWS服务上的所有预设策略的标签。 IAM用户与账户根用户(Admin)共享同一账户,但具有由根用户分配的使用该账户内AWS资源的权限。
因此,IAM用户可以直接与AWS服务进行交互; 尽管IAM角色无法直接向AWS服务发出请求,但它们应由IAM用户或实例之类的授权实体来承担。 [https://aws.amazon.com/iam/faqs/]
一次只能承担一个IAM角色! 而且有几个 恰好适合这种许可的情况。
阅读有关以下常见问题解答:我可以承担几个IAM角色?
在两个用例(即组和IAM角色)中,使用的基础工具都是“权限”。
组或IAM角色->具有策略->策略定义权限->权限已分配给组或IAM角色。