【发布时间】:2015-11-11 23:16:11
【问题描述】:
我想创建一个 CloudFormation 模板,该模板创建一个安全组资源,允许从其他安全组的变量列表进入。该模板将采用List<AWS::EC2::SecurityGroup::Id> 类型的参数。在本示例中,我将此参数命名为 SourceSecurityGroupIds。然后,它将使用以下内容创建安全组资源:
{
"LogServerSecurityGroup": {
"Type": "AWS::EC2::SecurityGroup",
"Properties": {
"GroupDescription": "XYZ security group",
"VpcId": "vpc-abcxyz",
"SecurityGroupIngress": [
{
"IpProtocol": "tcp",
"FromPort": 1234,
"ToPort": 1234,
"SourceSecurityGroupId": { "Ref": "SourceSecurityGroupIds" }
}
]
}
}
}
当然,SecurityGroupIngress 的 SourceSecurityGroupId 属性不带列表。有没有办法让这个工作?
更新 - 2019 年 2 月 27 日
回想起来,正确的做法是创建一个LogSourceSecurityGroup,并只允许来自该安全组的进入。然后,将该安全组添加到任何应该能够与日志服务器通信的 EC2 实例等。
【问题讨论】:
标签: amazon-web-services amazon-ec2 amazon-cloudformation