如何限制 AWS 用户不使用 cli 旋转多个实例?

How to retsrict AWS user to not spin more than one instance using cli?

我有一项政策允许用户在 AWS 账户中启动 EC2 实例,但我想限制用户只能使用一个实例?

在以下命令中,我使用了 --count 关键字,但用户可以将其修改为任意数字。

aws ec2 run-instances --image-id ami-00ee4df451840fa9d --count 1 --instance-type t2.micro --security-group-ids xxxxxxxxxxxx --key-name xxxxxxxxx --subnet-id xxxxxxxxx --profile userX --region us-west-2

有没有办法限制用户 运行 只有一个实例?

谢谢

无法使用 IAM 策略来限制 IAM 用户可以启动的 Amazon EC2 实例的数量。

IAM 策略确定是否允许用户发出 API 请求(例如 RunInstances()),但无法查看现有资源来做出该决定。

您需要创建一个 'service' 来代表用户启动实例,首先检查是否存在现有实例。例如,这可能是您编写的 web-app 来验证条件,然后代表用户启动实例。

另外,请注意 Amazon EC2 实例不与 'users' 相关联——它们与 AWS 帐户相关联。因此,您还需要一种将现有实例与 IAM 用户相关联的方法,例如 添加标签 以识别请求该实例的用户。 (确保用户没有修改此标签的权限!)