blob: bd724c9e6fd0d23876d1e9b94c98b8b762cabe33 [file] [log] [blame]
Jian Li1c10cf22021-03-05 01:32:04 +09001{
2 "type": "object",
3 "description": "A security_group object.",
4 "required": [
5 "securityGroup"
6 ],
7 "properties": {
8 "securityGroup": {
9 "type": "object",
10 "required": [
11 "id",
12 "description",
13 "name",
14 "securityGroupRules"
15 ],
16 "properties": {
17 "id": {
18 "type": "string",
19 "example": "2076db17-a522-4506-91de-c6dd8e837028",
20 "description": "The ID of the security group."
21 },
22 "description": {
23 "type": "string",
24 "example": "security group for webservers",
25 "description": "A human-readable description for the resource."
26 },
27 "name": {
28 "type": "string",
29 "example": "new-webservers",
30 "description": "Human-readable name of the resource."
31 },
32 "securityGroupRules": {
33 "type": "array",
34 "description": "A list of security_group_rule objects.",
35 "items": {
36 "type": "object",
37 "description": "A security group rule object.",
38 "required": [
39 "id",
40 "securityGroupId",
41 "direction",
42 "etherType",
43 "portRangeMax",
44 "portRangeMin",
45 "protocol",
46 "remoteIpPrefix",
47 "remoteGroupId"
48 ],
49 "properties": {
50 "id": {
51 "type": "string",
52 "example": "2bc0accf-312e-429a-956e-e4407625eb62",
53 "description": "The ID of this security group rule."
54 },
55 "securityGroupId": {
56 "type": "string",
57 "example": "a7734e61-b545-452d-a3cd-0189cbd9747a",
58 "description": "The security group ID to associate with this security group rule."
59 },
60 "direction": {
61 "type": "string",
62 "example": "ingress",
63 "description": "Ingress or egress, which is the direction in which the metering rule is applied."
64 },
65 "etherType": {
66 "type": "string",
67 "example": "IPv4",
68 "description": "Must be IPv4 or IPv6, and addresses represented in CIDR must match the ingress or egress rules."
69 },
70 "portRangeMax": {
71 "type": "integer",
72 "format": "int32",
73 "example": 80,
74 "description": "The maximum port number in the range that is matched by the security group rule."
75 },
76 "portRangeMin": {
77 "type": "integer",
78 "format": "int32",
79 "example": 80,
80 "description": "The minimum port number in the range that is matched by the security group rule."
81 },
82 "protocol": {
83 "type": "string",
84 "example": "tcp",
85 "description": "The IP protocol can be represented by a string, an integer, or null."
86 },
87 "remoteIpPrefix": {
88 "type": "string",
89 "example": "",
90 "description": "The remote IP prefix to associate with this metering rule packet."
91 },
92 "remoteGroupId": {
93 "type": "string",
94 "example": "85cc3048-abc3-43cc-89b3-377341426ac5",
95 "description": "The remote group UUID to associate with this security group rule."
96 }
97 }
98 }
99 }
100 }
101 }
102 }
103}