Cloudformation安全组设置组名

时间:2016-06-29 09:15:38

标签: amazon-web-services amazon-ec2 amazon-cloudformation

使用cloudformation SecurityGroup可以设置GroupName还是必须通过cloudformation提供?

最终的名称格式非常长,并且看起来不太好,也不是用它来通过命令行查找它的好匹配。

我知道我可以使用标签,但仍然不明白为什么AWS不允许我们添加标签,我想因为他们很懒,他们不想实现验证。

问候。

3 个答案:

答案 0 :(得分:3)

您可以通过使用键" Name"添加标记来设置SecurityGroup的名称,如下所示:

"MySecurityGroup": {
  "Type": "AWS::EC2::SecurityGroup",
  "Properties": {
    "GroupDescription": "Allow http",
    "SecurityGroupIngress": [
      {"IpProtocol": "tcp", "FromPort": "80", "ToPort": "80", "CidrIp": "0.0.0.0/0"}
    ],
    "Tags": [
      {"Key": "Name", "Value": "MySecurityGroup"},
    ]
  }
},

答案 1 :(得分:2)

[2017年6月26日更新] Apr 28 2017开始,现在可以使用CloudFormation为{2}}资源上的GroupName属性指定EC2安全组的自定义名称。

感谢surenyonjan对此次更新的AWS::EC2::SecurityGroup

[原创回答2016年12月23日] - 不,目前无法使用CloudFormation为EC2安全组提供自定义名称。

根据comment资源文档,没有NameGroupName属性可用。正如您所指出的,您可以使用AWS::EC2::SecurityGroup属性作为替代提供标记。

最近,一些CloudFormation资源已经开始通过Tags属性支持自定义名称。完整的受支持资源列表位于文档的Name部分。

AWS::EC2::SecurityGroup不是支持自定义名称的资源之一。至于原因,大概是因为这个CloudFormation资源是早期的实现,是在服务支持自定义名称之前创建的。

如果有足够多的用户要求他们这样做,AWS最终可能会返回并在某些时候使用自定义名称支持更新其现有的所有CloudFormation资源。如果这是您的用例的重要/关键功能,我建议您与他们的产品/支持团队联系,以帮助他们提高优先级。

答案 2 :(得分:0)

大多数资源的名称只是带有键名称的特殊标记的类型,要编辑此字段,只需将标记添加到模板中即可。

  mySecurityGroup:
    Type: 'AWS::EC2::SecurityGroup'
    Properties:
      VpcId: !Ref myVPC
      GroupDescription: Security Group 
      SecurityGroupIngress:
        - IpProtocol: tcp
          FromPort: 22
          ToPort: 22
          CidrIp: 0.0.0.0/0
      Tags:
        - Key: Name
          Value: mySecurityGroup