【问题标题】:IAM policies related to default VPC creation与默认 VPC 创建相关的 IAM 策略
【发布时间】:2021-01-22 17:51:10
【问题描述】:
【问题讨论】:
标签:
amazon-web-services
amazon-iam
amazon-vpc
【解决方案1】:
在您的 Amazon EC2 连接到 Amazon S3 的示例中,它实际上是 您的程序代码在调用 Amazon S3 的 Amazon EC2 实例上运行。对 S3 的 API 调用需要通过 IAM 凭证进行身份验证和授权。
在某些情况下,AWS 服务代表您使用服务相关角色调用另一个 AWS 服务,例如当 Amazon EC2 Auto Scaling 启动新的 Amazon EC2 时实例。这需要提供Service-Linked Role for Amazon EC2 Auto Scaling,它允许一个服务调用另一个服务。
在创建默认 VPC 的情况下,这是 AWS 在向客户提供帐户之前所做的事情。这样,客户无需先创建 VPC 即可启动资源(例如 Amazon EC2 实例)。它是标准帐户设置的一部分。
AWS 似乎还公开了 CreateDefaultVpc() 命令来重新创建默认 VPC。文档说,进行此 API 调用的权限足以创建资源,而不需要它可能生成的每个底层调用的权限。我猜它正在使用通常与服务相关角色相关联的权限,除了 VPC 操作没有服务相关角色。如果您担心创建这些资源的人(例如 Internet 网关),您可以拒绝用户调用CreateDefaultVpc() 的权限,这将阻止他们使用该命令。
【解决方案2】:
将我们的 AWS 账户视为“根”,AWS 本质上有一个“超级根”账户,它们可以触发您账户的初始创建。这一切都发生在您的帐户最初设置和配置时,因为作为产品所有者的一部分,他们具有“超级根”级别的访问权限。
我们受到 IAM 的限制(我假设 AWS 以不同的方式受到限制)以允许我们使用 Principle of Least Privilege