@robinmordasiewicz/f5xc-terraform-mcp 3.3.0 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/dist/docs/data-sources/bgp.md +2 -2
  2. package/dist/docs/data-sources/certificate.md +2 -2
  3. package/dist/docs/data-sources/discovery.md +2 -2
  4. package/dist/docs/data-sources/log_receiver.md +2 -2
  5. package/dist/docs/data-sources/network_policy.md +2 -2
  6. package/dist/docs/data-sources/site.md +2 -2
  7. package/dist/docs/data-sources/workload.md +2 -2
  8. package/dist/docs/resources/bgp.md +70 -4
  9. package/dist/docs/resources/certificate.md +4 -56
  10. package/dist/docs/resources/cloud_connect.md +2 -2
  11. package/dist/docs/resources/discovery.md +8 -259
  12. package/dist/docs/resources/log_receiver.md +44 -825
  13. package/dist/docs/resources/network_policy.md +217 -38
  14. package/dist/docs/resources/securemesh_site.md +1614 -253
  15. package/dist/docs/resources/site.md +1262 -257
  16. package/dist/docs/resources/workload.md +2951 -9
  17. package/dist/docs/specifications/api/CHANGELOG.md +4 -4
  18. package/dist/docs/specifications/api/README.md +1 -1
  19. package/dist/docs/specifications/api/domains/admin_console_and_ui.json +25 -25
  20. package/dist/docs/specifications/api/domains/ai_services.json +21 -21
  21. package/dist/docs/specifications/api/domains/api.json +173 -173
  22. package/dist/docs/specifications/api/domains/authentication.json +45 -45
  23. package/dist/docs/specifications/api/domains/bigip.json +94 -94
  24. package/dist/docs/specifications/api/domains/billing_and_usage.json +63 -63
  25. package/dist/docs/specifications/api/domains/blindfold.json +109 -109
  26. package/dist/docs/specifications/api/domains/bot_and_threat_defense.json +65 -65
  27. package/dist/docs/specifications/api/domains/cdn.json +177 -177
  28. package/dist/docs/specifications/api/domains/ce_management.json +76 -76
  29. package/dist/docs/specifications/api/domains/certificates.json +75 -75
  30. package/dist/docs/specifications/api/domains/cloud_infrastructure.json +112 -112
  31. package/dist/docs/specifications/api/domains/container_services.json +91 -91
  32. package/dist/docs/specifications/api/domains/data_and_privacy_security.json +66 -66
  33. package/dist/docs/specifications/api/domains/data_intelligence.json +62 -62
  34. package/dist/docs/specifications/api/domains/ddos.json +154 -154
  35. package/dist/docs/specifications/api/domains/dns.json +148 -148
  36. package/dist/docs/specifications/api/domains/managed_kubernetes.json +85 -85
  37. package/dist/docs/specifications/api/domains/marketplace.json +103 -103
  38. package/dist/docs/specifications/api/domains/network.json +230 -230
  39. package/dist/docs/specifications/api/domains/network_security.json +187 -187
  40. package/dist/docs/specifications/api/domains/nginx_one.json +62 -62
  41. package/dist/docs/specifications/api/domains/object_storage.json +12 -12
  42. package/dist/docs/specifications/api/domains/observability.json +102 -102
  43. package/dist/docs/specifications/api/domains/rate_limiting.json +52 -52
  44. package/dist/docs/specifications/api/domains/secops_and_incident_response.json +36 -36
  45. package/dist/docs/specifications/api/domains/service_mesh.json +119 -119
  46. package/dist/docs/specifications/api/domains/shape.json +313 -313
  47. package/dist/docs/specifications/api/domains/sites.json +349 -349
  48. package/dist/docs/specifications/api/domains/statistics.json +225 -225
  49. package/dist/docs/specifications/api/domains/support.json +108 -108
  50. package/dist/docs/specifications/api/domains/telemetry_and_insights.json +72 -72
  51. package/dist/docs/specifications/api/domains/tenant_and_identity.json +268 -268
  52. package/dist/docs/specifications/api/domains/threat_campaign.json +66 -66
  53. package/dist/docs/specifications/api/domains/users.json +66 -66
  54. package/dist/docs/specifications/api/domains/virtual.json +244 -244
  55. package/dist/docs/specifications/api/domains/vpm_and_node_management.json +1 -1
  56. package/dist/docs/specifications/api/domains/waf.json +139 -139
  57. package/dist/docs/specifications/api/index.json +12 -12
  58. package/dist/docs/specifications/api/openapi.json +2600 -2600
  59. package/dist/docs/specifications/api/openapi.yaml +2600 -2600
  60. package/package.json +1 -1
@@ -2,12 +2,12 @@
2
2
  page_title: "f5xc_network_policy Resource - terraform-provider-f5xc"
3
3
  subcategory: "Security"
4
4
  description: |-
5
- Manages network policy rule with configured parameters in specified namespace. in F5 Distributed Cloud.
5
+ Manages new network policy with configured parameters in specified namespace. in F5 Distributed Cloud.
6
6
  ---
7
7
 
