AWS::RDS::DBSecurityGroup - AWS CloudFormation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS::RDS::DBSecurityGroup

AWS::RDS::DBSecurityGroup 资源创建或更新 Amazon RDS 数据库安全组。

注意

数据库安全组是 EC2-Classic 平台的一部分,因此并非在所有区域中都支持数据库安全组。建议在这些区域中改用 AWS::EC2::SecurityGroup 资源。要确定您所使用的平台,请参阅确定您使用的是 EC2-VPC 还是 EC2-Classic 平台。有关 AWS::EC2::SecurityGroup 的更多信息,请参阅 EC2 安全组的文档。

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

JSON

{ "Type" : "AWS::RDS::DBSecurityGroup", "Properties" : { "DBSecurityGroupIngress" : [ Ingress, ... ], "EC2VpcId" : String, "GroupDescription" : String, "Tags" : [ Tag, ... ] } }

YAML

Type: AWS::RDS::DBSecurityGroup Properties: DBSecurityGroupIngress: - Ingress EC2VpcId: String GroupDescription: String Tags: - Tag

属性

DBSecurityGroupIngress

要应用于数据库安全组的入口规则。

必需:是

类型入口的列表

Update requires: No interruption

EC2VpcId

Amazon VPC 的标识符。此属性表示此数据库安全组所属的 VPC。

重要

EC2VpcId 属性用于与较旧区域向后兼容,建议不再将其用于为 RDS 数据库实例提供安全信息。

必需:否

类型:字符串

Update requires: Replacement

GroupDescription

提供数据库安全组的描述。

必需:是

类型:字符串

Update requires: Replacement

Tags

要分配给数据库安全组的标签。

必需:否

类型Tag 的列表

Update requires: No interruption

返回值

Ref

在将此资源的逻辑 ID 传递给内部 Ref 函数时,Ref 返回 数据库安全组的名称。

For more information about using the Ref function, see Ref.

示例

单一 VPC 安全组

以下示例创建使用 EC2SecurityGroupName 引用的单个 VPC 安全组。

JSON

{ "Resources": { "DBinstance": { "Type": "AWS::RDS::DBInstance", "Properties": { "DBSecurityGroups": [ { "Ref": "DbSecurityByEC2SecurityGroup" } ], "AllocatedStorage": "5", "DBInstanceClass": "db.t3.small", "Engine": "MySQL", "MasterUsername": "YourName", "MasterUserPassword": "YourPassword" }, "DeletionPolicy": "Snapshot" }, "DbSecurityByEC2SecurityGroup": { "Type": "AWS::RDS::DBSecurityGroup", "Properties": { "GroupDescription": "Ingress for Amazon EC2 security group", "DBSecurityGroupIngress": [ { "EC2SecurityGroupId": "sg-b0ff1111", "EC2SecurityGroupOwnerId": "111122223333" }, { "EC2SecurityGroupId": "sg-ffd722222", "EC2SecurityGroupOwnerId": "111122223333" } ] } } } }

YAML

Resources: DBinstance: Type: AWS::RDS::DBInstance Properties: DBSecurityGroups: - Ref: "DbSecurityByEC2SecurityGroup" AllocatedStorage: "5" DBInstanceClass: "db.t3.small" Engine: "MySQL" MasterUsername: "YourName" MasterUserPassword: "YourPassword" DeletionPolicy: "Snapshot" DbSecurityByEC2SecurityGroup: Type: AWS::RDS::DBSecurityGroup Properties: GroupDescription: "Ingress for Amazon EC2 security group" DBSecurityGroupIngress: - EC2SecurityGroupId: "sg-b0ff1111" EC2SecurityGroupOwnerId: "111122223333" - EC2SecurityGroupId: "sg-ffd722222" EC2SecurityGroupOwnerId: "111122223333"

多 VPC 安全组

以下示例创建或更新多个 VPC 安全组。

JSON

"DBSecurityGroup": { "Type": "AWS::RDS::DBSecurityGroup", "Properties": { "EC2VpcId" : { "Ref" : "VpcId" }, "DBSecurityGroupIngress": [ {"EC2SecurityGroupName": { "Ref": "WebServerSecurityGroup"}} ], "GroupDescription": "Frontend Access" } }

YAML

DBSecurityGroup: Type: AWS::RDS::DBSecurityGroup Properties: EC2VpcId: Ref: "VpcId" DBSecurityGroupIngress: - EC2SecurityGroupName: Ref: "WebServerSecurityGroup" GroupDescription: "Frontend Access"