Json 用于创建EC2的AWS CloudFormation模板-列出IAM角色

Json 用于创建EC2的AWS CloudFormation模板-列出IAM角色,json,amazon-web-services,amazon-cloudformation,Json,Amazon Web Services,Amazon Cloudformation,我正在尝试获取一个AWS CloudFormation模板,以提供IAM角色的下拉列表,作为EC2创建模板的一部分。我有这个工作子网ID,专有网络和安全组,但坚持让它工作的IAM角色 在下面的代码段中,我的模板从下拉列表中提示输入VpcName,但在尝试为InstanceProfile生成列表时失败。我尝试了许多不同的组合,例如: "Type" : "AWS::IAM::Role" "Type" : "AWS::IAM::ROLE" "Type" : "AWS::IAM::Role:Id" "T

我正在尝试获取一个AWS CloudFormation模板,以提供IAM角色的下拉列表,作为EC2创建模板的一部分。我有这个工作子网ID,专有网络和安全组,但坚持让它工作的IAM角色

在下面的代码段中,我的模板从下拉列表中提示输入VpcName,但在尝试为InstanceProfile生成列表时失败。我尝试了许多不同的组合,例如:

"Type" : "AWS::IAM::Role"
"Type" : "AWS::IAM::ROLE"
"Type" : "AWS::IAM::Role:Id"
"Type" : "AWS::IAM::ROLE:ID"

用于上述参数的是一种特殊的CloudFormation参数类型:。通过这些参数,您可以获得所提到的下拉列表和指定值的附加验证,但是对于每种资源类型,CloudFormation都必须明确支持这些参数。CloudFormation支持您使用的参数类型(子网ID by
AWS::EC2::subnet::ID
、VPC by
AWS::EC2::VPC::ID
和安全组by
AWS::EC2::SecurityGroup::GroupName
AWS::EC2::SecurityGroup::ID
),而IAM角色目前还没有此类类型


因此,不幸的是,在AWS为IAM角色实现AWS特定的参数类型之前,无法获得IAM角色的此类下拉列表。我建议您打开一个AWS支持案例作为此类参数类型的功能请求,因为此类请求越多,AWS就越有可能优先考虑此问题。

我认为您现在能做的最好的事情是,假设您想使用CloudFormation,是动态生成IAM角色列表,然后以编程方式将它们作为CommaDelimitedList注入模板,然后使用模板。


    },
    "InstanceProfile": {
      "Description": "Select the role for this EC2 instance",
      "Type" : "AWS::IAM::InstanceProfile"
    },
    "VpcName" : {
      "Description" : "Select the VPC for this EC2 Instances",
      "Type" : "AWS::EC2::VPC::Id"
    },