ec2.requestSpotInstances 需要 IAM 权限吗?

Required IAM permissions for ec2.requestSpotInstances?

我正在尝试为 IAM 角色设置权限,如果需要,该角色将提交新的 Spot 实例请求。 Lambda 函数将使用它。

该代码执行以下 AWS API 调用:

我为它创建了以下策略(在尝试了很多其他选项之后...):

{
"Version": "2012-10-17",
"Statement": [
    {
        "Sid": "Stmt1437749945000",
        "Effect": "Allow",
        "Action": [
            "ec2:Describe*",
            "ec2:RequestSpotInstances",
            "ec2:RunInstances",
            "ec2:CreateTags",
            "iam:List*"
        ],
        "Resource": [
            "*"
        ]
    }
]

}

如果我添加 iam:* 它有效,但显然我不想那样做..

谁能帮我猜猜它真正需要什么权限?有谁知道 AWS API 调用和所有必需权限之间的映射?

启动指定IAM角色的实例时,需要iam:PassRole权限。

资源应该是角色的 arn,通常是 arn:aws:iam::012345678912:role/role_name.

的形式