Aws sdk AWS EC2资源级别,初始化失败

Aws sdk AWS EC2资源级别,初始化失败,aws-sdk,amazon-iam,Aws Sdk,Amazon Iam,我使用这个政策 { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1385026304010", "Effect": "Allow", "Action": [

我使用这个政策

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1385026304010",
            "Effect": "Allow",
            "Action": [
                "ec2:RunInstances"
            ],
            "Condition": {
                "StringEquals": {
                    "ec2:InstanceType": "t2.medium"
                }
            },
            "Resource": [
                "arn:aws:ec2:us-east-1:*:instance/*",
                "arn:aws:ec2:us-east-1:*:image/ami-81c603ea",
                "arn:aws:ec2:us-east-1:*:key-pair/CodeDeploy",
                "arn:aws:ec2:us-east-1:*:security-group/sg-5ace243d",
                "arn:aws:ec2:us-east-1:*:volume/*"
            ]
        }
    ]
}
但它显示错误消息,初始化失败。我在aws文档中看到了这个例子,但不明白为什么会发生这个问题

解码信息
可能的情况是找不到资源
“arn:aws:ec2:us-east-1:955246940111:密钥对/CodeDeploy”
。在我的情况下,“解决方案”实际上是删除
条件。我不知道为什么它似乎破坏了配置(当我在中有一个关于实例大小的条件时,也得到了
键名
错误;但是如果没有相同的条件和所有其他资源,它可以工作)。不要太喜欢它,因为强制使用小实例会提供更多的安全性。
{
  "allowed": false,
  "explicitDeny": false,
  "matchedStatements": {
    "items": []
  },
  "failures": {
    "items": []
  },
  "context": {
    "principal": {
      "id": "AIDAJXOEQNA64A677DGQO",
      "name": "DevOps1",
      "arn": "arn:aws:iam::955246940111:user/DevOps1"
    },
    "action": "ec2:RunInstances",
    "resource": "arn:aws:ec2:us-east-1:955246940111:key-pair/CodeDeploy",
    "conditions": {
      "items": [
        {
          "key": "ec2:Region",
          "values": {
            "items": [
              {
                "value": "us-east-1"
              }
            ]
          }
        }
      ]
    }
  }
}