Virtual Private Cloud API, gRPC: SecurityGroupService.Create
Creates a security group in the specified folder and network.
gRPC request
rpc Create (CreateSecurityGroupRequest) returns (operation.Operation)
CreateSecurityGroupRequest
{
"folder_id": "string",
"name": "string",
"description": "string",
"labels": "map<string, string>",
"network_id": "string",
"rule_specs": [
{
"description": "string",
"labels": "map<string, string>",
"direction": "Direction",
"ports": {
"from_port": "int64",
"to_port": "int64"
},
// Includes only one of the fields `protocol_name`, `protocol_number`
"protocol_name": "string",
"protocol_number": "int64",
// end of the list of possible fields
// Includes only one of the fields `cidr_blocks`, `security_group_id`, `predefined_target`
"cidr_blocks": {
"v4_cidr_blocks": [
"string"
],
"v6_cidr_blocks": [
"string"
]
},
"security_group_id": "string",
"predefined_target": "string"
// end of the list of possible fields
}
]
}
Field |
Description |
folder_id |
string Required field. ID of the folder for this request to create a security group in. |
name |
string Name of the security group. |
description |
string Description of the security group. |
labels |
object (map<string, string>) Resource labels as |
network_id |
string Required field. ID of the Network to create security group for. |
rule_specs[] |
Security rules specifications. |
SecurityGroupRuleSpec
Field |
Description |
description |
string Description of the security rule. |
labels |
object (map<string, string>) Rule labels as |
direction |
enum Direction Required field. The direction of network traffic allowed by this rule.
|
ports |
The range of ports that allow traffic to pass through. Null value means any port. |
protocol_name |
string Protocol name. Includes only one of the fields Values from IANA protocol numbers |
protocol_number |
int64 Protocol number from IANA protocol numbers Includes only one of the fields Values from IANA protocol numbers |
cidr_blocks |
CIDR blocks to allow to recieve or send traffic. Includes only one of the fields |
security_group_id |
string ID of the security group to add rule to. Includes only one of the fields |
predefined_target |
string Predefined target. See security groups rules for more information. Includes only one of the fields |
PortRange
Field |
Description |
from_port |
int64 The lowest port in the range. |
to_port |
int64 The highest port in the range. |
CidrBlocks
Field |
Description |
v4_cidr_blocks[] |
string IPv4 CIDR blocks to allow traffic to. |
v6_cidr_blocks[] |
string IPv6 CIDR blocks to allow traffic to. |
operation.Operation
{
"id": "string",
"description": "string",
"created_at": "google.protobuf.Timestamp",
"created_by": "string",
"modified_at": "google.protobuf.Timestamp",
"done": "bool",
"metadata": {
"security_group_id": "string"
},
// Includes only one of the fields `error`, `response`
"error": "google.rpc.Status",
"response": {
"id": "string",
"folder_id": "string",
"created_at": "google.protobuf.Timestamp",
"name": "string",
"description": "string",
"labels": "map<string, string>",
"network_id": "string",
"status": "Status",
"rules": [
{
"id": "string",
"description": "string",
"labels": "map<string, string>",
"direction": "Direction",
"ports": {
"from_port": "int64",
"to_port": "int64"
},
"protocol_name": "string",
"protocol_number": "int64",
// Includes only one of the fields `cidr_blocks`, `security_group_id`, `predefined_target`
"cidr_blocks": {
"v4_cidr_blocks": [
"string"
],
"v6_cidr_blocks": [
"string"
]
},
"security_group_id": "string",
"predefined_target": "string"
// end of the list of possible fields
}
],
"default_for_network": "bool"
}
// end of the list of possible fields
}
An Operation resource. For more information, see Operation.
Field |
Description |
id |
string ID of the operation. |
description |
string Description of the operation. 0-256 characters long. |
created_at |
Creation timestamp. |
created_by |
string ID of the user or service account who initiated the operation. |
modified_at |
The time when the Operation resource was last modified. |
done |
bool If the value is |
metadata |
Service-specific metadata associated with the operation. |
error |
The error result of the operation in case of failure or cancellation. Includes only one of the fields The operation result. |
response |
The normal response of the operation in case of success. Includes only one of the fields The operation result. |
CreateSecurityGroupMetadata
Field |
Description |
security_group_id |
string ID of the security group that is being created. |
SecurityGroup
Field |
Description |
id |
string ID of the security group. |
folder_id |
string ID of the folder that the security group belongs to. |
created_at |
Creation timestamp in RFC3339 |
name |
string Name of the security group. |
description |
string Description of the security group. 0-256 characters long. |
labels |
object (map<string, string>) Resource labels as |
network_id |
string ID of the network that the security group belongs to. |
status |
enum Status Security group status.
|
rules[] |
List of the security group rules. |
default_for_network |
bool Flag that indicates that the security group is the default for the network. |
SecurityGroupRule
Field |
Description |
id |
string ID of the rule. |
description |
string Description of the rule. 0-256 characters long. |
labels |
object (map<string, string>) Resource labels as |
direction |
enum Direction Required field. The direction of network traffic allowed by this rule.
|
ports |
The range of ports that allow traffic to pass through. Null value means any. |
protocol_name |
string Protocol name. Null value means any protocol. |
protocol_number |
int64 Protocol number from IANA protocol numbers |
cidr_blocks |
CIDR blocks to allow to recieve or send traffic. Includes only one of the fields |
security_group_id |
string ID of the security group to add rule to. Includes only one of the fields |
predefined_target |
string Predefined target. See security groups rules for more information. Includes only one of the fields |
PortRange
Field |
Description |
from_port |
int64 The lowest port in the range. |
to_port |
int64 The highest port in the range. |
CidrBlocks
Field |
Description |
v4_cidr_blocks[] |
string IPv4 CIDR blocks to allow traffic to. |
v6_cidr_blocks[] |
string IPv6 CIDR blocks to allow traffic to. |