pulumi-alicloud 3.56.0a1717132537__py3-none-any.whl → 3.56.0a1717175543__py3-none-any.whl

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.

Potentially problematic release.


This version of pulumi-alicloud might be problematic. Click here for more details.

Files changed (43) hide show
  1. pulumi_alicloud/__init__.py +96 -0
  2. pulumi_alicloud/alikafka/instance.py +47 -0
  3. pulumi_alicloud/apigateway/__init__.py +1 -0
  4. pulumi_alicloud/apigateway/_inputs.py +40 -0
  5. pulumi_alicloud/apigateway/access_control_list.py +322 -0
  6. pulumi_alicloud/apigateway/get_apis.py +96 -23
  7. pulumi_alicloud/apigateway/outputs.py +72 -14
  8. pulumi_alicloud/apigateway/plugin.py +225 -73
  9. pulumi_alicloud/cen/get_transit_router_vpc_attachments.py +171 -18
  10. pulumi_alicloud/cen/outputs.py +51 -22
  11. pulumi_alicloud/cloudfirewall/__init__.py +2 -0
  12. pulumi_alicloud/cloudfirewall/_inputs.py +68 -0
  13. pulumi_alicloud/cloudfirewall/nat_firewall.py +811 -0
  14. pulumi_alicloud/cloudfirewall/nat_firewall_control_policy.py +1589 -0
  15. pulumi_alicloud/cloudfirewall/outputs.py +75 -0
  16. pulumi_alicloud/ecs/security_group_rule.py +75 -53
  17. pulumi_alicloud/ess/_inputs.py +56 -0
  18. pulumi_alicloud/ess/outputs.py +61 -0
  19. pulumi_alicloud/ess/scaling_group.py +101 -7
  20. pulumi_alicloud/kms/key.py +251 -333
  21. pulumi_alicloud/kms/secret.py +210 -125
  22. pulumi_alicloud/nas/__init__.py +2 -0
  23. pulumi_alicloud/nas/_inputs.py +126 -0
  24. pulumi_alicloud/nas/access_point.py +743 -0
  25. pulumi_alicloud/nas/outputs.py +128 -0
  26. pulumi_alicloud/oss/__init__.py +7 -0
  27. pulumi_alicloud/oss/account_public_access_block.py +200 -0
  28. pulumi_alicloud/oss/bucket_access_monitor.py +206 -0
  29. pulumi_alicloud/oss/bucket_data_redundancy_transition.py +290 -0
  30. pulumi_alicloud/oss/bucket_meta_query.py +270 -0
  31. pulumi_alicloud/oss/bucket_public_access_block.py +258 -0
  32. pulumi_alicloud/oss/bucket_transfer_acceleration.py +205 -0
  33. pulumi_alicloud/oss/bucket_user_defined_log_fields.py +328 -0
  34. pulumi_alicloud/pulumi-plugin.json +1 -1
  35. pulumi_alicloud/redis/tair_instance.py +188 -0
  36. pulumi_alicloud/sls/__init__.py +1 -0
  37. pulumi_alicloud/sls/_inputs.py +384 -0
  38. pulumi_alicloud/sls/outputs.py +358 -0
  39. pulumi_alicloud/sls/scheduled_sql.py +523 -0
  40. {pulumi_alicloud-3.56.0a1717132537.dist-info → pulumi_alicloud-3.56.0a1717175543.dist-info}/METADATA +1 -1
  41. {pulumi_alicloud-3.56.0a1717132537.dist-info → pulumi_alicloud-3.56.0a1717175543.dist-info}/RECORD +43 -30
  42. {pulumi_alicloud-3.56.0a1717132537.dist-info → pulumi_alicloud-3.56.0a1717175543.dist-info}/WHEEL +0 -0
  43. {pulumi_alicloud-3.56.0a1717132537.dist-info → pulumi_alicloud-3.56.0a1717175543.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1589 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+
12
+ __all__ = ['NatFirewallControlPolicyArgs', 'NatFirewallControlPolicy']
13
+
14
+ @pulumi.input_type
15
+ class NatFirewallControlPolicyArgs:
16
+ def __init__(__self__, *,
17
+ acl_action: pulumi.Input[str],
18
+ application_name_lists: pulumi.Input[Sequence[pulumi.Input[str]]],
19
+ description: pulumi.Input[str],
20
+ destination: pulumi.Input[str],
21
+ destination_type: pulumi.Input[str],
22
+ direction: pulumi.Input[str],
23
+ nat_gateway_id: pulumi.Input[str],
24
+ new_order: pulumi.Input[str],
25
+ proto: pulumi.Input[str],
26
+ source: pulumi.Input[str],
27
+ source_type: pulumi.Input[str],
28
+ dest_port: Optional[pulumi.Input[str]] = None,
29
+ dest_port_group: Optional[pulumi.Input[str]] = None,
30
+ dest_port_type: Optional[pulumi.Input[str]] = None,
31
+ domain_resolve_type: Optional[pulumi.Input[int]] = None,
32
+ end_time: Optional[pulumi.Input[int]] = None,
33
+ ip_version: Optional[pulumi.Input[str]] = None,
34
+ release: Optional[pulumi.Input[str]] = None,
35
+ repeat_days: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
36
+ repeat_end_time: Optional[pulumi.Input[str]] = None,
37
+ repeat_start_time: Optional[pulumi.Input[str]] = None,
38
+ repeat_type: Optional[pulumi.Input[str]] = None,
39
+ start_time: Optional[pulumi.Input[int]] = None):
40
+ """
41
+ The set of arguments for constructing a NatFirewallControlPolicy resource.
42
+ :param pulumi.Input[str] acl_action: The method (action) of access traffic passing through Cloud Firewall in the security access control policy. Valid values:
43
+ - **accept**: Release
44
+ - **drop**: Refused
45
+ - **log**: Observation.
46
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] application_name_lists: The list of application types supported by the access control policy.
47
+ :param pulumi.Input[str] description: The description of the access control policy.
48
+ :param pulumi.Input[str] destination: The destination address segment in the access control policy. Valid values:
49
+ - When DestinationType is net, Destination is the Destination CIDR. For example: 1.2.XX.XX/24
50
+ - When DestinationType IS group, Destination is the name of the Destination address book. For example: db_group
51
+ - When DestinationType is domain, Destination is the Destination domain name. For example: * .aliyuncs.com
52
+ - When DestinationType is location, Destination is the Destination region. For example: \\["BJ11", "ZB"\\].
53
+ :param pulumi.Input[str] destination_type: The destination address type in the access control policy. Valid values:
54
+ - **net**: Destination Network segment (CIDR address)
55
+ - **group**: Destination Address Book
56
+ - **domain**: the destination domain name.
57
+ :param pulumi.Input[str] direction: The traffic direction of the access control policy. Valid values:
58
+ - **out**: Internal and external traffic access control.
59
+ :param pulumi.Input[str] nat_gateway_id: The ID of the NAT gateway instance.
60
+ :param pulumi.Input[str] new_order: The priority for the access control policy to take effect. The priority number increases sequentially from 1, and the smaller the priority number, the higher the priority.
61
+ :param pulumi.Input[str] proto: The security protocol type for traffic access in the access control policy. Valid values:
62
+ - ANY (indicates that all protocol types are queried)
63
+ - TCP
64
+ - UDP
65
+ - ICMP.
66
+ :param pulumi.Input[str] source: The source address in the access control policy. Valid values:
67
+ - When **SourceType** is set to 'net', Source is the Source CIDR address. For example: 10.2.4.0/24
68
+ - When **SourceType** is set to 'group', Source is the name of the Source address book. For example: db_group.
69
+ :param pulumi.Input[str] source_type: The source address type in the access control policy. Valid values:
70
+ - **net**: the source network segment (CIDR address)
71
+ - **group**: source address book
72
+ :param pulumi.Input[str] dest_port: The destination port of traffic access in the access control policy. Value:
73
+ - When the protocol type is set to ICMP, the value of DestPort is null.
74
+ > **NOTE:** When the protocol type is ICMP, access control on the destination port is not supported.
75
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) IS group, the value of DestPort is null.
76
+ > **NOTE:** When you select group (destination port address book) for the destination port type of the access control policy, you do not need to set a specific destination port number. All ports that need to be controlled by this access control policy are included in the destination port address book.
77
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) is port, the value of DestPort is the destination port number.
78
+ :param pulumi.Input[str] dest_port_group: The address book name of the destination port of the access traffic in the access control policy.
79
+ > **NOTE:** When DestPortType is set to group, you need to set the destination port address book name.
80
+ :param pulumi.Input[str] dest_port_type: The destination port type of the access traffic in the security access control policy.
81
+ - **port**: port
82
+ - **group**: Port Address Book.
83
+ :param pulumi.Input[int] domain_resolve_type: The domain name resolution method of the access control policy. The policy is enabled by default after it is created. Valid values:
84
+ - **0**: Based on FQDN
85
+ - **1**: DNS-based dynamic resolution
86
+ - **2**: dynamic resolution based on FQDN and DNS.
87
+ :param pulumi.Input[int] end_time: The end time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. Must be full or half time and at least half an hour greater than the start time.
88
+ > **NOTE:** When RepeatType is set to permit, EndTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, EndTime must have a value and you need to set the end time.
89
+ :param pulumi.Input[str] ip_version: Supported IP address version. Value:
90
+ - **4** (default): indicates the IPv4 address.
91
+ :param pulumi.Input[str] release: The enabled status of the access control policy. The policy is enabled by default after it is created. Value:
92
+ - **true**: Enable access control policy
93
+ - **false**: Do not enable access control policies.
94
+ :param pulumi.Input[Sequence[pulumi.Input[int]]] repeat_days: Collection of recurring dates for the policy validity period of the access control policy.
95
+ - When RepeatType is 'Permanent', 'None', 'Daily', RepeatDays is an empty collection. For example:[]
96
+ - When RepeatType is Weekly, RepeatDays cannot be empty. For example:["0", "6"]. When the RepeatType is set to Weekly, RepeatDays cannot be repeated.
97
+ - RepeatDays cannot be empty when RepeatType is 'Monthly. For example:[1, 31]. When RepeatType is set to Monthly, RepeatDays cannot be repeated.
98
+ :param pulumi.Input[str] repeat_end_time: The recurring end time of the policy validity period of the access control policy. For example: 23:30, it must be the whole point or half point time, and at least half an hour greater than the repeat start time.
99
+ > **NOTE:** When RepeatType is set to normal or None, RepeatEndTime is null. When the RepeatType is Daily, Weekly, or Monthly, the RepeatEndTime must have a value, and you need to set the repeat end time.
100
+ :param pulumi.Input[str] repeat_start_time: The recurring start time of the policy validity period of the access control policy. For example: 08:00, it must be the whole point or half point time, and at least half an hour less than the repeat end time.
101
+ > **NOTE:** When RepeatType is set to permit or None, RepeatStartTime is empty. When the RepeatType is Daily, Weekly, or Monthly, the RepeatStartTime must have a value and you need to set the repeat start time.
102
+ :param pulumi.Input[str] repeat_type: The type of repetition for the policy validity period of the access control policy. Value:
103
+ - **Permit** (default): Always
104
+ - **None**: Specify a single time
105
+ - **Daily**: Daily
106
+ - **Weekly**: Weekly
107
+ - **Monthly**: Monthly.
108
+ :param pulumi.Input[int] start_time: The start time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. It must be a full or half hour and at least half an hour less than the end time.
109
+ > **NOTE:** When RepeatType is set to normal, StartTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, StartTime must have a value and you need to set the start time.
110
+ """
111
+ pulumi.set(__self__, "acl_action", acl_action)
112
+ pulumi.set(__self__, "application_name_lists", application_name_lists)
113
+ pulumi.set(__self__, "description", description)
114
+ pulumi.set(__self__, "destination", destination)
115
+ pulumi.set(__self__, "destination_type", destination_type)
116
+ pulumi.set(__self__, "direction", direction)
117
+ pulumi.set(__self__, "nat_gateway_id", nat_gateway_id)
118
+ pulumi.set(__self__, "new_order", new_order)
119
+ pulumi.set(__self__, "proto", proto)
120
+ pulumi.set(__self__, "source", source)
121
+ pulumi.set(__self__, "source_type", source_type)
122
+ if dest_port is not None:
123
+ pulumi.set(__self__, "dest_port", dest_port)
124
+ if dest_port_group is not None:
125
+ pulumi.set(__self__, "dest_port_group", dest_port_group)
126
+ if dest_port_type is not None:
127
+ pulumi.set(__self__, "dest_port_type", dest_port_type)
128
+ if domain_resolve_type is not None:
129
+ pulumi.set(__self__, "domain_resolve_type", domain_resolve_type)
130
+ if end_time is not None:
131
+ pulumi.set(__self__, "end_time", end_time)
132
+ if ip_version is not None:
133
+ pulumi.set(__self__, "ip_version", ip_version)
134
+ if release is not None:
135
+ pulumi.set(__self__, "release", release)
136
+ if repeat_days is not None:
137
+ pulumi.set(__self__, "repeat_days", repeat_days)
138
+ if repeat_end_time is not None:
139
+ pulumi.set(__self__, "repeat_end_time", repeat_end_time)
140
+ if repeat_start_time is not None:
141
+ pulumi.set(__self__, "repeat_start_time", repeat_start_time)
142
+ if repeat_type is not None:
143
+ pulumi.set(__self__, "repeat_type", repeat_type)
144
+ if start_time is not None:
145
+ pulumi.set(__self__, "start_time", start_time)
146
+
147
+ @property
148
+ @pulumi.getter(name="aclAction")
149
+ def acl_action(self) -> pulumi.Input[str]:
150
+ """
151
+ The method (action) of access traffic passing through Cloud Firewall in the security access control policy. Valid values:
152
+ - **accept**: Release
153
+ - **drop**: Refused
154
+ - **log**: Observation.
155
+ """
156
+ return pulumi.get(self, "acl_action")
157
+
158
+ @acl_action.setter
159
+ def acl_action(self, value: pulumi.Input[str]):
160
+ pulumi.set(self, "acl_action", value)
161
+
162
+ @property
163
+ @pulumi.getter(name="applicationNameLists")
164
+ def application_name_lists(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
165
+ """
166
+ The list of application types supported by the access control policy.
167
+ """
168
+ return pulumi.get(self, "application_name_lists")
169
+
170
+ @application_name_lists.setter
171
+ def application_name_lists(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
172
+ pulumi.set(self, "application_name_lists", value)
173
+
174
+ @property
175
+ @pulumi.getter
176
+ def description(self) -> pulumi.Input[str]:
177
+ """
178
+ The description of the access control policy.
179
+ """
180
+ return pulumi.get(self, "description")
181
+
182
+ @description.setter
183
+ def description(self, value: pulumi.Input[str]):
184
+ pulumi.set(self, "description", value)
185
+
186
+ @property
187
+ @pulumi.getter
188
+ def destination(self) -> pulumi.Input[str]:
189
+ """
190
+ The destination address segment in the access control policy. Valid values:
191
+ - When DestinationType is net, Destination is the Destination CIDR. For example: 1.2.XX.XX/24
192
+ - When DestinationType IS group, Destination is the name of the Destination address book. For example: db_group
193
+ - When DestinationType is domain, Destination is the Destination domain name. For example: * .aliyuncs.com
194
+ - When DestinationType is location, Destination is the Destination region. For example: \\["BJ11", "ZB"\\].
195
+ """
196
+ return pulumi.get(self, "destination")
197
+
198
+ @destination.setter
199
+ def destination(self, value: pulumi.Input[str]):
200
+ pulumi.set(self, "destination", value)
201
+
202
+ @property
203
+ @pulumi.getter(name="destinationType")
204
+ def destination_type(self) -> pulumi.Input[str]:
205
+ """
206
+ The destination address type in the access control policy. Valid values:
207
+ - **net**: Destination Network segment (CIDR address)
208
+ - **group**: Destination Address Book
209
+ - **domain**: the destination domain name.
210
+ """
211
+ return pulumi.get(self, "destination_type")
212
+
213
+ @destination_type.setter
214
+ def destination_type(self, value: pulumi.Input[str]):
215
+ pulumi.set(self, "destination_type", value)
216
+
217
+ @property
218
+ @pulumi.getter
219
+ def direction(self) -> pulumi.Input[str]:
220
+ """
221
+ The traffic direction of the access control policy. Valid values:
222
+ - **out**: Internal and external traffic access control.
223
+ """
224
+ return pulumi.get(self, "direction")
225
+
226
+ @direction.setter
227
+ def direction(self, value: pulumi.Input[str]):
228
+ pulumi.set(self, "direction", value)
229
+
230
+ @property
231
+ @pulumi.getter(name="natGatewayId")
232
+ def nat_gateway_id(self) -> pulumi.Input[str]:
233
+ """
234
+ The ID of the NAT gateway instance.
235
+ """
236
+ return pulumi.get(self, "nat_gateway_id")
237
+
238
+ @nat_gateway_id.setter
239
+ def nat_gateway_id(self, value: pulumi.Input[str]):
240
+ pulumi.set(self, "nat_gateway_id", value)
241
+
242
+ @property
243
+ @pulumi.getter(name="newOrder")
244
+ def new_order(self) -> pulumi.Input[str]:
245
+ """
246
+ The priority for the access control policy to take effect. The priority number increases sequentially from 1, and the smaller the priority number, the higher the priority.
247
+ """
248
+ return pulumi.get(self, "new_order")
249
+
250
+ @new_order.setter
251
+ def new_order(self, value: pulumi.Input[str]):
252
+ pulumi.set(self, "new_order", value)
253
+
254
+ @property
255
+ @pulumi.getter
256
+ def proto(self) -> pulumi.Input[str]:
257
+ """
258
+ The security protocol type for traffic access in the access control policy. Valid values:
259
+ - ANY (indicates that all protocol types are queried)
260
+ - TCP
261
+ - UDP
262
+ - ICMP.
263
+ """
264
+ return pulumi.get(self, "proto")
265
+
266
+ @proto.setter
267
+ def proto(self, value: pulumi.Input[str]):
268
+ pulumi.set(self, "proto", value)
269
+
270
+ @property
271
+ @pulumi.getter
272
+ def source(self) -> pulumi.Input[str]:
273
+ """
274
+ The source address in the access control policy. Valid values:
275
+ - When **SourceType** is set to 'net', Source is the Source CIDR address. For example: 10.2.4.0/24
276
+ - When **SourceType** is set to 'group', Source is the name of the Source address book. For example: db_group.
277
+ """
278
+ return pulumi.get(self, "source")
279
+
280
+ @source.setter
281
+ def source(self, value: pulumi.Input[str]):
282
+ pulumi.set(self, "source", value)
283
+
284
+ @property
285
+ @pulumi.getter(name="sourceType")
286
+ def source_type(self) -> pulumi.Input[str]:
287
+ """
288
+ The source address type in the access control policy. Valid values:
289
+ - **net**: the source network segment (CIDR address)
290
+ - **group**: source address book
291
+ """
292
+ return pulumi.get(self, "source_type")
293
+
294
+ @source_type.setter
295
+ def source_type(self, value: pulumi.Input[str]):
296
+ pulumi.set(self, "source_type", value)
297
+
298
+ @property
299
+ @pulumi.getter(name="destPort")
300
+ def dest_port(self) -> Optional[pulumi.Input[str]]:
301
+ """
302
+ The destination port of traffic access in the access control policy. Value:
303
+ - When the protocol type is set to ICMP, the value of DestPort is null.
304
+ > **NOTE:** When the protocol type is ICMP, access control on the destination port is not supported.
305
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) IS group, the value of DestPort is null.
306
+ > **NOTE:** When you select group (destination port address book) for the destination port type of the access control policy, you do not need to set a specific destination port number. All ports that need to be controlled by this access control policy are included in the destination port address book.
307
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) is port, the value of DestPort is the destination port number.
308
+ """
309
+ return pulumi.get(self, "dest_port")
310
+
311
+ @dest_port.setter
312
+ def dest_port(self, value: Optional[pulumi.Input[str]]):
313
+ pulumi.set(self, "dest_port", value)
314
+
315
+ @property
316
+ @pulumi.getter(name="destPortGroup")
317
+ def dest_port_group(self) -> Optional[pulumi.Input[str]]:
318
+ """
319
+ The address book name of the destination port of the access traffic in the access control policy.
320
+ > **NOTE:** When DestPortType is set to group, you need to set the destination port address book name.
321
+ """
322
+ return pulumi.get(self, "dest_port_group")
323
+
324
+ @dest_port_group.setter
325
+ def dest_port_group(self, value: Optional[pulumi.Input[str]]):
326
+ pulumi.set(self, "dest_port_group", value)
327
+
328
+ @property
329
+ @pulumi.getter(name="destPortType")
330
+ def dest_port_type(self) -> Optional[pulumi.Input[str]]:
331
+ """
332
+ The destination port type of the access traffic in the security access control policy.
333
+ - **port**: port
334
+ - **group**: Port Address Book.
335
+ """
336
+ return pulumi.get(self, "dest_port_type")
337
+
338
+ @dest_port_type.setter
339
+ def dest_port_type(self, value: Optional[pulumi.Input[str]]):
340
+ pulumi.set(self, "dest_port_type", value)
341
+
342
+ @property
343
+ @pulumi.getter(name="domainResolveType")
344
+ def domain_resolve_type(self) -> Optional[pulumi.Input[int]]:
345
+ """
346
+ The domain name resolution method of the access control policy. The policy is enabled by default after it is created. Valid values:
347
+ - **0**: Based on FQDN
348
+ - **1**: DNS-based dynamic resolution
349
+ - **2**: dynamic resolution based on FQDN and DNS.
350
+ """
351
+ return pulumi.get(self, "domain_resolve_type")
352
+
353
+ @domain_resolve_type.setter
354
+ def domain_resolve_type(self, value: Optional[pulumi.Input[int]]):
355
+ pulumi.set(self, "domain_resolve_type", value)
356
+
357
+ @property
358
+ @pulumi.getter(name="endTime")
359
+ def end_time(self) -> Optional[pulumi.Input[int]]:
360
+ """
361
+ The end time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. Must be full or half time and at least half an hour greater than the start time.
362
+ > **NOTE:** When RepeatType is set to permit, EndTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, EndTime must have a value and you need to set the end time.
363
+ """
364
+ return pulumi.get(self, "end_time")
365
+
366
+ @end_time.setter
367
+ def end_time(self, value: Optional[pulumi.Input[int]]):
368
+ pulumi.set(self, "end_time", value)
369
+
370
+ @property
371
+ @pulumi.getter(name="ipVersion")
372
+ def ip_version(self) -> Optional[pulumi.Input[str]]:
373
+ """
374
+ Supported IP address version. Value:
375
+ - **4** (default): indicates the IPv4 address.
376
+ """
377
+ return pulumi.get(self, "ip_version")
378
+
379
+ @ip_version.setter
380
+ def ip_version(self, value: Optional[pulumi.Input[str]]):
381
+ pulumi.set(self, "ip_version", value)
382
+
383
+ @property
384
+ @pulumi.getter
385
+ def release(self) -> Optional[pulumi.Input[str]]:
386
+ """
387
+ The enabled status of the access control policy. The policy is enabled by default after it is created. Value:
388
+ - **true**: Enable access control policy
389
+ - **false**: Do not enable access control policies.
390
+ """
391
+ return pulumi.get(self, "release")
392
+
393
+ @release.setter
394
+ def release(self, value: Optional[pulumi.Input[str]]):
395
+ pulumi.set(self, "release", value)
396
+
397
+ @property
398
+ @pulumi.getter(name="repeatDays")
399
+ def repeat_days(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]:
400
+ """
401
+ Collection of recurring dates for the policy validity period of the access control policy.
402
+ - When RepeatType is 'Permanent', 'None', 'Daily', RepeatDays is an empty collection. For example:[]
403
+ - When RepeatType is Weekly, RepeatDays cannot be empty. For example:["0", "6"]. When the RepeatType is set to Weekly, RepeatDays cannot be repeated.
404
+ - RepeatDays cannot be empty when RepeatType is 'Monthly. For example:[1, 31]. When RepeatType is set to Monthly, RepeatDays cannot be repeated.
405
+ """
406
+ return pulumi.get(self, "repeat_days")
407
+
408
+ @repeat_days.setter
409
+ def repeat_days(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]):
410
+ pulumi.set(self, "repeat_days", value)
411
+
412
+ @property
413
+ @pulumi.getter(name="repeatEndTime")
414
+ def repeat_end_time(self) -> Optional[pulumi.Input[str]]:
415
+ """
416
+ The recurring end time of the policy validity period of the access control policy. For example: 23:30, it must be the whole point or half point time, and at least half an hour greater than the repeat start time.
417
+ > **NOTE:** When RepeatType is set to normal or None, RepeatEndTime is null. When the RepeatType is Daily, Weekly, or Monthly, the RepeatEndTime must have a value, and you need to set the repeat end time.
418
+ """
419
+ return pulumi.get(self, "repeat_end_time")
420
+
421
+ @repeat_end_time.setter
422
+ def repeat_end_time(self, value: Optional[pulumi.Input[str]]):
423
+ pulumi.set(self, "repeat_end_time", value)
424
+
425
+ @property
426
+ @pulumi.getter(name="repeatStartTime")
427
+ def repeat_start_time(self) -> Optional[pulumi.Input[str]]:
428
+ """
429
+ The recurring start time of the policy validity period of the access control policy. For example: 08:00, it must be the whole point or half point time, and at least half an hour less than the repeat end time.
430
+ > **NOTE:** When RepeatType is set to permit or None, RepeatStartTime is empty. When the RepeatType is Daily, Weekly, or Monthly, the RepeatStartTime must have a value and you need to set the repeat start time.
431
+ """
432
+ return pulumi.get(self, "repeat_start_time")
433
+
434
+ @repeat_start_time.setter
435
+ def repeat_start_time(self, value: Optional[pulumi.Input[str]]):
436
+ pulumi.set(self, "repeat_start_time", value)
437
+
438
+ @property
439
+ @pulumi.getter(name="repeatType")
440
+ def repeat_type(self) -> Optional[pulumi.Input[str]]:
441
+ """
442
+ The type of repetition for the policy validity period of the access control policy. Value:
443
+ - **Permit** (default): Always
444
+ - **None**: Specify a single time
445
+ - **Daily**: Daily
446
+ - **Weekly**: Weekly
447
+ - **Monthly**: Monthly.
448
+ """
449
+ return pulumi.get(self, "repeat_type")
450
+
451
+ @repeat_type.setter
452
+ def repeat_type(self, value: Optional[pulumi.Input[str]]):
453
+ pulumi.set(self, "repeat_type", value)
454
+
455
+ @property
456
+ @pulumi.getter(name="startTime")
457
+ def start_time(self) -> Optional[pulumi.Input[int]]:
458
+ """
459
+ The start time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. It must be a full or half hour and at least half an hour less than the end time.
460
+ > **NOTE:** When RepeatType is set to normal, StartTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, StartTime must have a value and you need to set the start time.
461
+ """
462
+ return pulumi.get(self, "start_time")
463
+
464
+ @start_time.setter
465
+ def start_time(self, value: Optional[pulumi.Input[int]]):
466
+ pulumi.set(self, "start_time", value)
467
+
468
+
469
+ @pulumi.input_type
470
+ class _NatFirewallControlPolicyState:
471
+ def __init__(__self__, *,
472
+ acl_action: Optional[pulumi.Input[str]] = None,
473
+ acl_uuid: Optional[pulumi.Input[str]] = None,
474
+ application_name_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
475
+ create_time: Optional[pulumi.Input[int]] = None,
476
+ description: Optional[pulumi.Input[str]] = None,
477
+ dest_port: Optional[pulumi.Input[str]] = None,
478
+ dest_port_group: Optional[pulumi.Input[str]] = None,
479
+ dest_port_type: Optional[pulumi.Input[str]] = None,
480
+ destination: Optional[pulumi.Input[str]] = None,
481
+ destination_type: Optional[pulumi.Input[str]] = None,
482
+ direction: Optional[pulumi.Input[str]] = None,
483
+ domain_resolve_type: Optional[pulumi.Input[int]] = None,
484
+ end_time: Optional[pulumi.Input[int]] = None,
485
+ ip_version: Optional[pulumi.Input[str]] = None,
486
+ nat_gateway_id: Optional[pulumi.Input[str]] = None,
487
+ new_order: Optional[pulumi.Input[str]] = None,
488
+ proto: Optional[pulumi.Input[str]] = None,
489
+ release: Optional[pulumi.Input[str]] = None,
490
+ repeat_days: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
491
+ repeat_end_time: Optional[pulumi.Input[str]] = None,
492
+ repeat_start_time: Optional[pulumi.Input[str]] = None,
493
+ repeat_type: Optional[pulumi.Input[str]] = None,
494
+ source: Optional[pulumi.Input[str]] = None,
495
+ source_type: Optional[pulumi.Input[str]] = None,
496
+ start_time: Optional[pulumi.Input[int]] = None):
497
+ """
498
+ Input properties used for looking up and filtering NatFirewallControlPolicy resources.
499
+ :param pulumi.Input[str] acl_action: The method (action) of access traffic passing through Cloud Firewall in the security access control policy. Valid values:
500
+ - **accept**: Release
501
+ - **drop**: Refused
502
+ - **log**: Observation.
503
+ :param pulumi.Input[str] acl_uuid: The unique ID of the security access control policy.
504
+ > **NOTE:** To modify a security access control policy, you need to provide the unique ID of the policy. You can call the DescribeNatFirewallControlPolicy interface to obtain the ID.
505
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] application_name_lists: The list of application types supported by the access control policy.
506
+ :param pulumi.Input[int] create_time: The time when the policy was created.
507
+ :param pulumi.Input[str] description: The description of the access control policy.
508
+ :param pulumi.Input[str] dest_port: The destination port of traffic access in the access control policy. Value:
509
+ - When the protocol type is set to ICMP, the value of DestPort is null.
510
+ > **NOTE:** When the protocol type is ICMP, access control on the destination port is not supported.
511
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) IS group, the value of DestPort is null.
512
+ > **NOTE:** When you select group (destination port address book) for the destination port type of the access control policy, you do not need to set a specific destination port number. All ports that need to be controlled by this access control policy are included in the destination port address book.
513
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) is port, the value of DestPort is the destination port number.
514
+ :param pulumi.Input[str] dest_port_group: The address book name of the destination port of the access traffic in the access control policy.
515
+ > **NOTE:** When DestPortType is set to group, you need to set the destination port address book name.
516
+ :param pulumi.Input[str] dest_port_type: The destination port type of the access traffic in the security access control policy.
517
+ - **port**: port
518
+ - **group**: Port Address Book.
519
+ :param pulumi.Input[str] destination: The destination address segment in the access control policy. Valid values:
520
+ - When DestinationType is net, Destination is the Destination CIDR. For example: 1.2.XX.XX/24
521
+ - When DestinationType IS group, Destination is the name of the Destination address book. For example: db_group
522
+ - When DestinationType is domain, Destination is the Destination domain name. For example: * .aliyuncs.com
523
+ - When DestinationType is location, Destination is the Destination region. For example: \\["BJ11", "ZB"\\].
524
+ :param pulumi.Input[str] destination_type: The destination address type in the access control policy. Valid values:
525
+ - **net**: Destination Network segment (CIDR address)
526
+ - **group**: Destination Address Book
527
+ - **domain**: the destination domain name.
528
+ :param pulumi.Input[str] direction: The traffic direction of the access control policy. Valid values:
529
+ - **out**: Internal and external traffic access control.
530
+ :param pulumi.Input[int] domain_resolve_type: The domain name resolution method of the access control policy. The policy is enabled by default after it is created. Valid values:
531
+ - **0**: Based on FQDN
532
+ - **1**: DNS-based dynamic resolution
533
+ - **2**: dynamic resolution based on FQDN and DNS.
534
+ :param pulumi.Input[int] end_time: The end time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. Must be full or half time and at least half an hour greater than the start time.
535
+ > **NOTE:** When RepeatType is set to permit, EndTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, EndTime must have a value and you need to set the end time.
536
+ :param pulumi.Input[str] ip_version: Supported IP address version. Value:
537
+ - **4** (default): indicates the IPv4 address.
538
+ :param pulumi.Input[str] nat_gateway_id: The ID of the NAT gateway instance.
539
+ :param pulumi.Input[str] new_order: The priority for the access control policy to take effect. The priority number increases sequentially from 1, and the smaller the priority number, the higher the priority.
540
+ :param pulumi.Input[str] proto: The security protocol type for traffic access in the access control policy. Valid values:
541
+ - ANY (indicates that all protocol types are queried)
542
+ - TCP
543
+ - UDP
544
+ - ICMP.
545
+ :param pulumi.Input[str] release: The enabled status of the access control policy. The policy is enabled by default after it is created. Value:
546
+ - **true**: Enable access control policy
547
+ - **false**: Do not enable access control policies.
548
+ :param pulumi.Input[Sequence[pulumi.Input[int]]] repeat_days: Collection of recurring dates for the policy validity period of the access control policy.
549
+ - When RepeatType is 'Permanent', 'None', 'Daily', RepeatDays is an empty collection. For example:[]
550
+ - When RepeatType is Weekly, RepeatDays cannot be empty. For example:["0", "6"]. When the RepeatType is set to Weekly, RepeatDays cannot be repeated.
551
+ - RepeatDays cannot be empty when RepeatType is 'Monthly. For example:[1, 31]. When RepeatType is set to Monthly, RepeatDays cannot be repeated.
552
+ :param pulumi.Input[str] repeat_end_time: The recurring end time of the policy validity period of the access control policy. For example: 23:30, it must be the whole point or half point time, and at least half an hour greater than the repeat start time.
553
+ > **NOTE:** When RepeatType is set to normal or None, RepeatEndTime is null. When the RepeatType is Daily, Weekly, or Monthly, the RepeatEndTime must have a value, and you need to set the repeat end time.
554
+ :param pulumi.Input[str] repeat_start_time: The recurring start time of the policy validity period of the access control policy. For example: 08:00, it must be the whole point or half point time, and at least half an hour less than the repeat end time.
555
+ > **NOTE:** When RepeatType is set to permit or None, RepeatStartTime is empty. When the RepeatType is Daily, Weekly, or Monthly, the RepeatStartTime must have a value and you need to set the repeat start time.
556
+ :param pulumi.Input[str] repeat_type: The type of repetition for the policy validity period of the access control policy. Value:
557
+ - **Permit** (default): Always
558
+ - **None**: Specify a single time
559
+ - **Daily**: Daily
560
+ - **Weekly**: Weekly
561
+ - **Monthly**: Monthly.
562
+ :param pulumi.Input[str] source: The source address in the access control policy. Valid values:
563
+ - When **SourceType** is set to 'net', Source is the Source CIDR address. For example: 10.2.4.0/24
564
+ - When **SourceType** is set to 'group', Source is the name of the Source address book. For example: db_group.
565
+ :param pulumi.Input[str] source_type: The source address type in the access control policy. Valid values:
566
+ - **net**: the source network segment (CIDR address)
567
+ - **group**: source address book
568
+ :param pulumi.Input[int] start_time: The start time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. It must be a full or half hour and at least half an hour less than the end time.
569
+ > **NOTE:** When RepeatType is set to normal, StartTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, StartTime must have a value and you need to set the start time.
570
+ """
571
+ if acl_action is not None:
572
+ pulumi.set(__self__, "acl_action", acl_action)
573
+ if acl_uuid is not None:
574
+ pulumi.set(__self__, "acl_uuid", acl_uuid)
575
+ if application_name_lists is not None:
576
+ pulumi.set(__self__, "application_name_lists", application_name_lists)
577
+ if create_time is not None:
578
+ pulumi.set(__self__, "create_time", create_time)
579
+ if description is not None:
580
+ pulumi.set(__self__, "description", description)
581
+ if dest_port is not None:
582
+ pulumi.set(__self__, "dest_port", dest_port)
583
+ if dest_port_group is not None:
584
+ pulumi.set(__self__, "dest_port_group", dest_port_group)
585
+ if dest_port_type is not None:
586
+ pulumi.set(__self__, "dest_port_type", dest_port_type)
587
+ if destination is not None:
588
+ pulumi.set(__self__, "destination", destination)
589
+ if destination_type is not None:
590
+ pulumi.set(__self__, "destination_type", destination_type)
591
+ if direction is not None:
592
+ pulumi.set(__self__, "direction", direction)
593
+ if domain_resolve_type is not None:
594
+ pulumi.set(__self__, "domain_resolve_type", domain_resolve_type)
595
+ if end_time is not None:
596
+ pulumi.set(__self__, "end_time", end_time)
597
+ if ip_version is not None:
598
+ pulumi.set(__self__, "ip_version", ip_version)
599
+ if nat_gateway_id is not None:
600
+ pulumi.set(__self__, "nat_gateway_id", nat_gateway_id)
601
+ if new_order is not None:
602
+ pulumi.set(__self__, "new_order", new_order)
603
+ if proto is not None:
604
+ pulumi.set(__self__, "proto", proto)
605
+ if release is not None:
606
+ pulumi.set(__self__, "release", release)
607
+ if repeat_days is not None:
608
+ pulumi.set(__self__, "repeat_days", repeat_days)
609
+ if repeat_end_time is not None:
610
+ pulumi.set(__self__, "repeat_end_time", repeat_end_time)
611
+ if repeat_start_time is not None:
612
+ pulumi.set(__self__, "repeat_start_time", repeat_start_time)
613
+ if repeat_type is not None:
614
+ pulumi.set(__self__, "repeat_type", repeat_type)
615
+ if source is not None:
616
+ pulumi.set(__self__, "source", source)
617
+ if source_type is not None:
618
+ pulumi.set(__self__, "source_type", source_type)
619
+ if start_time is not None:
620
+ pulumi.set(__self__, "start_time", start_time)
621
+
622
+ @property
623
+ @pulumi.getter(name="aclAction")
624
+ def acl_action(self) -> Optional[pulumi.Input[str]]:
625
+ """
626
+ The method (action) of access traffic passing through Cloud Firewall in the security access control policy. Valid values:
627
+ - **accept**: Release
628
+ - **drop**: Refused
629
+ - **log**: Observation.
630
+ """
631
+ return pulumi.get(self, "acl_action")
632
+
633
+ @acl_action.setter
634
+ def acl_action(self, value: Optional[pulumi.Input[str]]):
635
+ pulumi.set(self, "acl_action", value)
636
+
637
+ @property
638
+ @pulumi.getter(name="aclUuid")
639
+ def acl_uuid(self) -> Optional[pulumi.Input[str]]:
640
+ """
641
+ The unique ID of the security access control policy.
642
+ > **NOTE:** To modify a security access control policy, you need to provide the unique ID of the policy. You can call the DescribeNatFirewallControlPolicy interface to obtain the ID.
643
+ """
644
+ return pulumi.get(self, "acl_uuid")
645
+
646
+ @acl_uuid.setter
647
+ def acl_uuid(self, value: Optional[pulumi.Input[str]]):
648
+ pulumi.set(self, "acl_uuid", value)
649
+
650
+ @property
651
+ @pulumi.getter(name="applicationNameLists")
652
+ def application_name_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
653
+ """
654
+ The list of application types supported by the access control policy.
655
+ """
656
+ return pulumi.get(self, "application_name_lists")
657
+
658
+ @application_name_lists.setter
659
+ def application_name_lists(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
660
+ pulumi.set(self, "application_name_lists", value)
661
+
662
+ @property
663
+ @pulumi.getter(name="createTime")
664
+ def create_time(self) -> Optional[pulumi.Input[int]]:
665
+ """
666
+ The time when the policy was created.
667
+ """
668
+ return pulumi.get(self, "create_time")
669
+
670
+ @create_time.setter
671
+ def create_time(self, value: Optional[pulumi.Input[int]]):
672
+ pulumi.set(self, "create_time", value)
673
+
674
+ @property
675
+ @pulumi.getter
676
+ def description(self) -> Optional[pulumi.Input[str]]:
677
+ """
678
+ The description of the access control policy.
679
+ """
680
+ return pulumi.get(self, "description")
681
+
682
+ @description.setter
683
+ def description(self, value: Optional[pulumi.Input[str]]):
684
+ pulumi.set(self, "description", value)
685
+
686
+ @property
687
+ @pulumi.getter(name="destPort")
688
+ def dest_port(self) -> Optional[pulumi.Input[str]]:
689
+ """
690
+ The destination port of traffic access in the access control policy. Value:
691
+ - When the protocol type is set to ICMP, the value of DestPort is null.
692
+ > **NOTE:** When the protocol type is ICMP, access control on the destination port is not supported.
693
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) IS group, the value of DestPort is null.
694
+ > **NOTE:** When you select group (destination port address book) for the destination port type of the access control policy, you do not need to set a specific destination port number. All ports that need to be controlled by this access control policy are included in the destination port address book.
695
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) is port, the value of DestPort is the destination port number.
696
+ """
697
+ return pulumi.get(self, "dest_port")
698
+
699
+ @dest_port.setter
700
+ def dest_port(self, value: Optional[pulumi.Input[str]]):
701
+ pulumi.set(self, "dest_port", value)
702
+
703
+ @property
704
+ @pulumi.getter(name="destPortGroup")
705
+ def dest_port_group(self) -> Optional[pulumi.Input[str]]:
706
+ """
707
+ The address book name of the destination port of the access traffic in the access control policy.
708
+ > **NOTE:** When DestPortType is set to group, you need to set the destination port address book name.
709
+ """
710
+ return pulumi.get(self, "dest_port_group")
711
+
712
+ @dest_port_group.setter
713
+ def dest_port_group(self, value: Optional[pulumi.Input[str]]):
714
+ pulumi.set(self, "dest_port_group", value)
715
+
716
+ @property
717
+ @pulumi.getter(name="destPortType")
718
+ def dest_port_type(self) -> Optional[pulumi.Input[str]]:
719
+ """
720
+ The destination port type of the access traffic in the security access control policy.
721
+ - **port**: port
722
+ - **group**: Port Address Book.
723
+ """
724
+ return pulumi.get(self, "dest_port_type")
725
+
726
+ @dest_port_type.setter
727
+ def dest_port_type(self, value: Optional[pulumi.Input[str]]):
728
+ pulumi.set(self, "dest_port_type", value)
729
+
730
+ @property
731
+ @pulumi.getter
732
+ def destination(self) -> Optional[pulumi.Input[str]]:
733
+ """
734
+ The destination address segment in the access control policy. Valid values:
735
+ - When DestinationType is net, Destination is the Destination CIDR. For example: 1.2.XX.XX/24
736
+ - When DestinationType IS group, Destination is the name of the Destination address book. For example: db_group
737
+ - When DestinationType is domain, Destination is the Destination domain name. For example: * .aliyuncs.com
738
+ - When DestinationType is location, Destination is the Destination region. For example: \\["BJ11", "ZB"\\].
739
+ """
740
+ return pulumi.get(self, "destination")
741
+
742
+ @destination.setter
743
+ def destination(self, value: Optional[pulumi.Input[str]]):
744
+ pulumi.set(self, "destination", value)
745
+
746
+ @property
747
+ @pulumi.getter(name="destinationType")
748
+ def destination_type(self) -> Optional[pulumi.Input[str]]:
749
+ """
750
+ The destination address type in the access control policy. Valid values:
751
+ - **net**: Destination Network segment (CIDR address)
752
+ - **group**: Destination Address Book
753
+ - **domain**: the destination domain name.
754
+ """
755
+ return pulumi.get(self, "destination_type")
756
+
757
+ @destination_type.setter
758
+ def destination_type(self, value: Optional[pulumi.Input[str]]):
759
+ pulumi.set(self, "destination_type", value)
760
+
761
+ @property
762
+ @pulumi.getter
763
+ def direction(self) -> Optional[pulumi.Input[str]]:
764
+ """
765
+ The traffic direction of the access control policy. Valid values:
766
+ - **out**: Internal and external traffic access control.
767
+ """
768
+ return pulumi.get(self, "direction")
769
+
770
+ @direction.setter
771
+ def direction(self, value: Optional[pulumi.Input[str]]):
772
+ pulumi.set(self, "direction", value)
773
+
774
+ @property
775
+ @pulumi.getter(name="domainResolveType")
776
+ def domain_resolve_type(self) -> Optional[pulumi.Input[int]]:
777
+ """
778
+ The domain name resolution method of the access control policy. The policy is enabled by default after it is created. Valid values:
779
+ - **0**: Based on FQDN
780
+ - **1**: DNS-based dynamic resolution
781
+ - **2**: dynamic resolution based on FQDN and DNS.
782
+ """
783
+ return pulumi.get(self, "domain_resolve_type")
784
+
785
+ @domain_resolve_type.setter
786
+ def domain_resolve_type(self, value: Optional[pulumi.Input[int]]):
787
+ pulumi.set(self, "domain_resolve_type", value)
788
+
789
+ @property
790
+ @pulumi.getter(name="endTime")
791
+ def end_time(self) -> Optional[pulumi.Input[int]]:
792
+ """
793
+ The end time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. Must be full or half time and at least half an hour greater than the start time.
794
+ > **NOTE:** When RepeatType is set to permit, EndTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, EndTime must have a value and you need to set the end time.
795
+ """
796
+ return pulumi.get(self, "end_time")
797
+
798
+ @end_time.setter
799
+ def end_time(self, value: Optional[pulumi.Input[int]]):
800
+ pulumi.set(self, "end_time", value)
801
+
802
+ @property
803
+ @pulumi.getter(name="ipVersion")
804
+ def ip_version(self) -> Optional[pulumi.Input[str]]:
805
+ """
806
+ Supported IP address version. Value:
807
+ - **4** (default): indicates the IPv4 address.
808
+ """
809
+ return pulumi.get(self, "ip_version")
810
+
811
+ @ip_version.setter
812
+ def ip_version(self, value: Optional[pulumi.Input[str]]):
813
+ pulumi.set(self, "ip_version", value)
814
+
815
+ @property
816
+ @pulumi.getter(name="natGatewayId")
817
+ def nat_gateway_id(self) -> Optional[pulumi.Input[str]]:
818
+ """
819
+ The ID of the NAT gateway instance.
820
+ """
821
+ return pulumi.get(self, "nat_gateway_id")
822
+
823
+ @nat_gateway_id.setter
824
+ def nat_gateway_id(self, value: Optional[pulumi.Input[str]]):
825
+ pulumi.set(self, "nat_gateway_id", value)
826
+
827
+ @property
828
+ @pulumi.getter(name="newOrder")
829
+ def new_order(self) -> Optional[pulumi.Input[str]]:
830
+ """
831
+ The priority for the access control policy to take effect. The priority number increases sequentially from 1, and the smaller the priority number, the higher the priority.
832
+ """
833
+ return pulumi.get(self, "new_order")
834
+
835
+ @new_order.setter
836
+ def new_order(self, value: Optional[pulumi.Input[str]]):
837
+ pulumi.set(self, "new_order", value)
838
+
839
+ @property
840
+ @pulumi.getter
841
+ def proto(self) -> Optional[pulumi.Input[str]]:
842
+ """
843
+ The security protocol type for traffic access in the access control policy. Valid values:
844
+ - ANY (indicates that all protocol types are queried)
845
+ - TCP
846
+ - UDP
847
+ - ICMP.
848
+ """
849
+ return pulumi.get(self, "proto")
850
+
851
+ @proto.setter
852
+ def proto(self, value: Optional[pulumi.Input[str]]):
853
+ pulumi.set(self, "proto", value)
854
+
855
+ @property
856
+ @pulumi.getter
857
+ def release(self) -> Optional[pulumi.Input[str]]:
858
+ """
859
+ The enabled status of the access control policy. The policy is enabled by default after it is created. Value:
860
+ - **true**: Enable access control policy
861
+ - **false**: Do not enable access control policies.
862
+ """
863
+ return pulumi.get(self, "release")
864
+
865
+ @release.setter
866
+ def release(self, value: Optional[pulumi.Input[str]]):
867
+ pulumi.set(self, "release", value)
868
+
869
+ @property
870
+ @pulumi.getter(name="repeatDays")
871
+ def repeat_days(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]:
872
+ """
873
+ Collection of recurring dates for the policy validity period of the access control policy.
874
+ - When RepeatType is 'Permanent', 'None', 'Daily', RepeatDays is an empty collection. For example:[]
875
+ - When RepeatType is Weekly, RepeatDays cannot be empty. For example:["0", "6"]. When the RepeatType is set to Weekly, RepeatDays cannot be repeated.
876
+ - RepeatDays cannot be empty when RepeatType is 'Monthly. For example:[1, 31]. When RepeatType is set to Monthly, RepeatDays cannot be repeated.
877
+ """
878
+ return pulumi.get(self, "repeat_days")
879
+
880
+ @repeat_days.setter
881
+ def repeat_days(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]):
882
+ pulumi.set(self, "repeat_days", value)
883
+
884
+ @property
885
+ @pulumi.getter(name="repeatEndTime")
886
+ def repeat_end_time(self) -> Optional[pulumi.Input[str]]:
887
+ """
888
+ The recurring end time of the policy validity period of the access control policy. For example: 23:30, it must be the whole point or half point time, and at least half an hour greater than the repeat start time.
889
+ > **NOTE:** When RepeatType is set to normal or None, RepeatEndTime is null. When the RepeatType is Daily, Weekly, or Monthly, the RepeatEndTime must have a value, and you need to set the repeat end time.
890
+ """
891
+ return pulumi.get(self, "repeat_end_time")
892
+
893
+ @repeat_end_time.setter
894
+ def repeat_end_time(self, value: Optional[pulumi.Input[str]]):
895
+ pulumi.set(self, "repeat_end_time", value)
896
+
897
+ @property
898
+ @pulumi.getter(name="repeatStartTime")
899
+ def repeat_start_time(self) -> Optional[pulumi.Input[str]]:
900
+ """
901
+ The recurring start time of the policy validity period of the access control policy. For example: 08:00, it must be the whole point or half point time, and at least half an hour less than the repeat end time.
902
+ > **NOTE:** When RepeatType is set to permit or None, RepeatStartTime is empty. When the RepeatType is Daily, Weekly, or Monthly, the RepeatStartTime must have a value and you need to set the repeat start time.
903
+ """
904
+ return pulumi.get(self, "repeat_start_time")
905
+
906
+ @repeat_start_time.setter
907
+ def repeat_start_time(self, value: Optional[pulumi.Input[str]]):
908
+ pulumi.set(self, "repeat_start_time", value)
909
+
910
+ @property
911
+ @pulumi.getter(name="repeatType")
912
+ def repeat_type(self) -> Optional[pulumi.Input[str]]:
913
+ """
914
+ The type of repetition for the policy validity period of the access control policy. Value:
915
+ - **Permit** (default): Always
916
+ - **None**: Specify a single time
917
+ - **Daily**: Daily
918
+ - **Weekly**: Weekly
919
+ - **Monthly**: Monthly.
920
+ """
921
+ return pulumi.get(self, "repeat_type")
922
+
923
+ @repeat_type.setter
924
+ def repeat_type(self, value: Optional[pulumi.Input[str]]):
925
+ pulumi.set(self, "repeat_type", value)
926
+
927
+ @property
928
+ @pulumi.getter
929
+ def source(self) -> Optional[pulumi.Input[str]]:
930
+ """
931
+ The source address in the access control policy. Valid values:
932
+ - When **SourceType** is set to 'net', Source is the Source CIDR address. For example: 10.2.4.0/24
933
+ - When **SourceType** is set to 'group', Source is the name of the Source address book. For example: db_group.
934
+ """
935
+ return pulumi.get(self, "source")
936
+
937
+ @source.setter
938
+ def source(self, value: Optional[pulumi.Input[str]]):
939
+ pulumi.set(self, "source", value)
940
+
941
+ @property
942
+ @pulumi.getter(name="sourceType")
943
+ def source_type(self) -> Optional[pulumi.Input[str]]:
944
+ """
945
+ The source address type in the access control policy. Valid values:
946
+ - **net**: the source network segment (CIDR address)
947
+ - **group**: source address book
948
+ """
949
+ return pulumi.get(self, "source_type")
950
+
951
+ @source_type.setter
952
+ def source_type(self, value: Optional[pulumi.Input[str]]):
953
+ pulumi.set(self, "source_type", value)
954
+
955
+ @property
956
+ @pulumi.getter(name="startTime")
957
+ def start_time(self) -> Optional[pulumi.Input[int]]:
958
+ """
959
+ The start time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. It must be a full or half hour and at least half an hour less than the end time.
960
+ > **NOTE:** When RepeatType is set to normal, StartTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, StartTime must have a value and you need to set the start time.
961
+ """
962
+ return pulumi.get(self, "start_time")
963
+
964
+ @start_time.setter
965
+ def start_time(self, value: Optional[pulumi.Input[int]]):
966
+ pulumi.set(self, "start_time", value)
967
+
968
+
969
+ class NatFirewallControlPolicy(pulumi.CustomResource):
970
+ @overload
971
+ def __init__(__self__,
972
+ resource_name: str,
973
+ opts: Optional[pulumi.ResourceOptions] = None,
974
+ acl_action: Optional[pulumi.Input[str]] = None,
975
+ application_name_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
976
+ description: Optional[pulumi.Input[str]] = None,
977
+ dest_port: Optional[pulumi.Input[str]] = None,
978
+ dest_port_group: Optional[pulumi.Input[str]] = None,
979
+ dest_port_type: Optional[pulumi.Input[str]] = None,
980
+ destination: Optional[pulumi.Input[str]] = None,
981
+ destination_type: Optional[pulumi.Input[str]] = None,
982
+ direction: Optional[pulumi.Input[str]] = None,
983
+ domain_resolve_type: Optional[pulumi.Input[int]] = None,
984
+ end_time: Optional[pulumi.Input[int]] = None,
985
+ ip_version: Optional[pulumi.Input[str]] = None,
986
+ nat_gateway_id: Optional[pulumi.Input[str]] = None,
987
+ new_order: Optional[pulumi.Input[str]] = None,
988
+ proto: Optional[pulumi.Input[str]] = None,
989
+ release: Optional[pulumi.Input[str]] = None,
990
+ repeat_days: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
991
+ repeat_end_time: Optional[pulumi.Input[str]] = None,
992
+ repeat_start_time: Optional[pulumi.Input[str]] = None,
993
+ repeat_type: Optional[pulumi.Input[str]] = None,
994
+ source: Optional[pulumi.Input[str]] = None,
995
+ source_type: Optional[pulumi.Input[str]] = None,
996
+ start_time: Optional[pulumi.Input[int]] = None,
997
+ __props__=None):
998
+ """
999
+ Provides a Cloud Firewall Nat Firewall Control Policy resource. Nat firewall access control policy.
1000
+
1001
+ For information about Cloud Firewall Nat Firewall Control Policy and how to use it, see [What is Nat Firewall Control Policy](https://www.alibabacloud.com/help/en/cloud-firewall/developer-reference/api-cloudfw-2017-12-07-createnatfirewallcontrolpolicy).
1002
+
1003
+ > **NOTE:** Available since v1.224.0.
1004
+
1005
+ ## Import
1006
+
1007
+ Cloud Firewall Nat Firewall Control Policy can be imported using the id, e.g.
1008
+
1009
+ ```sh
1010
+ $ pulumi import alicloud:cloudfirewall/natFirewallControlPolicy:NatFirewallControlPolicy example <acl_uuid>:<nat_gateway_id>:<direction>
1011
+ ```
1012
+
1013
+ :param str resource_name: The name of the resource.
1014
+ :param pulumi.ResourceOptions opts: Options for the resource.
1015
+ :param pulumi.Input[str] acl_action: The method (action) of access traffic passing through Cloud Firewall in the security access control policy. Valid values:
1016
+ - **accept**: Release
1017
+ - **drop**: Refused
1018
+ - **log**: Observation.
1019
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] application_name_lists: The list of application types supported by the access control policy.
1020
+ :param pulumi.Input[str] description: The description of the access control policy.
1021
+ :param pulumi.Input[str] dest_port: The destination port of traffic access in the access control policy. Value:
1022
+ - When the protocol type is set to ICMP, the value of DestPort is null.
1023
+ > **NOTE:** When the protocol type is ICMP, access control on the destination port is not supported.
1024
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) IS group, the value of DestPort is null.
1025
+ > **NOTE:** When you select group (destination port address book) for the destination port type of the access control policy, you do not need to set a specific destination port number. All ports that need to be controlled by this access control policy are included in the destination port address book.
1026
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) is port, the value of DestPort is the destination port number.
1027
+ :param pulumi.Input[str] dest_port_group: The address book name of the destination port of the access traffic in the access control policy.
1028
+ > **NOTE:** When DestPortType is set to group, you need to set the destination port address book name.
1029
+ :param pulumi.Input[str] dest_port_type: The destination port type of the access traffic in the security access control policy.
1030
+ - **port**: port
1031
+ - **group**: Port Address Book.
1032
+ :param pulumi.Input[str] destination: The destination address segment in the access control policy. Valid values:
1033
+ - When DestinationType is net, Destination is the Destination CIDR. For example: 1.2.XX.XX/24
1034
+ - When DestinationType IS group, Destination is the name of the Destination address book. For example: db_group
1035
+ - When DestinationType is domain, Destination is the Destination domain name. For example: * .aliyuncs.com
1036
+ - When DestinationType is location, Destination is the Destination region. For example: \\["BJ11", "ZB"\\].
1037
+ :param pulumi.Input[str] destination_type: The destination address type in the access control policy. Valid values:
1038
+ - **net**: Destination Network segment (CIDR address)
1039
+ - **group**: Destination Address Book
1040
+ - **domain**: the destination domain name.
1041
+ :param pulumi.Input[str] direction: The traffic direction of the access control policy. Valid values:
1042
+ - **out**: Internal and external traffic access control.
1043
+ :param pulumi.Input[int] domain_resolve_type: The domain name resolution method of the access control policy. The policy is enabled by default after it is created. Valid values:
1044
+ - **0**: Based on FQDN
1045
+ - **1**: DNS-based dynamic resolution
1046
+ - **2**: dynamic resolution based on FQDN and DNS.
1047
+ :param pulumi.Input[int] end_time: The end time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. Must be full or half time and at least half an hour greater than the start time.
1048
+ > **NOTE:** When RepeatType is set to permit, EndTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, EndTime must have a value and you need to set the end time.
1049
+ :param pulumi.Input[str] ip_version: Supported IP address version. Value:
1050
+ - **4** (default): indicates the IPv4 address.
1051
+ :param pulumi.Input[str] nat_gateway_id: The ID of the NAT gateway instance.
1052
+ :param pulumi.Input[str] new_order: The priority for the access control policy to take effect. The priority number increases sequentially from 1, and the smaller the priority number, the higher the priority.
1053
+ :param pulumi.Input[str] proto: The security protocol type for traffic access in the access control policy. Valid values:
1054
+ - ANY (indicates that all protocol types are queried)
1055
+ - TCP
1056
+ - UDP
1057
+ - ICMP.
1058
+ :param pulumi.Input[str] release: The enabled status of the access control policy. The policy is enabled by default after it is created. Value:
1059
+ - **true**: Enable access control policy
1060
+ - **false**: Do not enable access control policies.
1061
+ :param pulumi.Input[Sequence[pulumi.Input[int]]] repeat_days: Collection of recurring dates for the policy validity period of the access control policy.
1062
+ - When RepeatType is 'Permanent', 'None', 'Daily', RepeatDays is an empty collection. For example:[]
1063
+ - When RepeatType is Weekly, RepeatDays cannot be empty. For example:["0", "6"]. When the RepeatType is set to Weekly, RepeatDays cannot be repeated.
1064
+ - RepeatDays cannot be empty when RepeatType is 'Monthly. For example:[1, 31]. When RepeatType is set to Monthly, RepeatDays cannot be repeated.
1065
+ :param pulumi.Input[str] repeat_end_time: The recurring end time of the policy validity period of the access control policy. For example: 23:30, it must be the whole point or half point time, and at least half an hour greater than the repeat start time.
1066
+ > **NOTE:** When RepeatType is set to normal or None, RepeatEndTime is null. When the RepeatType is Daily, Weekly, or Monthly, the RepeatEndTime must have a value, and you need to set the repeat end time.
1067
+ :param pulumi.Input[str] repeat_start_time: The recurring start time of the policy validity period of the access control policy. For example: 08:00, it must be the whole point or half point time, and at least half an hour less than the repeat end time.
1068
+ > **NOTE:** When RepeatType is set to permit or None, RepeatStartTime is empty. When the RepeatType is Daily, Weekly, or Monthly, the RepeatStartTime must have a value and you need to set the repeat start time.
1069
+ :param pulumi.Input[str] repeat_type: The type of repetition for the policy validity period of the access control policy. Value:
1070
+ - **Permit** (default): Always
1071
+ - **None**: Specify a single time
1072
+ - **Daily**: Daily
1073
+ - **Weekly**: Weekly
1074
+ - **Monthly**: Monthly.
1075
+ :param pulumi.Input[str] source: The source address in the access control policy. Valid values:
1076
+ - When **SourceType** is set to 'net', Source is the Source CIDR address. For example: 10.2.4.0/24
1077
+ - When **SourceType** is set to 'group', Source is the name of the Source address book. For example: db_group.
1078
+ :param pulumi.Input[str] source_type: The source address type in the access control policy. Valid values:
1079
+ - **net**: the source network segment (CIDR address)
1080
+ - **group**: source address book
1081
+ :param pulumi.Input[int] start_time: The start time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. It must be a full or half hour and at least half an hour less than the end time.
1082
+ > **NOTE:** When RepeatType is set to normal, StartTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, StartTime must have a value and you need to set the start time.
1083
+ """
1084
+ ...
1085
+ @overload
1086
+ def __init__(__self__,
1087
+ resource_name: str,
1088
+ args: NatFirewallControlPolicyArgs,
1089
+ opts: Optional[pulumi.ResourceOptions] = None):
1090
+ """
1091
+ Provides a Cloud Firewall Nat Firewall Control Policy resource. Nat firewall access control policy.
1092
+
1093
+ For information about Cloud Firewall Nat Firewall Control Policy and how to use it, see [What is Nat Firewall Control Policy](https://www.alibabacloud.com/help/en/cloud-firewall/developer-reference/api-cloudfw-2017-12-07-createnatfirewallcontrolpolicy).
1094
+
1095
+ > **NOTE:** Available since v1.224.0.
1096
+
1097
+ ## Import
1098
+
1099
+ Cloud Firewall Nat Firewall Control Policy can be imported using the id, e.g.
1100
+
1101
+ ```sh
1102
+ $ pulumi import alicloud:cloudfirewall/natFirewallControlPolicy:NatFirewallControlPolicy example <acl_uuid>:<nat_gateway_id>:<direction>
1103
+ ```
1104
+
1105
+ :param str resource_name: The name of the resource.
1106
+ :param NatFirewallControlPolicyArgs args: The arguments to use to populate this resource's properties.
1107
+ :param pulumi.ResourceOptions opts: Options for the resource.
1108
+ """
1109
+ ...
1110
+ def __init__(__self__, resource_name: str, *args, **kwargs):
1111
+ resource_args, opts = _utilities.get_resource_args_opts(NatFirewallControlPolicyArgs, pulumi.ResourceOptions, *args, **kwargs)
1112
+ if resource_args is not None:
1113
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
1114
+ else:
1115
+ __self__._internal_init(resource_name, *args, **kwargs)
1116
+
1117
+ def _internal_init(__self__,
1118
+ resource_name: str,
1119
+ opts: Optional[pulumi.ResourceOptions] = None,
1120
+ acl_action: Optional[pulumi.Input[str]] = None,
1121
+ application_name_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1122
+ description: Optional[pulumi.Input[str]] = None,
1123
+ dest_port: Optional[pulumi.Input[str]] = None,
1124
+ dest_port_group: Optional[pulumi.Input[str]] = None,
1125
+ dest_port_type: Optional[pulumi.Input[str]] = None,
1126
+ destination: Optional[pulumi.Input[str]] = None,
1127
+ destination_type: Optional[pulumi.Input[str]] = None,
1128
+ direction: Optional[pulumi.Input[str]] = None,
1129
+ domain_resolve_type: Optional[pulumi.Input[int]] = None,
1130
+ end_time: Optional[pulumi.Input[int]] = None,
1131
+ ip_version: Optional[pulumi.Input[str]] = None,
1132
+ nat_gateway_id: Optional[pulumi.Input[str]] = None,
1133
+ new_order: Optional[pulumi.Input[str]] = None,
1134
+ proto: Optional[pulumi.Input[str]] = None,
1135
+ release: Optional[pulumi.Input[str]] = None,
1136
+ repeat_days: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
1137
+ repeat_end_time: Optional[pulumi.Input[str]] = None,
1138
+ repeat_start_time: Optional[pulumi.Input[str]] = None,
1139
+ repeat_type: Optional[pulumi.Input[str]] = None,
1140
+ source: Optional[pulumi.Input[str]] = None,
1141
+ source_type: Optional[pulumi.Input[str]] = None,
1142
+ start_time: Optional[pulumi.Input[int]] = None,
1143
+ __props__=None):
1144
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1145
+ if not isinstance(opts, pulumi.ResourceOptions):
1146
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
1147
+ if opts.id is None:
1148
+ if __props__ is not None:
1149
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1150
+ __props__ = NatFirewallControlPolicyArgs.__new__(NatFirewallControlPolicyArgs)
1151
+
1152
+ if acl_action is None and not opts.urn:
1153
+ raise TypeError("Missing required property 'acl_action'")
1154
+ __props__.__dict__["acl_action"] = acl_action
1155
+ if application_name_lists is None and not opts.urn:
1156
+ raise TypeError("Missing required property 'application_name_lists'")
1157
+ __props__.__dict__["application_name_lists"] = application_name_lists
1158
+ if description is None and not opts.urn:
1159
+ raise TypeError("Missing required property 'description'")
1160
+ __props__.__dict__["description"] = description
1161
+ __props__.__dict__["dest_port"] = dest_port
1162
+ __props__.__dict__["dest_port_group"] = dest_port_group
1163
+ __props__.__dict__["dest_port_type"] = dest_port_type
1164
+ if destination is None and not opts.urn:
1165
+ raise TypeError("Missing required property 'destination'")
1166
+ __props__.__dict__["destination"] = destination
1167
+ if destination_type is None and not opts.urn:
1168
+ raise TypeError("Missing required property 'destination_type'")
1169
+ __props__.__dict__["destination_type"] = destination_type
1170
+ if direction is None and not opts.urn:
1171
+ raise TypeError("Missing required property 'direction'")
1172
+ __props__.__dict__["direction"] = direction
1173
+ __props__.__dict__["domain_resolve_type"] = domain_resolve_type
1174
+ __props__.__dict__["end_time"] = end_time
1175
+ __props__.__dict__["ip_version"] = ip_version
1176
+ if nat_gateway_id is None and not opts.urn:
1177
+ raise TypeError("Missing required property 'nat_gateway_id'")
1178
+ __props__.__dict__["nat_gateway_id"] = nat_gateway_id
1179
+ if new_order is None and not opts.urn:
1180
+ raise TypeError("Missing required property 'new_order'")
1181
+ __props__.__dict__["new_order"] = new_order
1182
+ if proto is None and not opts.urn:
1183
+ raise TypeError("Missing required property 'proto'")
1184
+ __props__.__dict__["proto"] = proto
1185
+ __props__.__dict__["release"] = release
1186
+ __props__.__dict__["repeat_days"] = repeat_days
1187
+ __props__.__dict__["repeat_end_time"] = repeat_end_time
1188
+ __props__.__dict__["repeat_start_time"] = repeat_start_time
1189
+ __props__.__dict__["repeat_type"] = repeat_type
1190
+ if source is None and not opts.urn:
1191
+ raise TypeError("Missing required property 'source'")
1192
+ __props__.__dict__["source"] = source
1193
+ if source_type is None and not opts.urn:
1194
+ raise TypeError("Missing required property 'source_type'")
1195
+ __props__.__dict__["source_type"] = source_type
1196
+ __props__.__dict__["start_time"] = start_time
1197
+ __props__.__dict__["acl_uuid"] = None
1198
+ __props__.__dict__["create_time"] = None
1199
+ super(NatFirewallControlPolicy, __self__).__init__(
1200
+ 'alicloud:cloudfirewall/natFirewallControlPolicy:NatFirewallControlPolicy',
1201
+ resource_name,
1202
+ __props__,
1203
+ opts)
1204
+
1205
+ @staticmethod
1206
+ def get(resource_name: str,
1207
+ id: pulumi.Input[str],
1208
+ opts: Optional[pulumi.ResourceOptions] = None,
1209
+ acl_action: Optional[pulumi.Input[str]] = None,
1210
+ acl_uuid: Optional[pulumi.Input[str]] = None,
1211
+ application_name_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1212
+ create_time: Optional[pulumi.Input[int]] = None,
1213
+ description: Optional[pulumi.Input[str]] = None,
1214
+ dest_port: Optional[pulumi.Input[str]] = None,
1215
+ dest_port_group: Optional[pulumi.Input[str]] = None,
1216
+ dest_port_type: Optional[pulumi.Input[str]] = None,
1217
+ destination: Optional[pulumi.Input[str]] = None,
1218
+ destination_type: Optional[pulumi.Input[str]] = None,
1219
+ direction: Optional[pulumi.Input[str]] = None,
1220
+ domain_resolve_type: Optional[pulumi.Input[int]] = None,
1221
+ end_time: Optional[pulumi.Input[int]] = None,
1222
+ ip_version: Optional[pulumi.Input[str]] = None,
1223
+ nat_gateway_id: Optional[pulumi.Input[str]] = None,
1224
+ new_order: Optional[pulumi.Input[str]] = None,
1225
+ proto: Optional[pulumi.Input[str]] = None,
1226
+ release: Optional[pulumi.Input[str]] = None,
1227
+ repeat_days: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
1228
+ repeat_end_time: Optional[pulumi.Input[str]] = None,
1229
+ repeat_start_time: Optional[pulumi.Input[str]] = None,
1230
+ repeat_type: Optional[pulumi.Input[str]] = None,
1231
+ source: Optional[pulumi.Input[str]] = None,
1232
+ source_type: Optional[pulumi.Input[str]] = None,
1233
+ start_time: Optional[pulumi.Input[int]] = None) -> 'NatFirewallControlPolicy':
1234
+ """
1235
+ Get an existing NatFirewallControlPolicy resource's state with the given name, id, and optional extra
1236
+ properties used to qualify the lookup.
1237
+
1238
+ :param str resource_name: The unique name of the resulting resource.
1239
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1240
+ :param pulumi.ResourceOptions opts: Options for the resource.
1241
+ :param pulumi.Input[str] acl_action: The method (action) of access traffic passing through Cloud Firewall in the security access control policy. Valid values:
1242
+ - **accept**: Release
1243
+ - **drop**: Refused
1244
+ - **log**: Observation.
1245
+ :param pulumi.Input[str] acl_uuid: The unique ID of the security access control policy.
1246
+ > **NOTE:** To modify a security access control policy, you need to provide the unique ID of the policy. You can call the DescribeNatFirewallControlPolicy interface to obtain the ID.
1247
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] application_name_lists: The list of application types supported by the access control policy.
1248
+ :param pulumi.Input[int] create_time: The time when the policy was created.
1249
+ :param pulumi.Input[str] description: The description of the access control policy.
1250
+ :param pulumi.Input[str] dest_port: The destination port of traffic access in the access control policy. Value:
1251
+ - When the protocol type is set to ICMP, the value of DestPort is null.
1252
+ > **NOTE:** When the protocol type is ICMP, access control on the destination port is not supported.
1253
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) IS group, the value of DestPort is null.
1254
+ > **NOTE:** When you select group (destination port address book) for the destination port type of the access control policy, you do not need to set a specific destination port number. All ports that need to be controlled by this access control policy are included in the destination port address book.
1255
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) is port, the value of DestPort is the destination port number.
1256
+ :param pulumi.Input[str] dest_port_group: The address book name of the destination port of the access traffic in the access control policy.
1257
+ > **NOTE:** When DestPortType is set to group, you need to set the destination port address book name.
1258
+ :param pulumi.Input[str] dest_port_type: The destination port type of the access traffic in the security access control policy.
1259
+ - **port**: port
1260
+ - **group**: Port Address Book.
1261
+ :param pulumi.Input[str] destination: The destination address segment in the access control policy. Valid values:
1262
+ - When DestinationType is net, Destination is the Destination CIDR. For example: 1.2.XX.XX/24
1263
+ - When DestinationType IS group, Destination is the name of the Destination address book. For example: db_group
1264
+ - When DestinationType is domain, Destination is the Destination domain name. For example: * .aliyuncs.com
1265
+ - When DestinationType is location, Destination is the Destination region. For example: \\["BJ11", "ZB"\\].
1266
+ :param pulumi.Input[str] destination_type: The destination address type in the access control policy. Valid values:
1267
+ - **net**: Destination Network segment (CIDR address)
1268
+ - **group**: Destination Address Book
1269
+ - **domain**: the destination domain name.
1270
+ :param pulumi.Input[str] direction: The traffic direction of the access control policy. Valid values:
1271
+ - **out**: Internal and external traffic access control.
1272
+ :param pulumi.Input[int] domain_resolve_type: The domain name resolution method of the access control policy. The policy is enabled by default after it is created. Valid values:
1273
+ - **0**: Based on FQDN
1274
+ - **1**: DNS-based dynamic resolution
1275
+ - **2**: dynamic resolution based on FQDN and DNS.
1276
+ :param pulumi.Input[int] end_time: The end time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. Must be full or half time and at least half an hour greater than the start time.
1277
+ > **NOTE:** When RepeatType is set to permit, EndTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, EndTime must have a value and you need to set the end time.
1278
+ :param pulumi.Input[str] ip_version: Supported IP address version. Value:
1279
+ - **4** (default): indicates the IPv4 address.
1280
+ :param pulumi.Input[str] nat_gateway_id: The ID of the NAT gateway instance.
1281
+ :param pulumi.Input[str] new_order: The priority for the access control policy to take effect. The priority number increases sequentially from 1, and the smaller the priority number, the higher the priority.
1282
+ :param pulumi.Input[str] proto: The security protocol type for traffic access in the access control policy. Valid values:
1283
+ - ANY (indicates that all protocol types are queried)
1284
+ - TCP
1285
+ - UDP
1286
+ - ICMP.
1287
+ :param pulumi.Input[str] release: The enabled status of the access control policy. The policy is enabled by default after it is created. Value:
1288
+ - **true**: Enable access control policy
1289
+ - **false**: Do not enable access control policies.
1290
+ :param pulumi.Input[Sequence[pulumi.Input[int]]] repeat_days: Collection of recurring dates for the policy validity period of the access control policy.
1291
+ - When RepeatType is 'Permanent', 'None', 'Daily', RepeatDays is an empty collection. For example:[]
1292
+ - When RepeatType is Weekly, RepeatDays cannot be empty. For example:["0", "6"]. When the RepeatType is set to Weekly, RepeatDays cannot be repeated.
1293
+ - RepeatDays cannot be empty when RepeatType is 'Monthly. For example:[1, 31]. When RepeatType is set to Monthly, RepeatDays cannot be repeated.
1294
+ :param pulumi.Input[str] repeat_end_time: The recurring end time of the policy validity period of the access control policy. For example: 23:30, it must be the whole point or half point time, and at least half an hour greater than the repeat start time.
1295
+ > **NOTE:** When RepeatType is set to normal or None, RepeatEndTime is null. When the RepeatType is Daily, Weekly, or Monthly, the RepeatEndTime must have a value, and you need to set the repeat end time.
1296
+ :param pulumi.Input[str] repeat_start_time: The recurring start time of the policy validity period of the access control policy. For example: 08:00, it must be the whole point or half point time, and at least half an hour less than the repeat end time.
1297
+ > **NOTE:** When RepeatType is set to permit or None, RepeatStartTime is empty. When the RepeatType is Daily, Weekly, or Monthly, the RepeatStartTime must have a value and you need to set the repeat start time.
1298
+ :param pulumi.Input[str] repeat_type: The type of repetition for the policy validity period of the access control policy. Value:
1299
+ - **Permit** (default): Always
1300
+ - **None**: Specify a single time
1301
+ - **Daily**: Daily
1302
+ - **Weekly**: Weekly
1303
+ - **Monthly**: Monthly.
1304
+ :param pulumi.Input[str] source: The source address in the access control policy. Valid values:
1305
+ - When **SourceType** is set to 'net', Source is the Source CIDR address. For example: 10.2.4.0/24
1306
+ - When **SourceType** is set to 'group', Source is the name of the Source address book. For example: db_group.
1307
+ :param pulumi.Input[str] source_type: The source address type in the access control policy. Valid values:
1308
+ - **net**: the source network segment (CIDR address)
1309
+ - **group**: source address book
1310
+ :param pulumi.Input[int] start_time: The start time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. It must be a full or half hour and at least half an hour less than the end time.
1311
+ > **NOTE:** When RepeatType is set to normal, StartTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, StartTime must have a value and you need to set the start time.
1312
+ """
1313
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1314
+
1315
+ __props__ = _NatFirewallControlPolicyState.__new__(_NatFirewallControlPolicyState)
1316
+
1317
+ __props__.__dict__["acl_action"] = acl_action
1318
+ __props__.__dict__["acl_uuid"] = acl_uuid
1319
+ __props__.__dict__["application_name_lists"] = application_name_lists
1320
+ __props__.__dict__["create_time"] = create_time
1321
+ __props__.__dict__["description"] = description
1322
+ __props__.__dict__["dest_port"] = dest_port
1323
+ __props__.__dict__["dest_port_group"] = dest_port_group
1324
+ __props__.__dict__["dest_port_type"] = dest_port_type
1325
+ __props__.__dict__["destination"] = destination
1326
+ __props__.__dict__["destination_type"] = destination_type
1327
+ __props__.__dict__["direction"] = direction
1328
+ __props__.__dict__["domain_resolve_type"] = domain_resolve_type
1329
+ __props__.__dict__["end_time"] = end_time
1330
+ __props__.__dict__["ip_version"] = ip_version
1331
+ __props__.__dict__["nat_gateway_id"] = nat_gateway_id
1332
+ __props__.__dict__["new_order"] = new_order
1333
+ __props__.__dict__["proto"] = proto
1334
+ __props__.__dict__["release"] = release
1335
+ __props__.__dict__["repeat_days"] = repeat_days
1336
+ __props__.__dict__["repeat_end_time"] = repeat_end_time
1337
+ __props__.__dict__["repeat_start_time"] = repeat_start_time
1338
+ __props__.__dict__["repeat_type"] = repeat_type
1339
+ __props__.__dict__["source"] = source
1340
+ __props__.__dict__["source_type"] = source_type
1341
+ __props__.__dict__["start_time"] = start_time
1342
+ return NatFirewallControlPolicy(resource_name, opts=opts, __props__=__props__)
1343
+
1344
+ @property
1345
+ @pulumi.getter(name="aclAction")
1346
+ def acl_action(self) -> pulumi.Output[str]:
1347
+ """
1348
+ The method (action) of access traffic passing through Cloud Firewall in the security access control policy. Valid values:
1349
+ - **accept**: Release
1350
+ - **drop**: Refused
1351
+ - **log**: Observation.
1352
+ """
1353
+ return pulumi.get(self, "acl_action")
1354
+
1355
+ @property
1356
+ @pulumi.getter(name="aclUuid")
1357
+ def acl_uuid(self) -> pulumi.Output[str]:
1358
+ """
1359
+ The unique ID of the security access control policy.
1360
+ > **NOTE:** To modify a security access control policy, you need to provide the unique ID of the policy. You can call the DescribeNatFirewallControlPolicy interface to obtain the ID.
1361
+ """
1362
+ return pulumi.get(self, "acl_uuid")
1363
+
1364
+ @property
1365
+ @pulumi.getter(name="applicationNameLists")
1366
+ def application_name_lists(self) -> pulumi.Output[Sequence[str]]:
1367
+ """
1368
+ The list of application types supported by the access control policy.
1369
+ """
1370
+ return pulumi.get(self, "application_name_lists")
1371
+
1372
+ @property
1373
+ @pulumi.getter(name="createTime")
1374
+ def create_time(self) -> pulumi.Output[int]:
1375
+ """
1376
+ The time when the policy was created.
1377
+ """
1378
+ return pulumi.get(self, "create_time")
1379
+
1380
+ @property
1381
+ @pulumi.getter
1382
+ def description(self) -> pulumi.Output[str]:
1383
+ """
1384
+ The description of the access control policy.
1385
+ """
1386
+ return pulumi.get(self, "description")
1387
+
1388
+ @property
1389
+ @pulumi.getter(name="destPort")
1390
+ def dest_port(self) -> pulumi.Output[str]:
1391
+ """
1392
+ The destination port of traffic access in the access control policy. Value:
1393
+ - When the protocol type is set to ICMP, the value of DestPort is null.
1394
+ > **NOTE:** When the protocol type is ICMP, access control on the destination port is not supported.
1395
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) IS group, the value of DestPort is null.
1396
+ > **NOTE:** When you select group (destination port address book) for the destination port type of the access control policy, you do not need to set a specific destination port number. All ports that need to be controlled by this access control policy are included in the destination port address book.
1397
+ - When the protocol type is TCP, UDP, or ANY, and the destination port type (DestPortType) is port, the value of DestPort is the destination port number.
1398
+ """
1399
+ return pulumi.get(self, "dest_port")
1400
+
1401
+ @property
1402
+ @pulumi.getter(name="destPortGroup")
1403
+ def dest_port_group(self) -> pulumi.Output[Optional[str]]:
1404
+ """
1405
+ The address book name of the destination port of the access traffic in the access control policy.
1406
+ > **NOTE:** When DestPortType is set to group, you need to set the destination port address book name.
1407
+ """
1408
+ return pulumi.get(self, "dest_port_group")
1409
+
1410
+ @property
1411
+ @pulumi.getter(name="destPortType")
1412
+ def dest_port_type(self) -> pulumi.Output[str]:
1413
+ """
1414
+ The destination port type of the access traffic in the security access control policy.
1415
+ - **port**: port
1416
+ - **group**: Port Address Book.
1417
+ """
1418
+ return pulumi.get(self, "dest_port_type")
1419
+
1420
+ @property
1421
+ @pulumi.getter
1422
+ def destination(self) -> pulumi.Output[str]:
1423
+ """
1424
+ The destination address segment in the access control policy. Valid values:
1425
+ - When DestinationType is net, Destination is the Destination CIDR. For example: 1.2.XX.XX/24
1426
+ - When DestinationType IS group, Destination is the name of the Destination address book. For example: db_group
1427
+ - When DestinationType is domain, Destination is the Destination domain name. For example: * .aliyuncs.com
1428
+ - When DestinationType is location, Destination is the Destination region. For example: \\["BJ11", "ZB"\\].
1429
+ """
1430
+ return pulumi.get(self, "destination")
1431
+
1432
+ @property
1433
+ @pulumi.getter(name="destinationType")
1434
+ def destination_type(self) -> pulumi.Output[str]:
1435
+ """
1436
+ The destination address type in the access control policy. Valid values:
1437
+ - **net**: Destination Network segment (CIDR address)
1438
+ - **group**: Destination Address Book
1439
+ - **domain**: the destination domain name.
1440
+ """
1441
+ return pulumi.get(self, "destination_type")
1442
+
1443
+ @property
1444
+ @pulumi.getter
1445
+ def direction(self) -> pulumi.Output[str]:
1446
+ """
1447
+ The traffic direction of the access control policy. Valid values:
1448
+ - **out**: Internal and external traffic access control.
1449
+ """
1450
+ return pulumi.get(self, "direction")
1451
+
1452
+ @property
1453
+ @pulumi.getter(name="domainResolveType")
1454
+ def domain_resolve_type(self) -> pulumi.Output[Optional[int]]:
1455
+ """
1456
+ The domain name resolution method of the access control policy. The policy is enabled by default after it is created. Valid values:
1457
+ - **0**: Based on FQDN
1458
+ - **1**: DNS-based dynamic resolution
1459
+ - **2**: dynamic resolution based on FQDN and DNS.
1460
+ """
1461
+ return pulumi.get(self, "domain_resolve_type")
1462
+
1463
+ @property
1464
+ @pulumi.getter(name="endTime")
1465
+ def end_time(self) -> pulumi.Output[Optional[int]]:
1466
+ """
1467
+ The end time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. Must be full or half time and at least half an hour greater than the start time.
1468
+ > **NOTE:** When RepeatType is set to permit, EndTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, EndTime must have a value and you need to set the end time.
1469
+ """
1470
+ return pulumi.get(self, "end_time")
1471
+
1472
+ @property
1473
+ @pulumi.getter(name="ipVersion")
1474
+ def ip_version(self) -> pulumi.Output[Optional[str]]:
1475
+ """
1476
+ Supported IP address version. Value:
1477
+ - **4** (default): indicates the IPv4 address.
1478
+ """
1479
+ return pulumi.get(self, "ip_version")
1480
+
1481
+ @property
1482
+ @pulumi.getter(name="natGatewayId")
1483
+ def nat_gateway_id(self) -> pulumi.Output[str]:
1484
+ """
1485
+ The ID of the NAT gateway instance.
1486
+ """
1487
+ return pulumi.get(self, "nat_gateway_id")
1488
+
1489
+ @property
1490
+ @pulumi.getter(name="newOrder")
1491
+ def new_order(self) -> pulumi.Output[str]:
1492
+ """
1493
+ The priority for the access control policy to take effect. The priority number increases sequentially from 1, and the smaller the priority number, the higher the priority.
1494
+ """
1495
+ return pulumi.get(self, "new_order")
1496
+
1497
+ @property
1498
+ @pulumi.getter
1499
+ def proto(self) -> pulumi.Output[str]:
1500
+ """
1501
+ The security protocol type for traffic access in the access control policy. Valid values:
1502
+ - ANY (indicates that all protocol types are queried)
1503
+ - TCP
1504
+ - UDP
1505
+ - ICMP.
1506
+ """
1507
+ return pulumi.get(self, "proto")
1508
+
1509
+ @property
1510
+ @pulumi.getter
1511
+ def release(self) -> pulumi.Output[str]:
1512
+ """
1513
+ The enabled status of the access control policy. The policy is enabled by default after it is created. Value:
1514
+ - **true**: Enable access control policy
1515
+ - **false**: Do not enable access control policies.
1516
+ """
1517
+ return pulumi.get(self, "release")
1518
+
1519
+ @property
1520
+ @pulumi.getter(name="repeatDays")
1521
+ def repeat_days(self) -> pulumi.Output[Optional[Sequence[int]]]:
1522
+ """
1523
+ Collection of recurring dates for the policy validity period of the access control policy.
1524
+ - When RepeatType is 'Permanent', 'None', 'Daily', RepeatDays is an empty collection. For example:[]
1525
+ - When RepeatType is Weekly, RepeatDays cannot be empty. For example:["0", "6"]. When the RepeatType is set to Weekly, RepeatDays cannot be repeated.
1526
+ - RepeatDays cannot be empty when RepeatType is 'Monthly. For example:[1, 31]. When RepeatType is set to Monthly, RepeatDays cannot be repeated.
1527
+ """
1528
+ return pulumi.get(self, "repeat_days")
1529
+
1530
+ @property
1531
+ @pulumi.getter(name="repeatEndTime")
1532
+ def repeat_end_time(self) -> pulumi.Output[Optional[str]]:
1533
+ """
1534
+ The recurring end time of the policy validity period of the access control policy. For example: 23:30, it must be the whole point or half point time, and at least half an hour greater than the repeat start time.
1535
+ > **NOTE:** When RepeatType is set to normal or None, RepeatEndTime is null. When the RepeatType is Daily, Weekly, or Monthly, the RepeatEndTime must have a value, and you need to set the repeat end time.
1536
+ """
1537
+ return pulumi.get(self, "repeat_end_time")
1538
+
1539
+ @property
1540
+ @pulumi.getter(name="repeatStartTime")
1541
+ def repeat_start_time(self) -> pulumi.Output[Optional[str]]:
1542
+ """
1543
+ The recurring start time of the policy validity period of the access control policy. For example: 08:00, it must be the whole point or half point time, and at least half an hour less than the repeat end time.
1544
+ > **NOTE:** When RepeatType is set to permit or None, RepeatStartTime is empty. When the RepeatType is Daily, Weekly, or Monthly, the RepeatStartTime must have a value and you need to set the repeat start time.
1545
+ """
1546
+ return pulumi.get(self, "repeat_start_time")
1547
+
1548
+ @property
1549
+ @pulumi.getter(name="repeatType")
1550
+ def repeat_type(self) -> pulumi.Output[str]:
1551
+ """
1552
+ The type of repetition for the policy validity period of the access control policy. Value:
1553
+ - **Permit** (default): Always
1554
+ - **None**: Specify a single time
1555
+ - **Daily**: Daily
1556
+ - **Weekly**: Weekly
1557
+ - **Monthly**: Monthly.
1558
+ """
1559
+ return pulumi.get(self, "repeat_type")
1560
+
1561
+ @property
1562
+ @pulumi.getter
1563
+ def source(self) -> pulumi.Output[str]:
1564
+ """
1565
+ The source address in the access control policy. Valid values:
1566
+ - When **SourceType** is set to 'net', Source is the Source CIDR address. For example: 10.2.4.0/24
1567
+ - When **SourceType** is set to 'group', Source is the name of the Source address book. For example: db_group.
1568
+ """
1569
+ return pulumi.get(self, "source")
1570
+
1571
+ @property
1572
+ @pulumi.getter(name="sourceType")
1573
+ def source_type(self) -> pulumi.Output[str]:
1574
+ """
1575
+ The source address type in the access control policy. Valid values:
1576
+ - **net**: the source network segment (CIDR address)
1577
+ - **group**: source address book
1578
+ """
1579
+ return pulumi.get(self, "source_type")
1580
+
1581
+ @property
1582
+ @pulumi.getter(name="startTime")
1583
+ def start_time(self) -> pulumi.Output[Optional[int]]:
1584
+ """
1585
+ The start time of the policy validity period of the access control policy. Expresses using the second-level timestamp format. It must be a full or half hour and at least half an hour less than the end time.
1586
+ > **NOTE:** When RepeatType is set to normal, StartTime is null. When the RepeatType is None, Daily, Weekly, or Monthly, StartTime must have a value and you need to set the start time.
1587
+ """
1588
+ return pulumi.get(self, "start_time")
1589
+