Create a Security Group
Last Updated:2020-10-22
This API is used to create the security group and the security group rules.
- The rules in the same security group take the remark, protocol, direction, portRange, sourceIp|destIp,sourceGroupId|destGroupId as the unique indexes. In case of any repeated records, a 409 error occurs.
- Value(tcp|udp|icmp)of protocol, which is null, indicating all.
Request Structure
POST /v{version}/securityGroup?clientToken={clientToken} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string
Request Header Field
There are no other special header fields except the public header field.
Request Parameters
Parameter Name | Type | Required? | Parameter Position | Description | |
---|---|---|---|---|---|
version | String | Yes | URL parameter | API version number | |
clientToken | String | Yes | Query parameters | Idempotent Token, which is an ASCII string with the length no more than 64 bits. See Idempotency of ClientToken for details. | |
name | String | Yes | RequestBody parameter | Name of security group created, which supports uppercase and lowercase letters, numbers, Chinese, -, \,_ and /. Special characters with length 1-65, it must begin with the letter | |
vpcId | String | No | RequestBody parameter | vpcId of security group. | |
desc | String | No | RequestBody parameter | Description of security group created | |
rules | List<SecurityGroupRuleModel> | Yes | RequestBody parameter | List of security group rules bound during creation of security group | |
tags | List<Tag> | No | RequestBody parameter | List of tags bound during creation of security group |
Return Header Field
There are no other special header fields except the common header field.
Return Parameter
Parameter Name | Type | Description |
---|---|---|
securityGroupId | String | Security group ID created |
Error Code
Error Code | Error Description | HTTP Status Code | Explanations |
---|---|---|---|
SecurityGroup.RuleRemarkTooLong | Security group description is too long. | 400 | The remarks field of security group rules exceeds the limit. |
BadRequest | protocol is invalid. | 400 | The protocol type is incorrect. |
SecurityGroup.RulePortOrderInvalid | The order of security group rule port is incorrect. | 400 | The order of security group rule port is incorrect. |
SecurityGroup.RulePortRangeInvalid | The value of security group rule port is exceeded. | 400 | The value of security group rule port exceeds the limit. |
SecurityGroup.RulePortInvalid | The value of security group rule port must be number. | 400 | The security group rule port is not number. |
SecurityGroup.RuleCIDRAddressError | Security group rule ip(cidr) address is incorrect. | 400 | The security group rule source (destination) address is incorrect. |
SecurityGroup.RuleDirectionError | Security group rule direction is incorrect. | 400 | The security group rule direction is incorrect. |
SecurityGroup.RuleNumberExceededLimit | Security groups that contain rule number exceed limit. | 413 | The number of rules in security group exceeds the limit. |
SecurityGroup.RuleDuplicated | Security group rule is duplicated. | 409 | The security group rule is duplicated. |
Request Instance
POST /v2/securityGroup?clientToken=be31b98c-5e41-4838-9830-9be700de5a20 HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
{
"name": "test-security-group",
"desc": "create a security group for api doc",
"vpcId": "vpc-uxjret8rnv",
"rules": [
{
"remark": "Remark",
"protocol": "tcp",
"portRange": "1-65535",
"direction": "ingress",
"sourceIp": "",
"sourceGroupId": ""
},
{
"remark": "Entire Protocol",
"protocol": "",
"portRange": "",
"direction": "egress",
"destIp": "",
"destGroupId": ""
}
]
}
Return Instance
HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS
{
"securityGroupId": "g-nky7qeom"
}