在问了这个问题之后,我做了一些挖掘,发现了一些政策:
{
"Effect":"Allow",
"Action":"*",
"Resource":"*"
}
在他们身上。
再次通读策略评估逻辑页面,第二步对我来说很突出:
- 评估所有适用的策略。
我问题的第一部分是:AWS 如何确定哪些策略适用?据我了解,这是通过查看原则和/或资源键来完成的。
但是:在IAM中,这些政策具有附加的实体,据我所知,这些实体与原则相同。这就到了问题的第二部分:附加实体对策略执行什么操作?据我了解,所有这些都是告诉AWS该策略适用于角色,但我不明白这如何与策略中的"Resource":"*"
一起使用。
所以:
- AWS 如何确定哪些策略适用?
- 附加实体对策略执行什么操作?
- 是否使
"Resource":"*"
政策始终适用?
1> 发出请求(使用访问密钥或控制台(时,您正在传递用户名/角色名称。因此,假设您正在使用 IAM 用户访问 API。因此,AWS 将检查附加到用户的策略、附加到 IAM 组的策略(如果有(。此外,它还检查是否存在任何基于资源的策略,例如 S3 存储桶策略、由请求中的资源确定的 SNS 主题策略。
2> 如果您不将策略附加到 IAM 实体或任何资源(对于基于资源的策略(,则策略不会执行任何操作。附加的实体(我认为您指的是 IAM 实体(用于决定委托人,并反过来告诉在哪里检查权限(是否是 IAM 用户,然后检查 IAM 组成员资格等(。
3> 资源:* 表示此策略授予对任何 AWS 资源的权限。因此,您提到的政策将翻译为: 允许("效果":"允许"(对每个资源("资源":"(的每个操作("操作":">(。
希望这有帮助..