我有一个附加到 EC2 实例的 LaunchConfiguration 的角色,它赋予 EC2 实例权限来执行某些操作,例如 Cloudwatch 日志(上下文对问题并不重要)。在 Cloudformation 中,角色如下所示:
Type: 'AWS::IAM::Role'
Properties:
AssumeRolePolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Principal:
Service: 'ec2.amazonaws.com'
Action: 'sts:AssumeRole'
Policies: ...
如果我在 AWS 控制台中查看角色,在“信任关系”下会显示“受信任的实体:身份提供商 ec2.amazonaws.com”:
我假设 CloudformationAssumeRolePolicyDocument.Principal.Service
映射到控制台中的“受信任实体”(顺便说一句,这是一种奇怪的命名方式,因为我将“主体”读作 IAM 中的不同含义,但无论如何......)。我正在使我的大脑紧张,试图拼凑正在发生的事情。我的问题是:
- IAM“可信实体”到底是什么?
- 实体“ec2.amazonaws.com”如何“担任角色”?服务'ec2.amazonaws.com'的概念假设卷只是不点击我。
- 实体“ec2.amazonaws.com”在什么意义上是“提供身份”?
- 我在哪里可以找到这些所谓的受信任实体的完整列表?