VPC 中的 AWS Cloudformation RDS 安全组
AWS Cloud Formation RDS security group in VPC
我正在尝试将入口规则添加到 RDS 实例的安全组,但是当我添加它们时它显示 The security group 'sg-14820a71' does not exist in default VPC 'vpc-527a8037'
。
我已经明确指定了我想要安全组所在的 VPC,它不应该使用默认值。关于如何使其使用正确的 VPC 的任何想法?
"Resources": {
"DbVpcSecurityGroup": {
"DependsOn": ["VPC", "BeanstalkSecurityGroup"],
"Type": "AWS::EC2::SecurityGroup",
"Properties": {
"GroupDescription": "Security group for RDS DB Instance.",
"VpcId": {
"Ref": "VPC"
},
"SecurityGroupIngress": [{
"IpProtocol": "tcp",
"FromPort": 3306,
"ToPort": 3306,
"SourceSecurityGroupName": {
"Ref": "BeanstalkSecurityGroup"
}
}]
}
}
}
它在没有入口规则的情况下工作正常(在 GUI 中手动创建):
"Resources": {
"DbVpcSecurityGroup": {
"DependsOn": ["VPC", "BeanstalkSecurityGroup"],
"Type": "AWS::EC2::SecurityGroup",
"Properties": {
"GroupDescription": "Security group for RDS DB Instance.",
"VpcId": {
"Ref": "VPC"
},
}
}
}
这是 beantalk 安全组:
"BeanstalkSecurityGroup": {
"DependsOn": ["VPC"],
"Type": "AWS::EC2::SecurityGroup",
"Properties": {
"GroupDescription": "Allow the Elastic Beanstalk instances to access the NAT device",
"VpcId": {
"Ref": "VPC"
},
}
}
在 VPC 中工作时,我们应该始终使用 Security Group ID
而不是 Security Group Name
.
因此在 CloudFormation 的这种情况下,使用 SourceSecurityGroupOwnerId
而不是 SourceSecurityGroupName
我正在尝试将入口规则添加到 RDS 实例的安全组,但是当我添加它们时它显示 The security group 'sg-14820a71' does not exist in default VPC 'vpc-527a8037'
。
我已经明确指定了我想要安全组所在的 VPC,它不应该使用默认值。关于如何使其使用正确的 VPC 的任何想法?
"Resources": {
"DbVpcSecurityGroup": {
"DependsOn": ["VPC", "BeanstalkSecurityGroup"],
"Type": "AWS::EC2::SecurityGroup",
"Properties": {
"GroupDescription": "Security group for RDS DB Instance.",
"VpcId": {
"Ref": "VPC"
},
"SecurityGroupIngress": [{
"IpProtocol": "tcp",
"FromPort": 3306,
"ToPort": 3306,
"SourceSecurityGroupName": {
"Ref": "BeanstalkSecurityGroup"
}
}]
}
}
}
它在没有入口规则的情况下工作正常(在 GUI 中手动创建):
"Resources": {
"DbVpcSecurityGroup": {
"DependsOn": ["VPC", "BeanstalkSecurityGroup"],
"Type": "AWS::EC2::SecurityGroup",
"Properties": {
"GroupDescription": "Security group for RDS DB Instance.",
"VpcId": {
"Ref": "VPC"
},
}
}
}
这是 beantalk 安全组:
"BeanstalkSecurityGroup": {
"DependsOn": ["VPC"],
"Type": "AWS::EC2::SecurityGroup",
"Properties": {
"GroupDescription": "Allow the Elastic Beanstalk instances to access the NAT device",
"VpcId": {
"Ref": "VPC"
},
}
}
在 VPC 中工作时,我们应该始终使用 Security Group ID
而不是 Security Group Name
.
因此在 CloudFormation 的这种情况下,使用 SourceSecurityGroupOwnerId
而不是 SourceSecurityGroupName