创建单个 ec2 实例的 IAM 策略

创建单个 ec2 实例的 IAM 策略

我如何创建一个策略,允许组中的单个用户在特定 VPC 和 AZ 中创建单个 ec2 实例。并且它可以被同一个用户销毁,或者在闲置超过 24 小时时被销毁。

答案1

AWS 不提供您的任何要求,当然也不作为 IAM 策略。

  • AWS 不会跟踪特定用户创建了多少个实例
  • AWS 不会在规定的时间段后终止您的实例

您可以创建一个 IAM 策略,将创建限制在单个区域/AZ,但您无法限制用户创建的同时运行的实例数量。您可以通过创建 /28 子网(AWS 允许的最小子网)来创建人为限制,将配置文件限制为在该子网中创建/销毁,这将允许一次最多 14 个实例,但这仍然不是您想要的。

此外,AWS 不知道您的实例在任何时候都在做什么,因此无法判断正在运行的实例是否处于“空闲”状态。没有运行用户级进程的实例仍在使用 CPU(AWS CloudWatch 可以看到)进行系统进程。而且肯定没有“在任意测量时为我终止我的实例”的 IAM 策略类型。

您必须创建自己的解决方案。一种替代方案可能是创建一个 Lambda 函数,该函数一次最多可以创建一个正在运行的实例(可能通过标签或安全组成员身份进行跟踪),并为您的用户提供执行 Lambda 函数的 IAM 策略,但如果您想根据此情况自动终止实例,您仍然必须想出一种方法来决定实例是否处于“空闲”状态。

相关内容