ALIYUN::ECS::SecurityGroup類型用於建立安全性群組。
文法
{
"Type": "ALIYUN::ECS::SecurityGroup",
"Properties": {
"VpcId": String,
"Description": String,
"SecurityGroupName": String,
"Tags": List,
"SecurityGroupEgress": List,
"SecurityGroupIngress": List,
"ResourceGroupId": String,
"SecurityGroupType": String
}
}屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
ResourceGroupId | String | 否 | 是 | 安全性群組所在的資源群組ID。 | 無 |
VpcId | String | 否 | 否 | 專用網路ID。 | 無 |
Description | String | 否 | 否 | 安全性群組描述資訊。 | 長度為2~256個字元。 |
Tags | List | 否 | 是 | 安全性群組的標籤。 | 最多支援20個標籤。 更多資訊,請參見Tags屬性。 |
SecurityGroupName | String | 否 | 否 | 安全性群組名稱。 | 不填則為空白,預設值為空白。
|
SecurityGroupEgress | List | 否 | 是 | 安全性群組出方向的訪問規則。 | 更多資訊,請參見SecurityGroupEgress屬性。 |
SecurityGroupIngress | List | 否 | 是 | 安全性群組入方向的訪問規則。 | 更多資訊,請參見SecurityGroupIngress屬性。 |
SecurityGroupType | String | 否 | 否 | 安全性群組的類型。 | 取值:
|
Tags文法
"Tags": [
{
"Value" : String,
"Key" : String
}
]Tags屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Key | String | 是 | 否 | 標籤鍵。 | 長度為1~128個字元,不能以 |
Value | String | 否 | 否 | 標籤值。 | 長度為0~128個字元,不能以 |
SecurityGroupEgress文法
"SecurityGroupEgress": [
{
"Description": String,
"PortRange": String,
"NicType": String,
"Priority": Integer,
"DestGroupId": String,
"DestCidrIp": String,
"Policy": String,
"IpProtocol": String,
"DestGroupOwnerId": String,
"Ipv6DestCidrIp": String,
"DestPrefixListId": String,
"SourcePortRange": String,
"Ipv6SourceCidrIp": String,
"SourceCidrIp": String,
"DestGroupOwnerAccount": String
}
]SecurityGroupEgress屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Description | String | 否 | 是 | 安全性群組規則的描述資訊。 | 長度為1~512個字元。 |
DestGroupOwnerId | String | 否 | 否 | 跨帳號設定安全性群組規則時,目的端安全性群組所屬的阿里雲帳號ID。 | 如果未設定DestGroupOwnerId,則認為您設定了其它安全性群組的存取權限。如果您已經設定參數DestCidrIp,則參數DestGroupOwnerId無效。 |
IpProtocol | String | 是 | 否 | IP協議。 | 取值:
|
PortRange | String | 是 | 否 | IP協議相關的連接埠號碼範圍。 | 目的端安全性群組開放的傳輸層協議相關的連接埠範圍。取值:
|
NicType | String | 否 | 否 | 網路類型。 | 取值:
Virtual Private Cloud 型別安全組規則無需設定網卡類型,預設為 intranet,只能為 intranet。 設定安全性群組之間互相訪問時,即僅指定了 DestGroupId 參數時,只能為 intranet。 預設值:internet。 |
DestPrefixListId | String | 否 | 否 | 需要設定出方向存取權限的目的端首碼列表ID。 | 您可以調用雲端服務ECS的DescribePrefixLists介面查詢可以使用的首碼列表ID。 安全性群組的網路類型為傳統網路時,不支援設定首碼列表。 當您指定了DestCidrIp、Ipv6DestCidrIp或DestGroupId參數中的任意一個時,將忽略該參數。 |
Priority | Integer | 否 | 否 | 授權策略優先順序。 | 取值範圍:1~100。 預設值:1。 |
DestGroupId | String | 否 | 否 | 同一地區內的目標安全性群組ID。 | DestGroupId或DestCidrIp參數必須指定一項。
|
DestCidrIp | String | 否 | 否 | 目標IP位址範圍。 | 必須採用CIDR格式來指定IP位址範圍。 預設值: 0.0.0.0/0(表示不受限制)。 其它支援的格式,例如 10.159.XX.XX/12。 最多10個IP地址或位址區段,用半形逗號(,)隔開。 說明 僅支援IPv4。 |
Policy | String | 否 | 否 | 授權策略。 | 取值:
|
Ipv6DestCidrIp | String | 否 | 否 | 目標地址IPv6 CIDR位址區段。 | 支援在CIDR格式和IPv6格式的IP位址範圍。僅支援專用網路類型的IP地址。 |
SourcePortRange | String | 否 | 否 | 安全性群組開放的傳輸層協議相關的源端,連接埠範圍。 | 取值:
用於支援五元組規則,請參見安全性群組五元組規則。 |
Ipv6SourceCidrIp | String | 否 | 否 | 源端 IPv6 CIDR 位址區段。 | 支援CIDR格式和IPv6格式的IP位址範圍。 用於支援五元組規則,請參見安全性群組五元組規則。 說明 僅在支援IPv6的VPC類型ECS執行個體上有效,且該參數與 |
SourceCidrIp | String | 否 | 否 | 源端 IPv4 CIDR 位址區段。 | 支援CIDR格式和IPv4格式的IP位址範圍。 用於支援五元組規則,請參見安全性群組五元組規則。 |
DestGroupOwnerAccount | String | 否 | 否 | 目的端安全性群組所屬的阿里雲賬戶。 |
|
SecurityGroupIngress文法
"SecurityGroupIngress": [
{
"SourceGroupOwnerId": String,
"Description": String,
"PortRange": String,
"NicType": String,
"Ipv6SourceCidrIp": String,
"Priority": Integer,
"SourceGroupId": String,
"Policy": String,
"IpProtocol": String,
"SourcePortRange": String,
"SourceCidrIp": String,
"SourcePrefixListId": String,
"Ipv6DestCidrIp": String,
"SourceGroupOwnerAccount": String,
"DestCidrIp": String
}
]SecurityGroupIngress屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
SourceGroupOwnerId | String | 否 | 否 | 源安全性群組所屬的阿里雲帳號ID。 | 無 |
Description | String | 否 | 是 | 安全性群組規則的描述資訊。 | 長度為1~512個字元。 |
SourcePrefixListId | String | 否 | 否 | 需要設定入方向存取權限的源端首碼列表ID。 | 您可以調用雲端服務ECS的DescribePrefixLists查詢可以使用的首碼列表ID。 安全性群組的網路類型為傳統網路時,不支援設定首碼列表。 當您指定了SourceCidrIp、Ipv6DestCidrIp或DestGroupId參數中的任意一個時,將忽略該參數。 |
IpProtocol | String | 是 | 否 | IP協議。 | 取值:
|
PortRange | String | 是 | 否 | IP協議相關的連接埠範圍。 | 目的端安全性群組開放的傳輸層協議相關的連接埠範圍。取值:
|
SourceGroupId | String | 否 | 否 | 同一地區內的源安全性群組ID。 | SourceGroupId或者SourceCidrIp參數必須指定一項。 如果兩項都指定,則預設對SourceCidrIp授權。 如果指定了該參數,且沒有指定SourceCidrIp,則NicType只能選擇intranet。 |
NicType | String | 否 | 否 | 網路類型。 | 取值:
|
Priority | Integer | 否 | 否 | 授權策略優先順序。 | 取值範圍:1~100。 預設值:1。 |
SourceCidrIp | String | 否 | 否 | 源IP位址範圍。 | 必須採用CIDR格式來指定IP位址範圍。 預設值:0.0.0.0/0(表示不受限制)。 其它支援的格式,例如10.159.XX.XX/12。 最多10個IP地址或位址區段,用半形逗號(,)隔開。 說明 僅支援IPV4。 |
Policy | String | 否 | 否 | 授權策略。 | 取值:
|
SourcePortRange | String | 否 | 否 | 源端安全性群組開放的傳輸層協議相關的連接埠範圍。 | 取值:
|
Ipv6SourceCidrIp | String | 否 | 否 | 源IPv6 CIDR位址區段。 | 僅支援專用網路類型的IP地址。支援在CIDR格式和IPv6格式的IP位址範圍。 |
Ipv6DestCidrIp | String | 否 | 否 | 目的端IPv6 CIDR地址塊。 | 支援CIDR格式和IPv6格式的IP位址範圍。 說明 僅在支援IPv6的VPC類型ECS執行個體上有效,且該參數與 |
SourceGroupOwnerAccount | String | 否 | 否 | 源端安全性群組所屬的阿里雲賬戶。 |
|
DestCidrIp | String | 否 | 否 | 目的端IPv4 CIDR位址區段。 | 支援CIDR格式和IPv4格式的IP位址範圍。 用於支援五元組規則,請參見安全性群組五元組規則。 |
傳回值
Fn::GetAtt
SecurityGroupId:安全性群組ID。
SecurityGroupName:安全性群組名稱。
樣本
情境 1 :在已有VPC的情境下建立普通安全性群組。
ROSTemplateFormatVersion: '2015-09-01'
Resources:
SecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
SecurityGroupIngress:
- PortRange: 22/22
SourceCidrIp: 0.0.0.0/0
IpProtocol: tcp
- PortRange: 80/80
SourceCidrIp: 0.0.0.0/0
IpProtocol: tcp
SecurityGroupType: normal
VpcId:
Ref: VpcId
SecurityGroupEgress:
- PortRange: 443/443
DestCidrIp: 0.0.0.0/0
IpProtocol: tcp
SecurityGroupName: TestSecurityGroupName
Parameters:
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Label:
zh-cn: 現有VPC的執行個體ID
en: Existing VPC Instance ID
Outputs:
SecurityGroupId:
Description: generated security group id for security group.
Value:
Fn::GetAtt:
- SecurityGroup
- SecurityGroupId
SecurityGroupName:
Description: The name of security group.
Value:
Fn::GetAtt:
- SecurityGroup
- SecurityGroupName
{
"ROSTemplateFormatVersion": "2015-09-01",
"Resources": {
"SecurityGroup": {
"Type": "ALIYUN::ECS::SecurityGroup",
"Properties": {
"SecurityGroupIngress": [
{
"PortRange": "22/22",
"SourceCidrIp": "0.0.0.0/0",
"IpProtocol": "tcp"
},
{
"PortRange": "80/80",
"SourceCidrIp": "0.0.0.0/0",
"IpProtocol": "tcp"
}
],
"SecurityGroupType": "normal",
"VpcId": {
"Ref": "VpcId"
},
"SecurityGroupEgress": [
{
"PortRange": "443/443",
"DestCidrIp": "0.0.0.0/0",
"IpProtocol": "tcp"
}
],
"SecurityGroupName": "TestSecurityGroupName"
}
}
},
"Parameters": {
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Label": {
"zh-cn": "現有VPC的執行個體ID",
"en": "Existing VPC Instance ID"
}
}
},
"Outputs": {
"SecurityGroupId": {
"Description": "generated security group id for security group.",
"Value": {
"Fn::GetAtt": [
"SecurityGroup",
"SecurityGroupId"
]
}
},
"SecurityGroupName": {
"Description": "The name of security group.",
"Value": {
"Fn::GetAtt": [
"SecurityGroup",
"SecurityGroupName"
]
}
}
}
}
情境 2 :在已有VPC的情境下建立企業安全性群組。
ROSTemplateFormatVersion: '2015-09-01'
Resources:
SecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
SecurityGroupIngress:
- PortRange: 22/22
SourceCidrIp: 0.0.0.0/0
IpProtocol: tcp
- PortRange: 80/80
SourceCidrIp: 0.0.0.0/0
IpProtocol: tcp
SecurityGroupType: enterprise
VpcId:
Ref: VpcId
SecurityGroupEgress:
- PortRange: 443/443
DestCidrIp: 0.0.0.0/0
IpProtocol: tcp
SecurityGroupName: TestSecurityGroupName
Parameters:
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Label:
zh-cn: 現有VPC的執行個體ID
en: Existing VPC Instance ID
Outputs:
SecurityGroupId:
Description: generated security group id for security group.
Value:
Fn::GetAtt:
- SecurityGroup
- SecurityGroupId
SecurityGroupName:
Description: The name of security group.
Value:
Fn::GetAtt:
- SecurityGroup
- SecurityGroupName
{
"ROSTemplateFormatVersion": "2015-09-01",
"Resources": {
"SecurityGroup": {
"Type": "ALIYUN::ECS::SecurityGroup",
"Properties": {
"SecurityGroupIngress": [
{
"PortRange": "22/22",
"SourceCidrIp": "0.0.0.0/0",
"IpProtocol": "tcp"
},
{
"PortRange": "80/80",
"SourceCidrIp": "0.0.0.0/0",
"IpProtocol": "tcp"
}
],
"SecurityGroupType": "enterprise",
"VpcId": {
"Ref": "VpcId"
},
"SecurityGroupEgress": [
{
"PortRange": "443/443",
"DestCidrIp": "0.0.0.0/0",
"IpProtocol": "tcp"
}
],
"SecurityGroupName": "TestSecurityGroupName"
}
}
},
"Parameters": {
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Label": {
"zh-cn": "現有VPC的執行個體ID",
"en": "Existing VPC Instance ID"
}
}
},
"Outputs": {
"SecurityGroupId": {
"Description": "generated security group id for security group.",
"Value": {
"Fn::GetAtt": [
"SecurityGroup",
"SecurityGroupId"
]
}
},
"SecurityGroupName": {
"Description": "The name of security group.",
"Value": {
"Fn::GetAtt": [
"SecurityGroup",
"SecurityGroupName"
]
}
}
}
}情境 3 :建立ECS執行個體、並配置安全性群組開放入方向9966連接埠。
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 建立ECS執行個體、並配置安全性群組開放入方向9966連接埠。
en: Create an ECS instance and configure the security group to open inbound port 9966.
Parameters:
ZoneId:
Type: String
Label:
en: Availability Zone
zh-cn: 可用性區域ID
AssociationProperty: ALIYUN::ECS::Instance:ZoneId
InstanceType:
Type: String
Label:
en: Instance Type
zh-cn: 執行個體類型
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: ${ZoneId}
SystemDiskCategory:
Type: String
Label:
en: System Disk Type
zh-cn: 系統硬碟類型
AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
AssociationPropertyMetadata:
LocaleKey: DiskCategory
ZoneId: ${ZoneId}
InstanceType: ${InstanceType}
AutoSelectFirst: true
AutoChangeType: false
Default: cloud_essd
InstancePassword:
Type: String
NoEcho: true
Label:
en: Instance Password
zh-cn: 執行個體密碼
Description:
en: Server login password, Length 8-30, must contain three(Capital letters, lowercase letters, numbers, ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ Special symbol in).
zh-cn: 伺服器登入密碼,長度8-30,必須包含三項(大寫字母、小寫字母、數字、 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ 中的特殊符號)。
ConstraintDescription:
en: Length 8-30, must contain three(Capital letters, lowercase letters, numbers, ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ Special symbol in).
zh-cn: 長度8-30,必須包含三項(大寫字母、小寫字母、數字、 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ 中的特殊符號)。
AssociationPropertyMetadata:
Visible:
Condition:
Fn::Equals:
- ${SelectInstance}
- false
Default: Null
AssociationProperty: ALIYUN::ECS::Instance::Password
Resources:
Vpc:
Type: ALIYUN::ECS::VPC
Properties:
CidrBlock: 192.168.0.0/16
VSwitch:
Type: ALIYUN::ECS::VSwitch
Properties:
ZoneId:
Ref: ZoneId
VpcId:
Ref: Vpc
CidrBlock: 192.168.0.0/24
SecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
VpcId:
Ref: Vpc
SecurityGroupIngress_9966:
Type: ALIYUN::ECS::SecurityGroupIngress
Properties:
SecurityGroupId:
Ref: SecurityGroup
SourceCidrIp: 0.0.0.0/0
IpProtocol: tcp
NicType: intranet
PortRange: 9966/9966
InstanceGroup:
Type: ALIYUN::ECS::InstanceGroup
Properties:
VpcId:
Ref: Vpc
VSwitchId:
Ref: VSwitch
SecurityGroupId:
Ref: SecurityGroup
ImageId: ubuntu_22_04
InstanceName: ChatTTS
InstanceType:
Ref: InstanceType
SystemDiskCategory:
Ref: SystemDiskCategory
Password:
Ref: InstancePassword
IoOptimized: optimized
MaxAmount: 1
Outputs: {}
Metadata: {}
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "建立ECS執行個體、並配置安全性群組開放入方向9966連接埠。",
"en": "Create an ECS instance and configure the security group to open inbound port 9966."
},
"Parameters": {
"ZoneId": {
"Type": "String",
"Label": {
"en": "Availability Zone",
"zh-cn": "可用性區域ID"
},
"AssociationProperty": "ALIYUN::ECS::Instance:ZoneId"
},
"InstanceType": {
"Type": "String",
"Label": {
"en": "Instance Type",
"zh-cn": "執行個體類型"
},
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "${ZoneId}"
}
},
"SystemDiskCategory": {
"Type": "String",
"Label": {
"en": "System Disk Type",
"zh-cn": "系統硬碟類型"
},
"AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
"AssociationPropertyMetadata": {
"LocaleKey": "DiskCategory",
"ZoneId": "${ZoneId}",
"InstanceType": "${InstanceType}",
"AutoSelectFirst": true,
"AutoChangeType": false
},
"Default": "cloud_essd"
},
"InstancePassword": {
"Type": "String",
"NoEcho": true,
"Label": {
"en": "Instance Password",
"zh-cn": "執行個體密碼"
},
"Description": {
"en": "Server login password, Length 8-30, must contain three(Capital letters, lowercase letters, numbers, ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ Special symbol in).",
"zh-cn": "伺服器登入密碼,長度8-30,必須包含三項(大寫字母、小寫字母、數字、 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ 中的特殊符號)。"
},
"ConstraintDescription": {
"en": "Length 8-30, must contain three(Capital letters, lowercase letters, numbers, ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ Special symbol in).",
"zh-cn": "長度8-30,必須包含三項(大寫字母、小寫字母、數字、 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ 中的特殊符號)。"
},
"AssociationPropertyMetadata": {
"Visible": {
"Condition": {
"Fn::Equals": [
"${SelectInstance}",
false
]
}
}
},
"Default": null,
"AssociationProperty": "ALIYUN::ECS::Instance::Password"
}
},
"Resources": {
"Vpc": {
"Type": "ALIYUN::ECS::VPC",
"Properties": {
"CidrBlock": "192.168.0.0/16"
}
},
"VSwitch": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"ZoneId": {
"Ref": "ZoneId"
},
"VpcId": {
"Ref": "Vpc"
},
"CidrBlock": "192.168.0.0/24"
}
},
"SecurityGroup": {
"Type": "ALIYUN::ECS::SecurityGroup",
"Properties": {
"VpcId": {
"Ref": "Vpc"
}
}
},
"SecurityGroupIngress_9966": {
"Type": "ALIYUN::ECS::SecurityGroupIngress",
"Properties": {
"SecurityGroupId": {
"Ref": "SecurityGroup"
},
"SourceCidrIp": "0.0.0.0/0",
"IpProtocol": "tcp",
"NicType": "intranet",
"PortRange": "9966/9966"
}
},
"InstanceGroup": {
"Type": "ALIYUN::ECS::InstanceGroup",
"Properties": {
"VpcId": {
"Ref": "Vpc"
},
"VSwitchId": {
"Ref": "VSwitch"
},
"SecurityGroupId": {
"Ref": "SecurityGroup"
},
"ImageId": "ubuntu_22_04",
"InstanceName": "ChatTTS",
"InstanceType": {
"Ref": "InstanceType"
},
"SystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"Password": {
"Ref": "InstancePassword"
},
"IoOptimized": "optimized",
"MaxAmount": 1
}
}
},
"Outputs": {
},
"Metadata": {
}
}更多樣本,請參考包含此資源的公用模板。