8
8
  # f5xc_network_policy (Resource)
9
9
 
10
- Manages network policy rule with configured parameters in specified namespace. in F5 Distributed Cloud.
10
+ Manages new network policy with configured parameters in specified namespace. in F5 Distributed Cloud.
11
11
 
12
12
  ~> **Note** For more information about this resource, please refer to the [F5 XC API Documentation](https://docs.cloud.f5.com/docs/api/).
13
13
 
@@ -15,7 +15,7 @@ Manages network policy rule with configured parameters in specified namespace. i
15
15
 
16
16
  ```terraform
17
17
  # Network Policy Resource Example
18
- # Manages network policy rule with configured parameters in specified namespace. in F5 Distributed Cloud.
18
+ # Manages new network policy with configured parameters in specified namespace. in F5 Distributed Cloud.
19
19
 
20
20
  # Basic Network Policy configuration
21
21
  resource "f5xc_network_policy" "example" {
@@ -77,20 +77,9 @@ resource "f5xc_network_policy" "example" {
77
77
 
78
78
  ### Spec Argument Reference
79
79
 
80
- <a id="action"></a>&#x2022; [`action`](#action) - Optional String Defaults to `DENY`<br>Possible values are `DENY`, `ALLOW`<br>[Enum: DENY|ALLOW] Network Policy Rule Action. Network policy rule action configures the action to be taken on rule match Apply deny action on rule match Apply allow action on rule match
80
+ <a id="endpoint"></a>&#x2022; [`endpoint`](#endpoint) - Optional Block<br>Endpoint Choice. Shape of the endpoint choices for a view<br>See [Endpoint](#endpoint) below for details.
81
81
 
82
- <a id="advanced-action"></a>&#x2022; [`advanced_action`](#advanced-action) - Optional Block<br>Network Policy Rule Advanced Action. Network Policy Rule Advanced Action provides additional OPTIONS along with RuleAction and PBRRuleAction<br>See [Advanced Action](#advanced-action) below for details.
83
-
84
- -> **One of the following:**
85
- &#x2022; <a id="ip-prefix-set"></a>[`ip_prefix_set`](#ip-prefix-set) - Optional Block<br>IP Prefix Set Reference. A list of references to ip_prefix_set objects<br>See [IP Prefix Set](#ip-prefix-set) below for details.
86
- <br><br>&#x2022; <a id="prefix"></a>[`prefix`](#prefix) - Optional Block<br>IP Prefix List. List of IP Address prefixes. Prefix must contain both prefix and prefix-length The list can contain mix of both IPv4 and IPv6 prefixes<br>See [Prefix](#prefix) below for details.
87
- <br><br>&#x2022; <a id="prefix-selector"></a>[`prefix_selector`](#prefix-selector) - Optional Block<br>Label Selector. This type can be used to establish a 'selector reference' from one object(called selector) to a set of other objects(called selectees) based on the value of expresssions. A label selector is a label query over a set of resources. An empty label selector matches all objects. A null label selector matches no objects. Label selector is immutable. Expressions is a list of strings of label selection expression. Each string has ',' separated values which are 'AND' and all strings are logically 'OR'. BNF for expression string `<selector-syntax>` ::= `<requirement>` | `<requirement>` ',' `<selector-syntax>` `<requirement>` ::= [!] KEY [ `<set-based-restriction>` | `<exact-match-restriction>` ] `<set-based-restriction>` ::= '' | `<inclusion-exclusion>` `<value-set>` `<inclusion-exclusion>` ::= `<inclusion>` | `<exclusion>` `<exclusion>` ::= 'notin' `<inclusion>` ::= 'in' `<value-set>` ::= '(' `<values>` ')' `<values>` ::= VALUE | VALUE ',' `<values>` `<exact-match-restriction>` ::= ['='|'=='|'!='] VALUE<br>See [Prefix Selector](#prefix-selector) below for details.
88
-
89
- <a id="label-matcher"></a>&#x2022; [`label_matcher`](#label-matcher) - Optional Block<br>Label Matcher. A label matcher specifies a list of label keys whose values need to match for source/client and destination/server. Note that the actual label values are not specified and do not matter. This allows an ability to scope grouping by the label key name<br>See [Label Matcher](#label-matcher) below for details.
90
-
91
- <a id="ports"></a>&#x2022; [`ports`](#ports) - Optional List<br>List of Port Ranges. List of port ranges. Each range is a single port or a pair of start and end ports e.g. 8080-8192
92
-
93
- <a id="protocol"></a>&#x2022; [`protocol`](#protocol) - Optional String<br>Protocol. Protocol in IP packet to be used as match criteria Values are TCP, UDP, and ICMP
82
+ <a id="rules"></a>&#x2022; [`rules`](#rules) - Optional Block<br>Rule Choice. Shape of Rule Choice<br>See [Rules](#rules) below for details.
94
83
 
95
84
  <a id="timeouts"></a>&#x2022; [`timeouts`](#timeouts) - Optional Block<br>See [Timeouts](#timeouts) below for details.
96
85
 
@@ -102,49 +91,239 @@ In addition to all arguments above, the following attributes are exported:
102
91
 
103
92
  ---
104
93
 
105
- #### Advanced Action
94
+ #### Endpoint
95
+
96
+ An [`endpoint`](#endpoint) block supports the following:
97
+
98
+ <a id="endpoint-any"></a>&#x2022; [`any`](#endpoint-any) - Optional Block<br>Enable this option
99
+
100
+ <a id="endpoint-inside-endpoints"></a>&#x2022; [`inside_endpoints`](#endpoint-inside-endpoints) - Optional Block<br>Enable this option
101
+
102
+ <a id="endpoint-label-selector"></a>&#x2022; [`label_selector`](#endpoint-label-selector) - Optional Block<br>Label Selector. This type can be used to establish a 'selector reference' from one object(called selector) to a set of other objects(called selectees) based on the value of expresssions. A label selector is a label query over a set of resources. An empty label selector matches all objects. A null label selector matches no objects. Label selector is immutable. Expressions is a list of strings of label selection expression. Each string has ',' separated values which are 'AND' and all strings are logically 'OR'. BNF for expression string `<selector-syntax>` ::= `<requirement>` | `<requirement>` ',' `<selector-syntax>` `<requirement>` ::= [!] KEY [ `<set-based-restriction>` | `<exact-match-restriction>` ] `<set-based-restriction>` ::= '' | `<inclusion-exclusion>` `<value-set>` `<inclusion-exclusion>` ::= `<inclusion>` | `<exclusion>` `<exclusion>` ::= 'notin' `<inclusion>` ::= 'in' `<value-set>` ::= '(' `<values>` ')' `<values>` ::= VALUE | VALUE ',' `<values>` `<exact-match-restriction>` ::= ['='|'=='|'!='] VALUE<br>See [Label Selector](#endpoint-label-selector) below.
103
+
104
+ <a id="endpoint-outside-endpoints"></a>&#x2022; [`outside_endpoints`](#endpoint-outside-endpoints) - Optional Block<br>Enable this option
105
+
106
+ <a id="endpoint-prefix-list"></a>&#x2022; [`prefix_list`](#endpoint-prefix-list) - Optional Block<br>IPv4 Prefix List. List of IPv4 prefixes that represent an endpoint<br>See [Prefix List](#endpoint-prefix-list) below.
107
+
108
+ #### Endpoint Label Selector
109
+
110
+ A [`label_selector`](#endpoint-label-selector) block (within [`endpoint`](#endpoint)) supports the following:
111
+
112
+ <a id="endpoint-label-selector-expressions"></a>&#x2022; [`expressions`](#endpoint-label-selector-expressions) - Optional List<br>Selector Expression. Expressions contains the Kubernetes style label expression for selections
113
+
114
+ #### Endpoint Prefix List
115
+
116
+ A [`prefix_list`](#endpoint-prefix-list) block (within [`endpoint`](#endpoint)) supports the following:
117
+
118
+ <a id="endpoint-prefix-list-prefixes"></a>&#x2022; [`prefixes`](#endpoint-prefix-list-prefixes) - Optional List<br>IPv4 Prefix List. List of IPv4 prefixes that represent an endpoint
119
+
120
+ #### Rules
121
+
122
+ A [`rules`](#rules) block supports the following:
123
+
124
+ <a id="rules-egress-rules"></a>&#x2022; [`egress_rules`](#rules-egress-rules) - Optional Block<br>Egress Rules. Ordered list of rules applied to connections from policy endpoints<br>See [Egress Rules](#rules-egress-rules) below.
125
+
126
+ <a id="rules-ingress-rules"></a>&#x2022; [`ingress_rules`](#rules-ingress-rules) - Optional Block<br>Ingress Rules. Ordered list of rules applied to connections to policy endpoints<br>See [Ingress Rules](#rules-ingress-rules) below.
127
+
128
+ #### Rules Egress Rules
129
+
130
+ An [`egress_rules`](#rules-egress-rules) block (within [`rules`](#rules)) supports the following:
131
+
132
+ <a id="rules-egress-rules-action"></a>&#x2022; [`action`](#rules-egress-rules-action) - Optional String Defaults to `DENY`<br>Possible values are `DENY`, `ALLOW`<br>[Enum: DENY|ALLOW] Network Policy Rule Action. Network policy rule action configures the action to be taken on rule match Apply deny action on rule match Apply allow action on rule match
133
+
134
+ <a id="rules-egress-rules-adv-action"></a>&#x2022; [`adv_action`](#rules-egress-rules-adv-action) - Optional Block<br>Network Policy Rule Advanced Action. Network Policy Rule Advanced Action provides additional OPTIONS along with RuleAction and PBRRuleAction<br>See [Adv Action](#rules-egress-rules-adv-action) below.
135
+
136
+ <a id="rules-egress-rules-all-tcp-traffic"></a>&#x2022; [`all_tcp_traffic`](#rules-egress-rules-all-tcp-traffic) - Optional Block<br>Enable this option
137
+
138
+ <a id="rules-egress-rules-all-traffic"></a>&#x2022; [`all_traffic`](#rules-egress-rules-all-traffic) - Optional Block<br>Enable this option
139
+
140
+ <a id="rules-egress-rules-all-udp-traffic"></a>&#x2022; [`all_udp_traffic`](#rules-egress-rules-all-udp-traffic) - Optional Block<br>Enable this option
141
+
142
+ <a id="rules-egress-rules-any"></a>&#x2022; [`any`](#rules-egress-rules-any) - Optional Block<br>Enable this option
143
+
144
+ <a id="rules-egress-rules-applications"></a>&#x2022; [`applications`](#rules-egress-rules-applications) - Optional Block<br>Applications. Application protocols like HTTP, SNMP<br>See [Applications](#rules-egress-rules-applications) below.
145
+
146
+ <a id="rules-egress-rules-inside-endpoints"></a>&#x2022; [`inside_endpoints`](#rules-egress-rules-inside-endpoints) - Optional Block<br>Enable this option
147
+
148
+ <a id="rules-egress-rules-ip-prefix-set"></a>&#x2022; [`ip_prefix_set`](#rules-egress-rules-ip-prefix-set) - Optional Block<br>IP Prefix Set Reference. A list of references to ip_prefix_set objects<br>See [IP Prefix Set](#rules-egress-rules-ip-prefix-set) below.
149
+
150
+ <a id="rules-egress-rules-label-matcher"></a>&#x2022; [`label_matcher`](#rules-egress-rules-label-matcher) - Optional Block<br>Label Matcher. A label matcher specifies a list of label keys whose values need to match for source/client and destination/server. Note that the actual label values are not specified and do not matter. This allows an ability to scope grouping by the label key name<br>See [Label Matcher](#rules-egress-rules-label-matcher) below.
151
+
152
+ <a id="rules-egress-rules-label-selector"></a>&#x2022; [`label_selector`](#rules-egress-rules-label-selector) - Optional Block<br>Label Selector. This type can be used to establish a 'selector reference' from one object(called selector) to a set of other objects(called selectees) based on the value of expresssions. A label selector is a label query over a set of resources. An empty label selector matches all objects. A null label selector matches no objects. Label selector is immutable. Expressions is a list of strings of label selection expression. Each string has ',' separated values which are 'AND' and all strings are logically 'OR'. BNF for expression string `<selector-syntax>` ::= `<requirement>` | `<requirement>` ',' `<selector-syntax>` `<requirement>` ::= [!] KEY [ `<set-based-restriction>` | `<exact-match-restriction>` ] `<set-based-restriction>` ::= '' | `<inclusion-exclusion>` `<value-set>` `<inclusion-exclusion>` ::= `<inclusion>` | `<exclusion>` `<exclusion>` ::= 'notin' `<inclusion>` ::= 'in' `<value-set>` ::= '(' `<values>` ')' `<values>` ::= VALUE | VALUE ',' `<values>` `<exact-match-restriction>` ::= ['='|'=='|'!='] VALUE<br>See [Label Selector](#rules-egress-rules-label-selector) below.
153
+
154
+ <a id="rules-egress-rules-metadata"></a>&#x2022; [`metadata`](#rules-egress-rules-metadata) - Optional Block<br>Message Metadata. MessageMetaType is metadata (common attributes) of a message that only certain messages have. This information is propagated to the metadata of a child object that gets created from the containing message during view processing. The information in this type can be specified by user during create and replace APIs<br>See [Metadata](#rules-egress-rules-metadata) below.
155
+
156
+ <a id="rules-egress-rules-outside-endpoints"></a>&#x2022; [`outside_endpoints`](#rules-egress-rules-outside-endpoints) - Optional Block<br>Enable this option
157
+
158
+ <a id="rules-egress-rules-prefix-list"></a>&#x2022; [`prefix_list`](#rules-egress-rules-prefix-list) - Optional Block<br>IPv4 Prefix List. List of IPv4 prefixes that represent an endpoint<br>See [Prefix List](#rules-egress-rules-prefix-list) below.
159
+
160
+ <a id="rules-egress-rules-protocol-port-range"></a>&#x2022; [`protocol_port_range`](#rules-egress-rules-protocol-port-range) - Optional Block<br>Protocol and Port. Protocol and Port ranges<br>See [Protocol Port Range](#rules-egress-rules-protocol-port-range) below.
161
+
162
+ #### Rules Egress Rules Adv Action
163
+
164
+ An [`adv_action`](#rules-egress-rules-adv-action) block (within [`rules.egress_rules`](#rules-egress-rules)) supports the following:
165
+
166
+ <a id="rules-egress-rules-adv-action-action"></a>&#x2022; [`action`](#rules-egress-rules-adv-action-action) - Optional String Defaults to `NOLOG`<br>Possible values are `NOLOG`, `LOG`<br>[Enum: NOLOG|LOG] Log Action. Choice to choose logging or no logging This works together with option selected via NetworkPolicyRuleAction or any other action specified Don't sample the traffic hitting the rule Sample the traffic hitting the rule
167
+
168
+ #### Rules Egress Rules Applications
169
+
170
+ An [`applications`](#rules-egress-rules-applications) block (within [`rules.egress_rules`](#rules-egress-rules)) supports the following:
171
+
172
+ <a id="applications-f7c65d"></a>&#x2022; [`applications`](#applications-f7c65d) - Optional List Defaults to `APPLICATION_HTTP`<br>Possible values are `APPLICATION_HTTP`, `APPLICATION_HTTPS`, `APPLICATION_SNMP`, `APPLICATION_DNS`<br>[Enum: APPLICATION_HTTP|APPLICATION_HTTPS|APPLICATION_SNMP|APPLICATION_DNS] Application Protocols. Application protocols like HTTP, SNMP
173
+
174
+ #### Rules Egress Rules IP Prefix Set
175
+
176
+ An [`ip_prefix_set`](#rules-egress-rules-ip-prefix-set) block (within [`rules.egress_rules`](#rules-egress-rules)) supports the following:
177
+
178
+ <a id="rules-egress-rules-ip-prefix-set-ref"></a>&#x2022; [`ref`](#rules-egress-rules-ip-prefix-set-ref) - Optional Block<br>Reference. A list of references to ip_prefix_set objects<br>See [Ref](#rules-egress-rules-ip-prefix-set-ref) below.
179
+
180
+ #### Rules Egress Rules IP Prefix Set Ref
181
+
182
+ A [`ref`](#rules-egress-rules-ip-prefix-set-ref) block (within [`rules.egress_rules.ip_prefix_set`](#rules-egress-rules-ip-prefix-set)) supports the following:
183
+
184
+ <a id="kind-6153e0"></a>&#x2022; [`kind`](#kind-6153e0) - Optional String<br>Kind. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then kind will hold the referred object's kind (e.g. 'route')
185
+
186
+ <a id="name-3c4742"></a>&#x2022; [`name`](#name-3c4742) - Optional String<br>Name. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then name will hold the referred object's(e.g. Route's) name
187
+
188
+ <a id="namespace-f39f97"></a>&#x2022; [`namespace`](#namespace-f39f97) - Optional String<br>Namespace. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then namespace will hold the referred object's(e.g. Route's) namespace
189
+
190
+ <a id="tenant-5557c0"></a>&#x2022; [`tenant`](#tenant-5557c0) - Optional String<br>Tenant. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then tenant will hold the referred object's(e.g. Route's) tenant
191
+
192
+ <a id="uid-b4cc26"></a>&#x2022; [`uid`](#uid-b4cc26) - Optional String<br>UID. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then uid will hold the referred object's(e.g. Route's) uid
193
+
194
+ #### Rules Egress Rules Label Matcher
195
+
196
+ A [`label_matcher`](#rules-egress-rules-label-matcher) block (within [`rules.egress_rules`](#rules-egress-rules)) supports the following:
197
+
198
+ <a id="rules-egress-rules-label-matcher-keys"></a>&#x2022; [`keys`](#rules-egress-rules-label-matcher-keys) - Optional List<br>Keys. The list of label key names that have to match
199
+
200
+ #### Rules Egress Rules Label Selector
201
+
202
+ A [`label_selector`](#rules-egress-rules-label-selector) block (within [`rules.egress_rules`](#rules-egress-rules)) supports the following:
203
+
204
+ <a id="expressions-d57cba"></a>&#x2022; [`expressions`](#expressions-d57cba) - Optional List<br>Selector Expression. Expressions contains the Kubernetes style label expression for selections
205
+
206
+ #### Rules Egress Rules Metadata
207
+
208
+ A [`metadata`](#rules-egress-rules-metadata) block (within [`rules.egress_rules`](#rules-egress-rules)) supports the following:
209
+
210
+ <a id="spec-6fe394"></a>&#x2022; [`description_spec`](#spec-6fe394) - Optional String<br>Description. Human readable description
211
+
212
+ <a id="rules-egress-rules-metadata-name"></a>&#x2022; [`name`](#rules-egress-rules-metadata-name) - Optional String<br>Name. This is the name of the message. The value of name has to follow DNS-1035 format
213
+
214
+ #### Rules Egress Rules Prefix List
215
+
216
+ A [`prefix_list`](#rules-egress-rules-prefix-list) block (within [`rules.egress_rules`](#rules-egress-rules)) supports the following:
217
+
218
+ <a id="rules-egress-rules-prefix-list-prefixes"></a>&#x2022; [`prefixes`](#rules-egress-rules-prefix-list-prefixes) - Optional List<br>IPv4 Prefix List. List of IPv4 prefixes that represent an endpoint
219
+
220
+ #### Rules Egress Rules Protocol Port Range
221
+
222
+ A [`protocol_port_range`](#rules-egress-rules-protocol-port-range) block (within [`rules.egress_rules`](#rules-egress-rules)) supports the following:
223
+
224
+ <a id="ranges-ffb05a"></a>&#x2022; [`port_ranges`](#ranges-ffb05a) - Optional List<br>List of Port Ranges. List of port ranges. Each range is a single port or a pair of start and end ports e.g. 8080-8192
225
+
226
+ <a id="protocol-77c4d7"></a>&#x2022; [`protocol`](#protocol-77c4d7) - Optional String<br>Protocol. Protocol in IP packet to be used as match criteria Values are TCP, UDP, and ICMP
227
+
228
+ #### Rules Ingress Rules
229
+
230
+ An [`ingress_rules`](#rules-ingress-rules) block (within [`rules`](#rules)) supports the following:
231
+
232
+ <a id="rules-ingress-rules-action"></a>&#x2022; [`action`](#rules-ingress-rules-action) - Optional String Defaults to `DENY`<br>Possible values are `DENY`, `ALLOW`<br>[Enum: DENY|ALLOW] Network Policy Rule Action. Network policy rule action configures the action to be taken on rule match Apply deny action on rule match Apply allow action on rule match
233
+
234
+ <a id="rules-ingress-rules-adv-action"></a>&#x2022; [`adv_action`](#rules-ingress-rules-adv-action) - Optional Block<br>Network Policy Rule Advanced Action. Network Policy Rule Advanced Action provides additional OPTIONS along with RuleAction and PBRRuleAction<br>See [Adv Action](#rules-ingress-rules-adv-action) below.
235
+
236
+ <a id="rules-ingress-rules-all-tcp-traffic"></a>&#x2022; [`all_tcp_traffic`](#rules-ingress-rules-all-tcp-traffic) - Optional Block<br>Enable this option
237
+
238
+ <a id="rules-ingress-rules-all-traffic"></a>&#x2022; [`all_traffic`](#rules-ingress-rules-all-traffic) - Optional Block<br>Enable this option
239
+
240
+ <a id="rules-ingress-rules-all-udp-traffic"></a>&#x2022; [`all_udp_traffic`](#rules-ingress-rules-all-udp-traffic) - Optional Block<br>Enable this option
241
+
242
+ <a id="rules-ingress-rules-any"></a>&#x2022; [`any`](#rules-ingress-rules-any) - Optional Block<br>Enable this option
243
+
244
+ <a id="rules-ingress-rules-applications"></a>&#x2022; [`applications`](#rules-ingress-rules-applications) - Optional Block<br>Applications. Application protocols like HTTP, SNMP<br>See [Applications](#rules-ingress-rules-applications) below.
245
+
246
+ <a id="rules-ingress-rules-inside-endpoints"></a>&#x2022; [`inside_endpoints`](#rules-ingress-rules-inside-endpoints) - Optional Block<br>Enable this option
247
+
248
+ <a id="rules-ingress-rules-ip-prefix-set"></a>&#x2022; [`ip_prefix_set`](#rules-ingress-rules-ip-prefix-set) - Optional Block<br>IP Prefix Set Reference. A list of references to ip_prefix_set objects<br>See [IP Prefix Set](#rules-ingress-rules-ip-prefix-set) below.
249
+
250
+ <a id="rules-ingress-rules-label-matcher"></a>&#x2022; [`label_matcher`](#rules-ingress-rules-label-matcher) - Optional Block<br>Label Matcher. A label matcher specifies a list of label keys whose values need to match for source/client and destination/server. Note that the actual label values are not specified and do not matter. This allows an ability to scope grouping by the label key name<br>See [Label Matcher](#rules-ingress-rules-label-matcher) below.
251
+
252
+ <a id="rules-ingress-rules-label-selector"></a>&#x2022; [`label_selector`](#rules-ingress-rules-label-selector) - Optional Block<br>Label Selector. This type can be used to establish a 'selector reference' from one object(called selector) to a set of other objects(called selectees) based on the value of expresssions. A label selector is a label query over a set of resources. An empty label selector matches all objects. A null label selector matches no objects. Label selector is immutable. Expressions is a list of strings of label selection expression. Each string has ',' separated values which are 'AND' and all strings are logically 'OR'. BNF for expression string `<selector-syntax>` ::= `<requirement>` | `<requirement>` ',' `<selector-syntax>` `<requirement>` ::= [!] KEY [ `<set-based-restriction>` | `<exact-match-restriction>` ] `<set-based-restriction>` ::= '' | `<inclusion-exclusion>` `<value-set>` `<inclusion-exclusion>` ::= `<inclusion>` | `<exclusion>` `<exclusion>` ::= 'notin' `<inclusion>` ::= 'in' `<value-set>` ::= '(' `<values>` ')' `<values>` ::= VALUE | VALUE ',' `<values>` `<exact-match-restriction>` ::= ['='|'=='|'!='] VALUE<br>See [Label Selector](#rules-ingress-rules-label-selector) below.
253
+
254
+ <a id="rules-ingress-rules-metadata"></a>&#x2022; [`metadata`](#rules-ingress-rules-metadata) - Optional Block<br>Message Metadata. MessageMetaType is metadata (common attributes) of a message that only certain messages have. This information is propagated to the metadata of a child object that gets created from the containing message during view processing. The information in this type can be specified by user during create and replace APIs<br>See [Metadata](#rules-ingress-rules-metadata) below.
255
+
256
+ <a id="rules-ingress-rules-outside-endpoints"></a>&#x2022; [`outside_endpoints`](#rules-ingress-rules-outside-endpoints) - Optional Block<br>Enable this option
257
+
258
+ <a id="rules-ingress-rules-prefix-list"></a>&#x2022; [`prefix_list`](#rules-ingress-rules-prefix-list) - Optional Block<br>IPv4 Prefix List. List of IPv4 prefixes that represent an endpoint<br>See [Prefix List](#rules-ingress-rules-prefix-list) below.
259
+
260
+ <a id="rules-ingress-rules-protocol-port-range"></a>&#x2022; [`protocol_port_range`](#rules-ingress-rules-protocol-port-range) - Optional Block<br>Protocol and Port. Protocol and Port ranges<br>See [Protocol Port Range](#rules-ingress-rules-protocol-port-range) below.
261
+
262
+ #### Rules Ingress Rules Adv Action
263
+
264
+ An [`adv_action`](#rules-ingress-rules-adv-action) block (within [`rules.ingress_rules`](#rules-ingress-rules)) supports the following:
265
+
266
+ <a id="rules-ingress-rules-adv-action-action"></a>&#x2022; [`action`](#rules-ingress-rules-adv-action-action) - Optional String Defaults to `NOLOG`<br>Possible values are `NOLOG`, `LOG`<br>[Enum: NOLOG|LOG] Log Action. Choice to choose logging or no logging This works together with option selected via NetworkPolicyRuleAction or any other action specified Don't sample the traffic hitting the rule Sample the traffic hitting the rule
267
+
268
+ #### Rules Ingress Rules Applications
269
+
270
+ An [`applications`](#rules-ingress-rules-applications) block (within [`rules.ingress_rules`](#rules-ingress-rules)) supports the following:
271
+
272
+ <a id="applications-ada048"></a>&#x2022; [`applications`](#applications-ada048) - Optional List Defaults to `APPLICATION_HTTP`<br>Possible values are `APPLICATION_HTTP`, `APPLICATION_HTTPS`, `APPLICATION_SNMP`, `APPLICATION_DNS`<br>[Enum: APPLICATION_HTTP|APPLICATION_HTTPS|APPLICATION_SNMP|APPLICATION_DNS] Application Protocols. Application protocols like HTTP, SNMP
273
+
274
+ #### Rules Ingress Rules IP Prefix Set
275
+
276
+ An [`ip_prefix_set`](#rules-ingress-rules-ip-prefix-set) block (within [`rules.ingress_rules`](#rules-ingress-rules)) supports the following:
277
+
278
+ <a id="rules-ingress-rules-ip-prefix-set-ref"></a>&#x2022; [`ref`](#rules-ingress-rules-ip-prefix-set-ref) - Optional Block<br>Reference. A list of references to ip_prefix_set objects<br>See [Ref](#rules-ingress-rules-ip-prefix-set-ref) below.
279
+
280
+ #### Rules Ingress Rules IP Prefix Set Ref
281
+
282
+ A [`ref`](#rules-ingress-rules-ip-prefix-set-ref) block (within [`rules.ingress_rules.ip_prefix_set`](#rules-ingress-rules-ip-prefix-set)) supports the following:
283
+
284
+ <a id="kind-3a83c1"></a>&#x2022; [`kind`](#kind-3a83c1) - Optional String<br>Kind. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then kind will hold the referred object's kind (e.g. 'route')
106
285
 
107
- An [`advanced_action`](#advanced-action) block supports the following:
286
+ <a id="name-c9035f"></a>&#x2022; [`name`](#name-c9035f) - Optional String<br>Name. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then name will hold the referred object's(e.g. Route's) name
108
287
 
109
- <a id="advanced-action-action"></a>&#x2022; [`action`](#advanced-action-action) - Optional String Defaults to `NOLOG`<br>Possible values are `NOLOG`, `LOG`<br>[Enum: NOLOG|LOG] Log Action. Choice to choose logging or no logging This works together with option selected via NetworkPolicyRuleAction or any other action specified Don't sample the traffic hitting the rule Sample the traffic hitting the rule
288
+ <a id="namespace-0b6e5e"></a>&#x2022; [`namespace`](#namespace-0b6e5e) - Optional String<br>Namespace. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then namespace will hold the referred object's(e.g. Route's) namespace
110
289
 
111
- #### IP Prefix Set
290
+ <a id="tenant-b81c73"></a>&#x2022; [`tenant`](#tenant-b81c73) - Optional String<br>Tenant. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then tenant will hold the referred object's(e.g. Route's) tenant
112
291
 
113
- An [`ip_prefix_set`](#ip-prefix-set) block supports the following:
292
+ <a id="uid-0be2c4"></a>&#x2022; [`uid`](#uid-0be2c4) - Optional String<br>UID. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then uid will hold the referred object's(e.g. Route's) uid
114
293
 
115
- <a id="ip-prefix-set-ref"></a>&#x2022; [`ref`](#ip-prefix-set-ref) - Optional Block<br>Reference. A list of references to ip_prefix_set objects<br>See [Ref](#ip-prefix-set-ref) below.
294
+ #### Rules Ingress Rules Label Matcher
116
295
 
117
- #### IP Prefix Set Ref
296
+ A [`label_matcher`](#rules-ingress-rules-label-matcher) block (within [`rules.ingress_rules`](#rules-ingress-rules)) supports the following:
118
297
 
119
- A [`ref`](#ip-prefix-set-ref) block (within [`ip_prefix_set`](#ip-prefix-set)) supports the following:
298
+ <a id="rules-ingress-rules-label-matcher-keys"></a>&#x2022; [`keys`](#rules-ingress-rules-label-matcher-keys) - Optional List<br>Keys. The list of label key names that have to match
120
299
 
121
- <a id="ip-prefix-set-ref-kind"></a>&#x2022; [`kind`](#ip-prefix-set-ref-kind) - Optional String<br>Kind. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then kind will hold the referred object's kind (e.g. 'route')
300
+ #### Rules Ingress Rules Label Selector
122
301
 
123
- <a id="ip-prefix-set-ref-name"></a>&#x2022; [`name`](#ip-prefix-set-ref-name) - Optional String<br>Name. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then name will hold the referred object's(e.g. Route's) name
302
+ A [`label_selector`](#rules-ingress-rules-label-selector) block (within [`rules.ingress_rules`](#rules-ingress-rules)) supports the following:
124
303
 
125
- <a id="ip-prefix-set-ref-namespace"></a>&#x2022; [`namespace`](#ip-prefix-set-ref-namespace) - Optional String<br>Namespace. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then namespace will hold the referred object's(e.g. Route's) namespace
304
+ <a id="expressions-151d69"></a>&#x2022; [`expressions`](#expressions-151d69) - Optional List<br>Selector Expression. Expressions contains the Kubernetes style label expression for selections
126
305
 
127
- <a id="ip-prefix-set-ref-tenant"></a>&#x2022; [`tenant`](#ip-prefix-set-ref-tenant) - Optional String<br>Tenant. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then tenant will hold the referred object's(e.g. Route's) tenant
306
+ #### Rules Ingress Rules Metadata
128
307
 
129
- <a id="ip-prefix-set-ref-uid"></a>&#x2022; [`uid`](#ip-prefix-set-ref-uid) - Optional String<br>UID. When a configuration object(e.g. Virtual_host) refers to another(e.g route) then uid will hold the referred object's(e.g. Route's) uid
308
+ A [`metadata`](#rules-ingress-rules-metadata) block (within [`rules.ingress_rules`](#rules-ingress-rules)) supports the following:
130
309
 
131
- #### Label Matcher
310
+ <a id="spec-3d4978"></a>&#x2022; [`description_spec`](#spec-3d4978) - Optional String<br>Description. Human readable description
132
311
 
133
- A [`label_matcher`](#label-matcher) block supports the following:
312
+ <a id="rules-ingress-rules-metadata-name"></a>&#x2022; [`name`](#rules-ingress-rules-metadata-name) - Optional String<br>Name. This is the name of the message. The value of name has to follow DNS-1035 format
134
313
 
135
- <a id="label-matcher-keys"></a>&#x2022; [`keys`](#label-matcher-keys) - Optional List<br>Keys. The list of label key names that have to match
314
+ #### Rules Ingress Rules Prefix List
136
315
 
137
- #### Prefix
316
+ A [`prefix_list`](#rules-ingress-rules-prefix-list) block (within [`rules.ingress_rules`](#rules-ingress-rules)) supports the following:
138
317
 
139
- A [`prefix`](#prefix) block supports the following:
318
+ <a id="prefixes-89e9a7"></a>&#x2022; [`prefixes`](#prefixes-89e9a7) - Optional List<br>IPv4 Prefix List. List of IPv4 prefixes that represent an endpoint
140
319
 
141
- <a id="prefix-prefix"></a>&#x2022; [`prefix`](#prefix-prefix) - Optional List<br>Prefix. IP Address prefix in string format. String must contain both prefix and prefix-length
320
+ #### Rules Ingress Rules Protocol Port Range
142
321
 
143
- #### Prefix Selector
322
+ A [`protocol_port_range`](#rules-ingress-rules-protocol-port-range) block (within [`rules.ingress_rules`](#rules-ingress-rules)) supports the following:
144
323
 
145
- A [`prefix_selector`](#prefix-selector) block supports the following:
324
+ <a id="ranges-86d162"></a>&#x2022; [`port_ranges`](#ranges-86d162) - Optional List<br>List of Port Ranges. List of port ranges. Each range is a single port or a pair of start and end ports e.g. 8080-8192
146
325
 
147
- <a id="prefix-selector-expressions"></a>&#x2022; [`expressions`](#prefix-selector-expressions) - Optional List<br>Selector Expression. Expressions contains the Kubernetes style label expression for selections
326
+ <a id="protocol-a45394"></a>&#x2022; [`protocol`](#protocol-a45394) - Optional String<br>Protocol. Protocol in IP packet to be used as match criteria Values are TCP, UDP, and ICMP
148
327
 
149
328
  #### Timeouts
150
329