可以使用什么AWS IAM策略将用户限制为有限数量的实例类型

时间:2016-01-20 13:05:23

标签: amazon-web-services

使用AWS Identity Access Management(IAM)策略,是否可以为启动EC2实例的用户限制以下项目:

  1. 实例类型EG t2.small,t2.medium等
  2. 已启动的实例数。限制为固定的最大值。

2 个答案:

答案 0 :(得分:1)

据我所知,唯一的方法是在最终用户和AWS之间放置一个包含代码的逻辑层,例如使用一些python boto脚本。您还可以部署调用脚本的Web界面,或使用rundeck,jenkins等工具,并在这些界面中创建作业。

答案 1 :(得分:1)

您可以将策略限制为仅允许某些实例类型:

{
   "Version": "2012-10-17",
   "Statement": [{
      "Effect": "Allow",
      "Action": "ec2:RunInstances",
      "Resource": [
        "arn:aws:ec2:region::image/ami-*",
        "arn:aws:ec2:region:account:instance/*",
        "arn:aws:ec2:region:account:subnet/*",
        "arn:aws:ec2:region:account:network-interface/*",
        "arn:aws:ec2:region:account:volume/*",
        "arn:aws:ec2:region:account:key-pair/*",
        "arn:aws:ec2:region:account:security-group/sg-12345678"
      ],
      "Condition": {
            "StringEquals": {
                "ec2:InstanceType": "m1.small"
            }
        }
    }
   ]
}

此策略允许用户在VPC中启动实例,但只能启用m1.small实例类型。

您可以进一步限制对特定AMI,子网等的权限。例如,此处的安全组仅限于一个特定策略。

您不能限制通过IAM策略启动的实例数。

请参阅IAM user to limit number of ec2 instances and typeExample Policies for Working in the Amazon EC2 Console