什么是允许用户在VPC安全组中添加Ingress / Egress规则的正确IAM策略

时间:2014-04-22 17:01:47

标签: amazon-web-services rules policy amazon-iam

我试过这个,但它在IAM策略模拟器上失败了 从AWS文档获得此策略。

{
"Version": "2012-10-17",
  "Statement":[{
    "Effect":"Allow",
    "Action": [
       "ec2:AuthorizeSecurityGroupIngress",
       "ec2:AuthorizeSecurityGroupEgress",
       "ec2:RevokeSecurityGroupIngress",
       "ec2:RevokeSecurityGroupEgress"],
     "Resource": "arn:aws:ec2:us-east-1:Account-Number:security-group/*",
      "Condition": {
        "StringEquals": {
          "ec2:Vpc": "arn:aws:ec2:us-east-1:Account-Number:vpc/vpc-id"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "ec2:DescribeSecurityGroups",
      "Resource": "*"
    }
  ]
}

2 个答案:

答案 0 :(得分:0)

我已经通过IAM policy成功测试了引用的IAM Policy Simulator - 政策模拟器可能非常挑剔/棘手但我花了几次尝试才能将其设置为正确,此处和#39;要注意的是:

  1. 显然,您需要使用您的AWS账户中的实际值替换策略中的账号 vpc-id - 可能您已经这样做了。
  2. 由于您已为特定资源 arn:aws:ec2:us-east-1:Account-Number:security-group/*创建了政策,因此您需要确保同时输入与Resource相同的Amazon Resource Name (ARN) 模拟设置
  3. 同样,由于您已创建具有特定Condition的策略,因此模拟器会要求在模拟设置中输入ec2:Vpc条件键的值 - 您需要确保输入一个完整的ARN作为值,而不仅仅是VPC id本身,即arn:aws:ec2:us-east-1:Account-Number:vpc/vpc-12345678而不仅仅是vpc-12345678

答案 1 :(得分:0)

感谢您的回复。 我想我在模拟器上做错了,因为我在CLI上运行了一个命令,它确实按预期运行了这个策略。 我试图更新这个问题,但由于我是这个论坛的新手,我必须等待8个小时来回答我自己的问题。