pulumi-alicloud 3.86.0a1758340042__py3-none-any.whl → 3.89.0a1763702747__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.
- pulumi_alicloud/__init__.py +83 -0
- pulumi_alicloud/actiontrail/get_trails_deprecated.py +20 -0
- pulumi_alicloud/adb/resource_group.py +463 -3
- pulumi_alicloud/alikafka/topic.py +278 -85
- pulumi_alicloud/apig/_inputs.py +80 -6
- pulumi_alicloud/apig/gateway.py +111 -3
- pulumi_alicloud/apig/outputs.py +67 -4
- pulumi_alicloud/cas/certificate.py +248 -35
- pulumi_alicloud/cas/service_certificate.py +454 -168
- pulumi_alicloud/cen/get_transit_router_peer_attachments.py +20 -0
- pulumi_alicloud/cen/get_transit_router_vbr_attachments.py +20 -0
- pulumi_alicloud/cfg/_inputs.py +27 -24
- pulumi_alicloud/cfg/aggregator.py +142 -53
- pulumi_alicloud/cfg/outputs.py +18 -15
- pulumi_alicloud/cloudfirewall/__init__.py +1 -0
- pulumi_alicloud/cloudfirewall/get_nat_firewalls.py +132 -0
- pulumi_alicloud/cloudfirewall/get_tls_inspect_ca_certificates.py +214 -0
- pulumi_alicloud/cloudfirewall/outputs.py +30 -0
- pulumi_alicloud/cloudsso/__init__.py +1 -0
- pulumi_alicloud/cloudsso/get_user_provisioning_events.py +226 -0
- pulumi_alicloud/cloudsso/outputs.py +228 -0
- pulumi_alicloud/cloudsso/user.py +247 -80
- pulumi_alicloud/cms/_inputs.py +870 -10
- pulumi_alicloud/cms/get_site_monitors.py +2 -2
- pulumi_alicloud/cms/outputs.py +606 -6
- pulumi_alicloud/cms/site_monitor.py +360 -89
- pulumi_alicloud/cr/registry_enterprise_instance.py +63 -0
- pulumi_alicloud/cs/managed_kubernetes.py +6 -2
- pulumi_alicloud/ddos/domain_resource.py +89 -0
- pulumi_alicloud/dms/get_enterprise_logic_databases.py +8 -0
- pulumi_alicloud/dts/instance.py +14 -14
- pulumi_alicloud/eais/get_instances.py +8 -0
- pulumi_alicloud/ebs/dedicated_block_storage_cluster.py +32 -0
- pulumi_alicloud/eci/container_group.py +47 -0
- pulumi_alicloud/ecs/elasticity_assurance.py +279 -20
- pulumi_alicloud/ecs/instance.py +7 -7
- pulumi_alicloud/ecs/security_group_rule.py +7 -7
- pulumi_alicloud/edas/get_deploy_groups.py +4 -0
- pulumi_alicloud/eflo/node.py +153 -15
- pulumi_alicloud/emrv2/get_clusters.py +260 -0
- pulumi_alicloud/ens/load_balancer.py +8 -4
- pulumi_alicloud/esa/__init__.py +2 -0
- pulumi_alicloud/esa/_inputs.py +3774 -991
- pulumi_alicloud/esa/cache_rule.py +47 -0
- pulumi_alicloud/esa/certificate.py +21 -54
- pulumi_alicloud/esa/compression_rule.py +47 -0
- pulumi_alicloud/esa/http_response_header_modification_rule.py +89 -28
- pulumi_alicloud/esa/https_application_configuration.py +188 -0
- pulumi_alicloud/esa/https_basic_configuration.py +54 -7
- pulumi_alicloud/esa/image_transform.py +47 -0
- pulumi_alicloud/esa/load_balancer.py +999 -0
- pulumi_alicloud/esa/network_optimization.py +82 -21
- pulumi_alicloud/esa/origin_rule.py +470 -14
- pulumi_alicloud/esa/outputs.py +2080 -0
- pulumi_alicloud/esa/rate_plan_instance.py +64 -39
- pulumi_alicloud/esa/redirect_rule.py +68 -21
- pulumi_alicloud/esa/rewrite_url_rule.py +82 -56
- pulumi_alicloud/esa/waf_rule.py +510 -0
- pulumi_alicloud/ess/__init__.py +1 -0
- pulumi_alicloud/ess/_inputs.py +256 -0
- pulumi_alicloud/ess/alb_server_group_attachment.py +2 -2
- pulumi_alicloud/ess/attachment.py +10 -6
- pulumi_alicloud/ess/instance_refresh.py +760 -0
- pulumi_alicloud/ess/outputs.py +203 -0
- pulumi_alicloud/ess/scaling_configuration.py +2 -2
- pulumi_alicloud/ess/scaling_group.py +94 -0
- pulumi_alicloud/ess/server_group_attachment.py +2 -2
- pulumi_alicloud/ess/suspend_process.py +2 -2
- pulumi_alicloud/eventbridge/event_source.py +57 -57
- pulumi_alicloud/expressconnect/get_virtual_physical_connections.py +4 -0
- pulumi_alicloud/expressconnect/traffic_qos.py +137 -31
- pulumi_alicloud/expressconnect/traffic_qos_queue.py +91 -66
- pulumi_alicloud/expressconnect/traffic_qos_rule.py +307 -261
- pulumi_alicloud/expressconnect/vbr_pconn_association.py +105 -59
- pulumi_alicloud/ga/_inputs.py +56 -16
- pulumi_alicloud/ga/outputs.py +39 -11
- pulumi_alicloud/gpdb/get_zones.py +24 -0
- pulumi_alicloud/hbase/get_instance_types.py +32 -0
- pulumi_alicloud/hbr/policy_binding.py +7 -0
- pulumi_alicloud/kvstore/account.py +18 -18
- pulumi_alicloud/lindorm/instance_v2.py +358 -70
- pulumi_alicloud/log/_inputs.py +29 -9
- pulumi_alicloud/log/etl.py +56 -9
- pulumi_alicloud/log/get_projects.py +24 -0
- pulumi_alicloud/log/outputs.py +18 -6
- pulumi_alicloud/marketplace/get_products.py +26 -0
- pulumi_alicloud/mongodb/get_sharding_network_private_addresses.py +28 -0
- pulumi_alicloud/nas/get_access_rules.py +26 -0
- pulumi_alicloud/oss/_inputs.py +53 -0
- pulumi_alicloud/oss/bucket_logging.py +80 -29
- pulumi_alicloud/oss/bucket_replication.py +55 -8
- pulumi_alicloud/oss/outputs.py +31 -0
- pulumi_alicloud/ots/get_search_indexes.py +26 -0
- pulumi_alicloud/ots/get_secondary_indexes.py +26 -0
- pulumi_alicloud/polardb/__init__.py +3 -0
- pulumi_alicloud/polardb/cluster.py +14 -14
- pulumi_alicloud/polardb/zonal_account.py +449 -0
- pulumi_alicloud/polardb/zonal_db_cluster.py +1255 -0
- pulumi_alicloud/polardb/zonal_endpoint.py +865 -0
- pulumi_alicloud/pulumi-plugin.json +1 -1
- pulumi_alicloud/pvtz/get_service.py +12 -8
- pulumi_alicloud/ram/get_policies.py +95 -81
- pulumi_alicloud/ram/get_roles.py +108 -31
- pulumi_alicloud/ram/outputs.py +64 -42
- pulumi_alicloud/ram/policy.py +2 -2
- pulumi_alicloud/resourcemanager/__init__.py +2 -0
- pulumi_alicloud/resourcemanager/_inputs.py +799 -0
- pulumi_alicloud/resourcemanager/control_policy.py +169 -31
- pulumi_alicloud/resourcemanager/delivery_channel.py +449 -0
- pulumi_alicloud/resourcemanager/get_policies.py +4 -0
- pulumi_alicloud/resourcemanager/multi_account_delivery_channel.py +470 -0
- pulumi_alicloud/resourcemanager/outputs.py +694 -0
- pulumi_alicloud/resourcemanager/resource_share.py +341 -11
- pulumi_alicloud/sae/_inputs.py +60 -0
- pulumi_alicloud/sae/application.py +1 -1
- pulumi_alicloud/sae/get_ingresses.py +122 -0
- pulumi_alicloud/sae/outputs.py +42 -0
- pulumi_alicloud/scdn/domain_config.py +56 -0
- pulumi_alicloud/servicemesh/extension_provider.py +138 -0
- pulumi_alicloud/servicemesh/user_permission.py +90 -0
- pulumi_alicloud/simpleapplicationserver/get_images.py +24 -0
- pulumi_alicloud/sls/__init__.py +1 -0
- pulumi_alicloud/sls/get_indexs.py +304 -0
- pulumi_alicloud/sls/outputs.py +148 -0
- pulumi_alicloud/star_rocks_instance.py +8 -2
- pulumi_alicloud/starrocks/__init__.py +12 -0
- pulumi_alicloud/starrocks/_inputs.py +656 -0
- pulumi_alicloud/starrocks/instance.py +1427 -0
- pulumi_alicloud/starrocks/node_group.py +1298 -0
- pulumi_alicloud/starrocks/outputs.py +508 -0
- pulumi_alicloud/vpc/_inputs.py +84 -0
- pulumi_alicloud/vpc/bgp_group.py +250 -53
- pulumi_alicloud/vpc/bgp_network.py +83 -36
- pulumi_alicloud/vpc/common_bandwith_package_attachment.py +30 -14
- pulumi_alicloud/vpc/gateway_endpoint.py +8 -8
- pulumi_alicloud/vpc/get_enhanced_nat_available_zones.py +3 -3
- pulumi_alicloud/vpc/network_acl_entries.py +16 -20
- pulumi_alicloud/vpc/outputs.py +48 -0
- pulumi_alicloud/vpc/vbr_ha.py +127 -46
- pulumi_alicloud/wafv3/_inputs.py +396 -0
- pulumi_alicloud/wafv3/defense_rule.py +40 -110
- pulumi_alicloud/wafv3/outputs.py +303 -0
- {pulumi_alicloud-3.86.0a1758340042.dist-info → pulumi_alicloud-3.89.0a1763702747.dist-info}/METADATA +1 -1
- {pulumi_alicloud-3.86.0a1758340042.dist-info → pulumi_alicloud-3.89.0a1763702747.dist-info}/RECORD +146 -130
- {pulumi_alicloud-3.86.0a1758340042.dist-info → pulumi_alicloud-3.89.0a1763702747.dist-info}/WHEEL +0 -0
- {pulumi_alicloud-3.86.0a1758340042.dist-info → pulumi_alicloud-3.89.0a1763702747.dist-info}/top_level.txt +0 -0
pulumi_alicloud/esa/outputs.py
CHANGED
|
@@ -18,6 +18,11 @@ from . import outputs
|
|
|
18
18
|
__all__ = [
|
|
19
19
|
'HttpRequestHeaderModificationRuleRequestHeaderModification',
|
|
20
20
|
'HttpResponseHeaderModificationRuleResponseHeaderModification',
|
|
21
|
+
'LoadBalancerAdaptiveRouting',
|
|
22
|
+
'LoadBalancerMonitor',
|
|
23
|
+
'LoadBalancerRandomSteering',
|
|
24
|
+
'LoadBalancerRule',
|
|
25
|
+
'LoadBalancerRuleFixedResponse',
|
|
21
26
|
'OriginPoolOrigin',
|
|
22
27
|
'OriginPoolOriginAuthConf',
|
|
23
28
|
'RecordAuthConf',
|
|
@@ -29,6 +34,35 @@ __all__ = [
|
|
|
29
34
|
'SiteDeliveryTaskS3Delivery',
|
|
30
35
|
'SiteDeliveryTaskSlsDelivery',
|
|
31
36
|
'TransportLayerApplicationRule',
|
|
37
|
+
'WafRuleConfig',
|
|
38
|
+
'WafRuleConfigActions',
|
|
39
|
+
'WafRuleConfigActionsBypass',
|
|
40
|
+
'WafRuleConfigActionsResponse',
|
|
41
|
+
'WafRuleConfigAppPackage',
|
|
42
|
+
'WafRuleConfigAppPackagePackageSign',
|
|
43
|
+
'WafRuleConfigAppSdk',
|
|
44
|
+
'WafRuleConfigAppSdkCustomSign',
|
|
45
|
+
'WafRuleConfigManagedRuleset',
|
|
46
|
+
'WafRuleConfigManagedRulesetManagedRule',
|
|
47
|
+
'WafRuleConfigRateLimit',
|
|
48
|
+
'WafRuleConfigRateLimitCharacteristics',
|
|
49
|
+
'WafRuleConfigRateLimitCharacteristicsCriteria',
|
|
50
|
+
'WafRuleConfigRateLimitCharacteristicsCriteriaCriteria',
|
|
51
|
+
'WafRuleConfigRateLimitCharacteristicsCriteriaCriteriaCriteria',
|
|
52
|
+
'WafRuleConfigRateLimitThreshold',
|
|
53
|
+
'WafRuleConfigRateLimitThresholdResponseStatus',
|
|
54
|
+
'WafRuleConfigSecurityLevel',
|
|
55
|
+
'WafRuleConfigTimer',
|
|
56
|
+
'WafRuleConfigTimerPeriod',
|
|
57
|
+
'WafRuleConfigTimerWeeklyPeriod',
|
|
58
|
+
'WafRuleConfigTimerWeeklyPeriodDailyPeriod',
|
|
59
|
+
'WafRuleShared',
|
|
60
|
+
'WafRuleSharedActions',
|
|
61
|
+
'WafRuleSharedActionsResponse',
|
|
62
|
+
'WafRuleSharedMatch',
|
|
63
|
+
'WafRuleSharedMatchCriteria',
|
|
64
|
+
'WafRuleSharedMatchCriteriaCriteria',
|
|
65
|
+
'WafRuleSharedMatchCriteriaCriteriaCriteria',
|
|
32
66
|
'WaitingRoomHostNameAndPath',
|
|
33
67
|
'GetSitesSiteResult',
|
|
34
68
|
]
|
|
@@ -79,14 +113,18 @@ class HttpResponseHeaderModificationRuleResponseHeaderModification(dict):
|
|
|
79
113
|
def __init__(__self__, *,
|
|
80
114
|
name: _builtins.str,
|
|
81
115
|
operation: _builtins.str,
|
|
116
|
+
type: Optional[_builtins.str] = None,
|
|
82
117
|
value: Optional[_builtins.str] = None):
|
|
83
118
|
"""
|
|
84
119
|
:param _builtins.str name: The response header name.
|
|
85
120
|
:param _builtins.str operation: Operation method. Possible values:
|
|
121
|
+
:param _builtins.str type: The value type. Value range:
|
|
86
122
|
:param _builtins.str value: The response header value.
|
|
87
123
|
"""
|
|
88
124
|
pulumi.set(__self__, "name", name)
|
|
89
125
|
pulumi.set(__self__, "operation", operation)
|
|
126
|
+
if type is not None:
|
|
127
|
+
pulumi.set(__self__, "type", type)
|
|
90
128
|
if value is not None:
|
|
91
129
|
pulumi.set(__self__, "value", value)
|
|
92
130
|
|
|
@@ -106,6 +144,14 @@ class HttpResponseHeaderModificationRuleResponseHeaderModification(dict):
|
|
|
106
144
|
"""
|
|
107
145
|
return pulumi.get(self, "operation")
|
|
108
146
|
|
|
147
|
+
@_builtins.property
|
|
148
|
+
@pulumi.getter
|
|
149
|
+
def type(self) -> Optional[_builtins.str]:
|
|
150
|
+
"""
|
|
151
|
+
The value type. Value range:
|
|
152
|
+
"""
|
|
153
|
+
return pulumi.get(self, "type")
|
|
154
|
+
|
|
109
155
|
@_builtins.property
|
|
110
156
|
@pulumi.getter
|
|
111
157
|
def value(self) -> Optional[_builtins.str]:
|
|
@@ -115,6 +161,470 @@ class HttpResponseHeaderModificationRuleResponseHeaderModification(dict):
|
|
|
115
161
|
return pulumi.get(self, "value")
|
|
116
162
|
|
|
117
163
|
|
|
164
|
+
@pulumi.output_type
|
|
165
|
+
class LoadBalancerAdaptiveRouting(dict):
|
|
166
|
+
@staticmethod
|
|
167
|
+
def __key_warning(key: str):
|
|
168
|
+
suggest = None
|
|
169
|
+
if key == "failoverAcrossPools":
|
|
170
|
+
suggest = "failover_across_pools"
|
|
171
|
+
|
|
172
|
+
if suggest:
|
|
173
|
+
pulumi.log.warn(f"Key '{key}' not found in LoadBalancerAdaptiveRouting. Access the value via the '{suggest}' property getter instead.")
|
|
174
|
+
|
|
175
|
+
def __getitem__(self, key: str) -> Any:
|
|
176
|
+
LoadBalancerAdaptiveRouting.__key_warning(key)
|
|
177
|
+
return super().__getitem__(key)
|
|
178
|
+
|
|
179
|
+
def get(self, key: str, default = None) -> Any:
|
|
180
|
+
LoadBalancerAdaptiveRouting.__key_warning(key)
|
|
181
|
+
return super().get(key, default)
|
|
182
|
+
|
|
183
|
+
def __init__(__self__, *,
|
|
184
|
+
failover_across_pools: Optional[_builtins.bool] = None):
|
|
185
|
+
"""
|
|
186
|
+
:param _builtins.bool failover_across_pools: Whether to failover across pools.
|
|
187
|
+
"""
|
|
188
|
+
if failover_across_pools is not None:
|
|
189
|
+
pulumi.set(__self__, "failover_across_pools", failover_across_pools)
|
|
190
|
+
|
|
191
|
+
@_builtins.property
|
|
192
|
+
@pulumi.getter(name="failoverAcrossPools")
|
|
193
|
+
def failover_across_pools(self) -> Optional[_builtins.bool]:
|
|
194
|
+
"""
|
|
195
|
+
Whether to failover across pools.
|
|
196
|
+
"""
|
|
197
|
+
return pulumi.get(self, "failover_across_pools")
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
@pulumi.output_type
|
|
201
|
+
class LoadBalancerMonitor(dict):
|
|
202
|
+
@staticmethod
|
|
203
|
+
def __key_warning(key: str):
|
|
204
|
+
suggest = None
|
|
205
|
+
if key == "consecutiveDown":
|
|
206
|
+
suggest = "consecutive_down"
|
|
207
|
+
elif key == "consecutiveUp":
|
|
208
|
+
suggest = "consecutive_up"
|
|
209
|
+
elif key == "expectedCodes":
|
|
210
|
+
suggest = "expected_codes"
|
|
211
|
+
elif key == "followRedirects":
|
|
212
|
+
suggest = "follow_redirects"
|
|
213
|
+
elif key == "monitoringRegion":
|
|
214
|
+
suggest = "monitoring_region"
|
|
215
|
+
|
|
216
|
+
if suggest:
|
|
217
|
+
pulumi.log.warn(f"Key '{key}' not found in LoadBalancerMonitor. Access the value via the '{suggest}' property getter instead.")
|
|
218
|
+
|
|
219
|
+
def __getitem__(self, key: str) -> Any:
|
|
220
|
+
LoadBalancerMonitor.__key_warning(key)
|
|
221
|
+
return super().__getitem__(key)
|
|
222
|
+
|
|
223
|
+
def get(self, key: str, default = None) -> Any:
|
|
224
|
+
LoadBalancerMonitor.__key_warning(key)
|
|
225
|
+
return super().get(key, default)
|
|
226
|
+
|
|
227
|
+
def __init__(__self__, *,
|
|
228
|
+
consecutive_down: Optional[_builtins.int] = None,
|
|
229
|
+
consecutive_up: Optional[_builtins.int] = None,
|
|
230
|
+
expected_codes: Optional[_builtins.str] = None,
|
|
231
|
+
follow_redirects: Optional[_builtins.bool] = None,
|
|
232
|
+
header: Optional[_builtins.str] = None,
|
|
233
|
+
interval: Optional[_builtins.int] = None,
|
|
234
|
+
method: Optional[_builtins.str] = None,
|
|
235
|
+
monitoring_region: Optional[_builtins.str] = None,
|
|
236
|
+
path: Optional[_builtins.str] = None,
|
|
237
|
+
port: Optional[_builtins.int] = None,
|
|
238
|
+
timeout: Optional[_builtins.int] = None,
|
|
239
|
+
type: Optional[_builtins.str] = None):
|
|
240
|
+
"""
|
|
241
|
+
:param _builtins.int consecutive_down: The number of consecutive failed health checks before the backend is considered down, for example, 5.
|
|
242
|
+
:param _builtins.int consecutive_up: The number of consecutive successful probes required to consider the target as up, e.g., 3.
|
|
243
|
+
:param _builtins.str expected_codes: Expected status code, such as 200,202, successful HTTP response.
|
|
244
|
+
:param _builtins.bool follow_redirects: Whether to follow the redirect.
|
|
245
|
+
:param _builtins.str header: The HTTP headers to be included in the health check request.
|
|
246
|
+
:param _builtins.int interval: The monitoring interval, such as 60 seconds, checks the frequency.
|
|
247
|
+
:param _builtins.str method: Monitor request methods, such as GET, methods in the HTTP protocol.
|
|
248
|
+
:param _builtins.str monitoring_region: Probe Point Region, default to Global
|
|
249
|
+
- `Global`: Global.
|
|
250
|
+
- `ChineseMainland`: Chinese mainland.
|
|
251
|
+
- `OutsideChineseMainland`: Global (excluding the Chinese mainland).
|
|
252
|
+
:param _builtins.str path: The monitor checks the path, such as/healthcheck, the HTTP request path.
|
|
253
|
+
:param _builtins.int port: The target port.
|
|
254
|
+
:param _builtins.int timeout: The timeout for the health check, in seconds. The value range is 1-10.
|
|
255
|
+
:param _builtins.str type: The type of monitor protocol, such as HTTP, used for health checks. When the value is off, it indicates that no check is performed.
|
|
256
|
+
"""
|
|
257
|
+
if consecutive_down is not None:
|
|
258
|
+
pulumi.set(__self__, "consecutive_down", consecutive_down)
|
|
259
|
+
if consecutive_up is not None:
|
|
260
|
+
pulumi.set(__self__, "consecutive_up", consecutive_up)
|
|
261
|
+
if expected_codes is not None:
|
|
262
|
+
pulumi.set(__self__, "expected_codes", expected_codes)
|
|
263
|
+
if follow_redirects is not None:
|
|
264
|
+
pulumi.set(__self__, "follow_redirects", follow_redirects)
|
|
265
|
+
if header is not None:
|
|
266
|
+
pulumi.set(__self__, "header", header)
|
|
267
|
+
if interval is not None:
|
|
268
|
+
pulumi.set(__self__, "interval", interval)
|
|
269
|
+
if method is not None:
|
|
270
|
+
pulumi.set(__self__, "method", method)
|
|
271
|
+
if monitoring_region is not None:
|
|
272
|
+
pulumi.set(__self__, "monitoring_region", monitoring_region)
|
|
273
|
+
if path is not None:
|
|
274
|
+
pulumi.set(__self__, "path", path)
|
|
275
|
+
if port is not None:
|
|
276
|
+
pulumi.set(__self__, "port", port)
|
|
277
|
+
if timeout is not None:
|
|
278
|
+
pulumi.set(__self__, "timeout", timeout)
|
|
279
|
+
if type is not None:
|
|
280
|
+
pulumi.set(__self__, "type", type)
|
|
281
|
+
|
|
282
|
+
@_builtins.property
|
|
283
|
+
@pulumi.getter(name="consecutiveDown")
|
|
284
|
+
def consecutive_down(self) -> Optional[_builtins.int]:
|
|
285
|
+
"""
|
|
286
|
+
The number of consecutive failed health checks before the backend is considered down, for example, 5.
|
|
287
|
+
"""
|
|
288
|
+
return pulumi.get(self, "consecutive_down")
|
|
289
|
+
|
|
290
|
+
@_builtins.property
|
|
291
|
+
@pulumi.getter(name="consecutiveUp")
|
|
292
|
+
def consecutive_up(self) -> Optional[_builtins.int]:
|
|
293
|
+
"""
|
|
294
|
+
The number of consecutive successful probes required to consider the target as up, e.g., 3.
|
|
295
|
+
"""
|
|
296
|
+
return pulumi.get(self, "consecutive_up")
|
|
297
|
+
|
|
298
|
+
@_builtins.property
|
|
299
|
+
@pulumi.getter(name="expectedCodes")
|
|
300
|
+
def expected_codes(self) -> Optional[_builtins.str]:
|
|
301
|
+
"""
|
|
302
|
+
Expected status code, such as 200,202, successful HTTP response.
|
|
303
|
+
"""
|
|
304
|
+
return pulumi.get(self, "expected_codes")
|
|
305
|
+
|
|
306
|
+
@_builtins.property
|
|
307
|
+
@pulumi.getter(name="followRedirects")
|
|
308
|
+
def follow_redirects(self) -> Optional[_builtins.bool]:
|
|
309
|
+
"""
|
|
310
|
+
Whether to follow the redirect.
|
|
311
|
+
"""
|
|
312
|
+
return pulumi.get(self, "follow_redirects")
|
|
313
|
+
|
|
314
|
+
@_builtins.property
|
|
315
|
+
@pulumi.getter
|
|
316
|
+
def header(self) -> Optional[_builtins.str]:
|
|
317
|
+
"""
|
|
318
|
+
The HTTP headers to be included in the health check request.
|
|
319
|
+
"""
|
|
320
|
+
return pulumi.get(self, "header")
|
|
321
|
+
|
|
322
|
+
@_builtins.property
|
|
323
|
+
@pulumi.getter
|
|
324
|
+
def interval(self) -> Optional[_builtins.int]:
|
|
325
|
+
"""
|
|
326
|
+
The monitoring interval, such as 60 seconds, checks the frequency.
|
|
327
|
+
"""
|
|
328
|
+
return pulumi.get(self, "interval")
|
|
329
|
+
|
|
330
|
+
@_builtins.property
|
|
331
|
+
@pulumi.getter
|
|
332
|
+
def method(self) -> Optional[_builtins.str]:
|
|
333
|
+
"""
|
|
334
|
+
Monitor request methods, such as GET, methods in the HTTP protocol.
|
|
335
|
+
"""
|
|
336
|
+
return pulumi.get(self, "method")
|
|
337
|
+
|
|
338
|
+
@_builtins.property
|
|
339
|
+
@pulumi.getter(name="monitoringRegion")
|
|
340
|
+
def monitoring_region(self) -> Optional[_builtins.str]:
|
|
341
|
+
"""
|
|
342
|
+
Probe Point Region, default to Global
|
|
343
|
+
- `Global`: Global.
|
|
344
|
+
- `ChineseMainland`: Chinese mainland.
|
|
345
|
+
- `OutsideChineseMainland`: Global (excluding the Chinese mainland).
|
|
346
|
+
"""
|
|
347
|
+
return pulumi.get(self, "monitoring_region")
|
|
348
|
+
|
|
349
|
+
@_builtins.property
|
|
350
|
+
@pulumi.getter
|
|
351
|
+
def path(self) -> Optional[_builtins.str]:
|
|
352
|
+
"""
|
|
353
|
+
The monitor checks the path, such as/healthcheck, the HTTP request path.
|
|
354
|
+
"""
|
|
355
|
+
return pulumi.get(self, "path")
|
|
356
|
+
|
|
357
|
+
@_builtins.property
|
|
358
|
+
@pulumi.getter
|
|
359
|
+
def port(self) -> Optional[_builtins.int]:
|
|
360
|
+
"""
|
|
361
|
+
The target port.
|
|
362
|
+
"""
|
|
363
|
+
return pulumi.get(self, "port")
|
|
364
|
+
|
|
365
|
+
@_builtins.property
|
|
366
|
+
@pulumi.getter
|
|
367
|
+
def timeout(self) -> Optional[_builtins.int]:
|
|
368
|
+
"""
|
|
369
|
+
The timeout for the health check, in seconds. The value range is 1-10.
|
|
370
|
+
"""
|
|
371
|
+
return pulumi.get(self, "timeout")
|
|
372
|
+
|
|
373
|
+
@_builtins.property
|
|
374
|
+
@pulumi.getter
|
|
375
|
+
def type(self) -> Optional[_builtins.str]:
|
|
376
|
+
"""
|
|
377
|
+
The type of monitor protocol, such as HTTP, used for health checks. When the value is off, it indicates that no check is performed.
|
|
378
|
+
"""
|
|
379
|
+
return pulumi.get(self, "type")
|
|
380
|
+
|
|
381
|
+
|
|
382
|
+
@pulumi.output_type
|
|
383
|
+
class LoadBalancerRandomSteering(dict):
|
|
384
|
+
@staticmethod
|
|
385
|
+
def __key_warning(key: str):
|
|
386
|
+
suggest = None
|
|
387
|
+
if key == "defaultWeight":
|
|
388
|
+
suggest = "default_weight"
|
|
389
|
+
elif key == "poolWeights":
|
|
390
|
+
suggest = "pool_weights"
|
|
391
|
+
|
|
392
|
+
if suggest:
|
|
393
|
+
pulumi.log.warn(f"Key '{key}' not found in LoadBalancerRandomSteering. Access the value via the '{suggest}' property getter instead.")
|
|
394
|
+
|
|
395
|
+
def __getitem__(self, key: str) -> Any:
|
|
396
|
+
LoadBalancerRandomSteering.__key_warning(key)
|
|
397
|
+
return super().__getitem__(key)
|
|
398
|
+
|
|
399
|
+
def get(self, key: str, default = None) -> Any:
|
|
400
|
+
LoadBalancerRandomSteering.__key_warning(key)
|
|
401
|
+
return super().get(key, default)
|
|
402
|
+
|
|
403
|
+
def __init__(__self__, *,
|
|
404
|
+
default_weight: Optional[_builtins.int] = None,
|
|
405
|
+
pool_weights: Optional[Mapping[str, _builtins.str]] = None):
|
|
406
|
+
"""
|
|
407
|
+
:param _builtins.int default_weight: The default round-robin weight, used for all pools that do not have individually specified weights. The value range is 0-100.
|
|
408
|
+
:param Mapping[str, _builtins.str] pool_weights: Weight configuration for each backend server pool, where the key is the pool ID and the value is the weight coefficient. The weight coefficient represents the proportion of relative traffic distribution.
|
|
409
|
+
"""
|
|
410
|
+
if default_weight is not None:
|
|
411
|
+
pulumi.set(__self__, "default_weight", default_weight)
|
|
412
|
+
if pool_weights is not None:
|
|
413
|
+
pulumi.set(__self__, "pool_weights", pool_weights)
|
|
414
|
+
|
|
415
|
+
@_builtins.property
|
|
416
|
+
@pulumi.getter(name="defaultWeight")
|
|
417
|
+
def default_weight(self) -> Optional[_builtins.int]:
|
|
418
|
+
"""
|
|
419
|
+
The default round-robin weight, used for all pools that do not have individually specified weights. The value range is 0-100.
|
|
420
|
+
"""
|
|
421
|
+
return pulumi.get(self, "default_weight")
|
|
422
|
+
|
|
423
|
+
@_builtins.property
|
|
424
|
+
@pulumi.getter(name="poolWeights")
|
|
425
|
+
def pool_weights(self) -> Optional[Mapping[str, _builtins.str]]:
|
|
426
|
+
"""
|
|
427
|
+
Weight configuration for each backend server pool, where the key is the pool ID and the value is the weight coefficient. The weight coefficient represents the proportion of relative traffic distribution.
|
|
428
|
+
"""
|
|
429
|
+
return pulumi.get(self, "pool_weights")
|
|
430
|
+
|
|
431
|
+
|
|
432
|
+
@pulumi.output_type
|
|
433
|
+
class LoadBalancerRule(dict):
|
|
434
|
+
@staticmethod
|
|
435
|
+
def __key_warning(key: str):
|
|
436
|
+
suggest = None
|
|
437
|
+
if key == "fixedResponse":
|
|
438
|
+
suggest = "fixed_response"
|
|
439
|
+
elif key == "ruleEnable":
|
|
440
|
+
suggest = "rule_enable"
|
|
441
|
+
elif key == "ruleName":
|
|
442
|
+
suggest = "rule_name"
|
|
443
|
+
|
|
444
|
+
if suggest:
|
|
445
|
+
pulumi.log.warn(f"Key '{key}' not found in LoadBalancerRule. Access the value via the '{suggest}' property getter instead.")
|
|
446
|
+
|
|
447
|
+
def __getitem__(self, key: str) -> Any:
|
|
448
|
+
LoadBalancerRule.__key_warning(key)
|
|
449
|
+
return super().__getitem__(key)
|
|
450
|
+
|
|
451
|
+
def get(self, key: str, default = None) -> Any:
|
|
452
|
+
LoadBalancerRule.__key_warning(key)
|
|
453
|
+
return super().get(key, default)
|
|
454
|
+
|
|
455
|
+
def __init__(__self__, *,
|
|
456
|
+
fixed_response: Optional['outputs.LoadBalancerRuleFixedResponse'] = None,
|
|
457
|
+
overrides: Optional[_builtins.str] = None,
|
|
458
|
+
rule: Optional[_builtins.str] = None,
|
|
459
|
+
rule_enable: Optional[_builtins.str] = None,
|
|
460
|
+
rule_name: Optional[_builtins.str] = None,
|
|
461
|
+
sequence: Optional[_builtins.int] = None,
|
|
462
|
+
terminates: Optional[_builtins.bool] = None):
|
|
463
|
+
"""
|
|
464
|
+
:param 'LoadBalancerRuleFixedResponseArgs' fixed_response: Executes a specified response after matching the rule. See `fixed_response` below.
|
|
465
|
+
:param _builtins.str overrides: Modifies the load balancer configuration for the corresponding request after matching the rule. The fields in this configuration will override the corresponding fields in the load balancer configuration.
|
|
466
|
+
:param _builtins.str rule: Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set. There are two usage scenarios:
|
|
467
|
+
- Match all incoming requests: value set to true
|
|
468
|
+
- Match specified request: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\")
|
|
469
|
+
:param _builtins.str rule_enable: Rule switch. When adding global configuration, this parameter does not need to be set. Value range:
|
|
470
|
+
- on: open.
|
|
471
|
+
- off: close.
|
|
472
|
+
:param _builtins.str rule_name: Rule name. When adding global configuration, this parameter does not need to be set.
|
|
473
|
+
:param _builtins.int sequence: Order of rule execution. The smaller the value, the higher the priority for execution.
|
|
474
|
+
:param _builtins.bool terminates: Whether to terminate the execution of subsequent rules.
|
|
475
|
+
"""
|
|
476
|
+
if fixed_response is not None:
|
|
477
|
+
pulumi.set(__self__, "fixed_response", fixed_response)
|
|
478
|
+
if overrides is not None:
|
|
479
|
+
pulumi.set(__self__, "overrides", overrides)
|
|
480
|
+
if rule is not None:
|
|
481
|
+
pulumi.set(__self__, "rule", rule)
|
|
482
|
+
if rule_enable is not None:
|
|
483
|
+
pulumi.set(__self__, "rule_enable", rule_enable)
|
|
484
|
+
if rule_name is not None:
|
|
485
|
+
pulumi.set(__self__, "rule_name", rule_name)
|
|
486
|
+
if sequence is not None:
|
|
487
|
+
pulumi.set(__self__, "sequence", sequence)
|
|
488
|
+
if terminates is not None:
|
|
489
|
+
pulumi.set(__self__, "terminates", terminates)
|
|
490
|
+
|
|
491
|
+
@_builtins.property
|
|
492
|
+
@pulumi.getter(name="fixedResponse")
|
|
493
|
+
def fixed_response(self) -> Optional['outputs.LoadBalancerRuleFixedResponse']:
|
|
494
|
+
"""
|
|
495
|
+
Executes a specified response after matching the rule. See `fixed_response` below.
|
|
496
|
+
"""
|
|
497
|
+
return pulumi.get(self, "fixed_response")
|
|
498
|
+
|
|
499
|
+
@_builtins.property
|
|
500
|
+
@pulumi.getter
|
|
501
|
+
def overrides(self) -> Optional[_builtins.str]:
|
|
502
|
+
"""
|
|
503
|
+
Modifies the load balancer configuration for the corresponding request after matching the rule. The fields in this configuration will override the corresponding fields in the load balancer configuration.
|
|
504
|
+
"""
|
|
505
|
+
return pulumi.get(self, "overrides")
|
|
506
|
+
|
|
507
|
+
@_builtins.property
|
|
508
|
+
@pulumi.getter
|
|
509
|
+
def rule(self) -> Optional[_builtins.str]:
|
|
510
|
+
"""
|
|
511
|
+
Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set. There are two usage scenarios:
|
|
512
|
+
- Match all incoming requests: value set to true
|
|
513
|
+
- Match specified request: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\")
|
|
514
|
+
"""
|
|
515
|
+
return pulumi.get(self, "rule")
|
|
516
|
+
|
|
517
|
+
@_builtins.property
|
|
518
|
+
@pulumi.getter(name="ruleEnable")
|
|
519
|
+
def rule_enable(self) -> Optional[_builtins.str]:
|
|
520
|
+
"""
|
|
521
|
+
Rule switch. When adding global configuration, this parameter does not need to be set. Value range:
|
|
522
|
+
- on: open.
|
|
523
|
+
- off: close.
|
|
524
|
+
"""
|
|
525
|
+
return pulumi.get(self, "rule_enable")
|
|
526
|
+
|
|
527
|
+
@_builtins.property
|
|
528
|
+
@pulumi.getter(name="ruleName")
|
|
529
|
+
def rule_name(self) -> Optional[_builtins.str]:
|
|
530
|
+
"""
|
|
531
|
+
Rule name. When adding global configuration, this parameter does not need to be set.
|
|
532
|
+
"""
|
|
533
|
+
return pulumi.get(self, "rule_name")
|
|
534
|
+
|
|
535
|
+
@_builtins.property
|
|
536
|
+
@pulumi.getter
|
|
537
|
+
def sequence(self) -> Optional[_builtins.int]:
|
|
538
|
+
"""
|
|
539
|
+
Order of rule execution. The smaller the value, the higher the priority for execution.
|
|
540
|
+
"""
|
|
541
|
+
return pulumi.get(self, "sequence")
|
|
542
|
+
|
|
543
|
+
@_builtins.property
|
|
544
|
+
@pulumi.getter
|
|
545
|
+
def terminates(self) -> Optional[_builtins.bool]:
|
|
546
|
+
"""
|
|
547
|
+
Whether to terminate the execution of subsequent rules.
|
|
548
|
+
"""
|
|
549
|
+
return pulumi.get(self, "terminates")
|
|
550
|
+
|
|
551
|
+
|
|
552
|
+
@pulumi.output_type
|
|
553
|
+
class LoadBalancerRuleFixedResponse(dict):
|
|
554
|
+
@staticmethod
|
|
555
|
+
def __key_warning(key: str):
|
|
556
|
+
suggest = None
|
|
557
|
+
if key == "contentType":
|
|
558
|
+
suggest = "content_type"
|
|
559
|
+
elif key == "messageBody":
|
|
560
|
+
suggest = "message_body"
|
|
561
|
+
elif key == "statusCode":
|
|
562
|
+
suggest = "status_code"
|
|
563
|
+
|
|
564
|
+
if suggest:
|
|
565
|
+
pulumi.log.warn(f"Key '{key}' not found in LoadBalancerRuleFixedResponse. Access the value via the '{suggest}' property getter instead.")
|
|
566
|
+
|
|
567
|
+
def __getitem__(self, key: str) -> Any:
|
|
568
|
+
LoadBalancerRuleFixedResponse.__key_warning(key)
|
|
569
|
+
return super().__getitem__(key)
|
|
570
|
+
|
|
571
|
+
def get(self, key: str, default = None) -> Any:
|
|
572
|
+
LoadBalancerRuleFixedResponse.__key_warning(key)
|
|
573
|
+
return super().get(key, default)
|
|
574
|
+
|
|
575
|
+
def __init__(__self__, *,
|
|
576
|
+
content_type: Optional[_builtins.str] = None,
|
|
577
|
+
location: Optional[_builtins.str] = None,
|
|
578
|
+
message_body: Optional[_builtins.str] = None,
|
|
579
|
+
status_code: Optional[_builtins.int] = None):
|
|
580
|
+
"""
|
|
581
|
+
:param _builtins.str content_type: The Content-Type field in the HTTP Header.
|
|
582
|
+
:param _builtins.str location: The location field in the http return.
|
|
583
|
+
:param _builtins.str message_body: The body value of the response.
|
|
584
|
+
:param _builtins.int status_code: Status Code.
|
|
585
|
+
"""
|
|
586
|
+
if content_type is not None:
|
|
587
|
+
pulumi.set(__self__, "content_type", content_type)
|
|
588
|
+
if location is not None:
|
|
589
|
+
pulumi.set(__self__, "location", location)
|
|
590
|
+
if message_body is not None:
|
|
591
|
+
pulumi.set(__self__, "message_body", message_body)
|
|
592
|
+
if status_code is not None:
|
|
593
|
+
pulumi.set(__self__, "status_code", status_code)
|
|
594
|
+
|
|
595
|
+
@_builtins.property
|
|
596
|
+
@pulumi.getter(name="contentType")
|
|
597
|
+
def content_type(self) -> Optional[_builtins.str]:
|
|
598
|
+
"""
|
|
599
|
+
The Content-Type field in the HTTP Header.
|
|
600
|
+
"""
|
|
601
|
+
return pulumi.get(self, "content_type")
|
|
602
|
+
|
|
603
|
+
@_builtins.property
|
|
604
|
+
@pulumi.getter
|
|
605
|
+
def location(self) -> Optional[_builtins.str]:
|
|
606
|
+
"""
|
|
607
|
+
The location field in the http return.
|
|
608
|
+
"""
|
|
609
|
+
return pulumi.get(self, "location")
|
|
610
|
+
|
|
611
|
+
@_builtins.property
|
|
612
|
+
@pulumi.getter(name="messageBody")
|
|
613
|
+
def message_body(self) -> Optional[_builtins.str]:
|
|
614
|
+
"""
|
|
615
|
+
The body value of the response.
|
|
616
|
+
"""
|
|
617
|
+
return pulumi.get(self, "message_body")
|
|
618
|
+
|
|
619
|
+
@_builtins.property
|
|
620
|
+
@pulumi.getter(name="statusCode")
|
|
621
|
+
def status_code(self) -> Optional[_builtins.int]:
|
|
622
|
+
"""
|
|
623
|
+
Status Code.
|
|
624
|
+
"""
|
|
625
|
+
return pulumi.get(self, "status_code")
|
|
626
|
+
|
|
627
|
+
|
|
118
628
|
@pulumi.output_type
|
|
119
629
|
class OriginPoolOrigin(dict):
|
|
120
630
|
@staticmethod
|
|
@@ -1285,6 +1795,1576 @@ class TransportLayerApplicationRule(dict):
|
|
|
1285
1795
|
return pulumi.get(self, "rule_id")
|
|
1286
1796
|
|
|
1287
1797
|
|
|
1798
|
+
@pulumi.output_type
|
|
1799
|
+
class WafRuleConfig(dict):
|
|
1800
|
+
@staticmethod
|
|
1801
|
+
def __key_warning(key: str):
|
|
1802
|
+
suggest = None
|
|
1803
|
+
if key == "appPackage":
|
|
1804
|
+
suggest = "app_package"
|
|
1805
|
+
elif key == "appSdk":
|
|
1806
|
+
suggest = "app_sdk"
|
|
1807
|
+
elif key == "managedGroupId":
|
|
1808
|
+
suggest = "managed_group_id"
|
|
1809
|
+
elif key == "managedList":
|
|
1810
|
+
suggest = "managed_list"
|
|
1811
|
+
elif key == "managedRulesets":
|
|
1812
|
+
suggest = "managed_rulesets"
|
|
1813
|
+
elif key == "rateLimit":
|
|
1814
|
+
suggest = "rate_limit"
|
|
1815
|
+
elif key == "securityLevel":
|
|
1816
|
+
suggest = "security_level"
|
|
1817
|
+
|
|
1818
|
+
if suggest:
|
|
1819
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfig. Access the value via the '{suggest}' property getter instead.")
|
|
1820
|
+
|
|
1821
|
+
def __getitem__(self, key: str) -> Any:
|
|
1822
|
+
WafRuleConfig.__key_warning(key)
|
|
1823
|
+
return super().__getitem__(key)
|
|
1824
|
+
|
|
1825
|
+
def get(self, key: str, default = None) -> Any:
|
|
1826
|
+
WafRuleConfig.__key_warning(key)
|
|
1827
|
+
return super().get(key, default)
|
|
1828
|
+
|
|
1829
|
+
def __init__(__self__, *,
|
|
1830
|
+
action: Optional[_builtins.str] = None,
|
|
1831
|
+
actions: Optional['outputs.WafRuleConfigActions'] = None,
|
|
1832
|
+
app_package: Optional['outputs.WafRuleConfigAppPackage'] = None,
|
|
1833
|
+
app_sdk: Optional['outputs.WafRuleConfigAppSdk'] = None,
|
|
1834
|
+
expression: Optional[_builtins.str] = None,
|
|
1835
|
+
id: Optional[_builtins.int] = None,
|
|
1836
|
+
managed_group_id: Optional[_builtins.int] = None,
|
|
1837
|
+
managed_list: Optional[_builtins.str] = None,
|
|
1838
|
+
managed_rulesets: Optional[Sequence['outputs.WafRuleConfigManagedRuleset']] = None,
|
|
1839
|
+
name: Optional[_builtins.str] = None,
|
|
1840
|
+
notes: Optional[_builtins.str] = None,
|
|
1841
|
+
rate_limit: Optional['outputs.WafRuleConfigRateLimit'] = None,
|
|
1842
|
+
security_level: Optional['outputs.WafRuleConfigSecurityLevel'] = None,
|
|
1843
|
+
sigchls: Optional[Sequence[_builtins.str]] = None,
|
|
1844
|
+
status: Optional[_builtins.str] = None,
|
|
1845
|
+
timer: Optional['outputs.WafRuleConfigTimer'] = None,
|
|
1846
|
+
type: Optional[_builtins.str] = None,
|
|
1847
|
+
value: Optional[_builtins.str] = None):
|
|
1848
|
+
"""
|
|
1849
|
+
:param _builtins.str action: The action performed on requests that match the managed rule.
|
|
1850
|
+
:param 'WafRuleConfigActionsArgs' actions: Extended action configurations, including custom responses and bypass settings. See `actions` below.
|
|
1851
|
+
:param 'WafRuleConfigAppPackageArgs' app_package: Security mechanism to prevent apps from being repackaged. See `app_package` below.
|
|
1852
|
+
:param 'WafRuleConfigAppSdkArgs' app_sdk: Mobile app SDK-related configurations. See `app_sdk` below.
|
|
1853
|
+
:param _builtins.str expression: The match expression used to evaluate incoming requests.
|
|
1854
|
+
:param _builtins.int id: The ID of the custom error page, which can be obtained by calling the ListPages operation.
|
|
1855
|
+
:param _builtins.int managed_group_id: The ID of the managed rule group (deprecated).
|
|
1856
|
+
:param _builtins.str managed_list: The name of the managed list applied to this rule.
|
|
1857
|
+
:param Sequence['WafRuleConfigManagedRulesetArgs'] managed_rulesets: The managed rulesets referenced by this rule and their configurations. See `managed_rulesets` below.
|
|
1858
|
+
:param _builtins.str name: The package name of an authorized application.
|
|
1859
|
+
:param _builtins.str notes: Additional notes about this rule.
|
|
1860
|
+
:param 'WafRuleConfigRateLimitArgs' rate_limit: Configuration of the rate limiting rule. See `rate_limit` below.
|
|
1861
|
+
:param 'WafRuleConfigSecurityLevelArgs' security_level: The overall security protection level of WAF. See `security_level` below.
|
|
1862
|
+
:param Sequence[_builtins.str] sigchls: Configuration items for token verification mechanisms.
|
|
1863
|
+
:param _builtins.str status: The status of the managed rule: whether it is enabled or disabled.
|
|
1864
|
+
:param 'WafRuleConfigTimerArgs' timer: Configuration for the time schedule when the rule takes effect. See `timer` below.
|
|
1865
|
+
:param _builtins.str type: The type category of the WAF rule.
|
|
1866
|
+
:param _builtins.str value: The value of the custom signature field used for validation.
|
|
1867
|
+
"""
|
|
1868
|
+
if action is not None:
|
|
1869
|
+
pulumi.set(__self__, "action", action)
|
|
1870
|
+
if actions is not None:
|
|
1871
|
+
pulumi.set(__self__, "actions", actions)
|
|
1872
|
+
if app_package is not None:
|
|
1873
|
+
pulumi.set(__self__, "app_package", app_package)
|
|
1874
|
+
if app_sdk is not None:
|
|
1875
|
+
pulumi.set(__self__, "app_sdk", app_sdk)
|
|
1876
|
+
if expression is not None:
|
|
1877
|
+
pulumi.set(__self__, "expression", expression)
|
|
1878
|
+
if id is not None:
|
|
1879
|
+
pulumi.set(__self__, "id", id)
|
|
1880
|
+
if managed_group_id is not None:
|
|
1881
|
+
pulumi.set(__self__, "managed_group_id", managed_group_id)
|
|
1882
|
+
if managed_list is not None:
|
|
1883
|
+
pulumi.set(__self__, "managed_list", managed_list)
|
|
1884
|
+
if managed_rulesets is not None:
|
|
1885
|
+
pulumi.set(__self__, "managed_rulesets", managed_rulesets)
|
|
1886
|
+
if name is not None:
|
|
1887
|
+
pulumi.set(__self__, "name", name)
|
|
1888
|
+
if notes is not None:
|
|
1889
|
+
pulumi.set(__self__, "notes", notes)
|
|
1890
|
+
if rate_limit is not None:
|
|
1891
|
+
pulumi.set(__self__, "rate_limit", rate_limit)
|
|
1892
|
+
if security_level is not None:
|
|
1893
|
+
pulumi.set(__self__, "security_level", security_level)
|
|
1894
|
+
if sigchls is not None:
|
|
1895
|
+
pulumi.set(__self__, "sigchls", sigchls)
|
|
1896
|
+
if status is not None:
|
|
1897
|
+
pulumi.set(__self__, "status", status)
|
|
1898
|
+
if timer is not None:
|
|
1899
|
+
pulumi.set(__self__, "timer", timer)
|
|
1900
|
+
if type is not None:
|
|
1901
|
+
pulumi.set(__self__, "type", type)
|
|
1902
|
+
if value is not None:
|
|
1903
|
+
pulumi.set(__self__, "value", value)
|
|
1904
|
+
|
|
1905
|
+
@_builtins.property
|
|
1906
|
+
@pulumi.getter
|
|
1907
|
+
def action(self) -> Optional[_builtins.str]:
|
|
1908
|
+
"""
|
|
1909
|
+
The action performed on requests that match the managed rule.
|
|
1910
|
+
"""
|
|
1911
|
+
return pulumi.get(self, "action")
|
|
1912
|
+
|
|
1913
|
+
@_builtins.property
|
|
1914
|
+
@pulumi.getter
|
|
1915
|
+
def actions(self) -> Optional['outputs.WafRuleConfigActions']:
|
|
1916
|
+
"""
|
|
1917
|
+
Extended action configurations, including custom responses and bypass settings. See `actions` below.
|
|
1918
|
+
"""
|
|
1919
|
+
return pulumi.get(self, "actions")
|
|
1920
|
+
|
|
1921
|
+
@_builtins.property
|
|
1922
|
+
@pulumi.getter(name="appPackage")
|
|
1923
|
+
def app_package(self) -> Optional['outputs.WafRuleConfigAppPackage']:
|
|
1924
|
+
"""
|
|
1925
|
+
Security mechanism to prevent apps from being repackaged. See `app_package` below.
|
|
1926
|
+
"""
|
|
1927
|
+
return pulumi.get(self, "app_package")
|
|
1928
|
+
|
|
1929
|
+
@_builtins.property
|
|
1930
|
+
@pulumi.getter(name="appSdk")
|
|
1931
|
+
def app_sdk(self) -> Optional['outputs.WafRuleConfigAppSdk']:
|
|
1932
|
+
"""
|
|
1933
|
+
Mobile app SDK-related configurations. See `app_sdk` below.
|
|
1934
|
+
"""
|
|
1935
|
+
return pulumi.get(self, "app_sdk")
|
|
1936
|
+
|
|
1937
|
+
@_builtins.property
|
|
1938
|
+
@pulumi.getter
|
|
1939
|
+
def expression(self) -> Optional[_builtins.str]:
|
|
1940
|
+
"""
|
|
1941
|
+
The match expression used to evaluate incoming requests.
|
|
1942
|
+
"""
|
|
1943
|
+
return pulumi.get(self, "expression")
|
|
1944
|
+
|
|
1945
|
+
@_builtins.property
|
|
1946
|
+
@pulumi.getter
|
|
1947
|
+
def id(self) -> Optional[_builtins.int]:
|
|
1948
|
+
"""
|
|
1949
|
+
The ID of the custom error page, which can be obtained by calling the ListPages operation.
|
|
1950
|
+
"""
|
|
1951
|
+
return pulumi.get(self, "id")
|
|
1952
|
+
|
|
1953
|
+
@_builtins.property
|
|
1954
|
+
@pulumi.getter(name="managedGroupId")
|
|
1955
|
+
def managed_group_id(self) -> Optional[_builtins.int]:
|
|
1956
|
+
"""
|
|
1957
|
+
The ID of the managed rule group (deprecated).
|
|
1958
|
+
"""
|
|
1959
|
+
return pulumi.get(self, "managed_group_id")
|
|
1960
|
+
|
|
1961
|
+
@_builtins.property
|
|
1962
|
+
@pulumi.getter(name="managedList")
|
|
1963
|
+
def managed_list(self) -> Optional[_builtins.str]:
|
|
1964
|
+
"""
|
|
1965
|
+
The name of the managed list applied to this rule.
|
|
1966
|
+
"""
|
|
1967
|
+
return pulumi.get(self, "managed_list")
|
|
1968
|
+
|
|
1969
|
+
@_builtins.property
|
|
1970
|
+
@pulumi.getter(name="managedRulesets")
|
|
1971
|
+
def managed_rulesets(self) -> Optional[Sequence['outputs.WafRuleConfigManagedRuleset']]:
|
|
1972
|
+
"""
|
|
1973
|
+
The managed rulesets referenced by this rule and their configurations. See `managed_rulesets` below.
|
|
1974
|
+
"""
|
|
1975
|
+
return pulumi.get(self, "managed_rulesets")
|
|
1976
|
+
|
|
1977
|
+
@_builtins.property
|
|
1978
|
+
@pulumi.getter
|
|
1979
|
+
def name(self) -> Optional[_builtins.str]:
|
|
1980
|
+
"""
|
|
1981
|
+
The package name of an authorized application.
|
|
1982
|
+
"""
|
|
1983
|
+
return pulumi.get(self, "name")
|
|
1984
|
+
|
|
1985
|
+
@_builtins.property
|
|
1986
|
+
@pulumi.getter
|
|
1987
|
+
def notes(self) -> Optional[_builtins.str]:
|
|
1988
|
+
"""
|
|
1989
|
+
Additional notes about this rule.
|
|
1990
|
+
"""
|
|
1991
|
+
return pulumi.get(self, "notes")
|
|
1992
|
+
|
|
1993
|
+
@_builtins.property
|
|
1994
|
+
@pulumi.getter(name="rateLimit")
|
|
1995
|
+
def rate_limit(self) -> Optional['outputs.WafRuleConfigRateLimit']:
|
|
1996
|
+
"""
|
|
1997
|
+
Configuration of the rate limiting rule. See `rate_limit` below.
|
|
1998
|
+
"""
|
|
1999
|
+
return pulumi.get(self, "rate_limit")
|
|
2000
|
+
|
|
2001
|
+
@_builtins.property
|
|
2002
|
+
@pulumi.getter(name="securityLevel")
|
|
2003
|
+
def security_level(self) -> Optional['outputs.WafRuleConfigSecurityLevel']:
|
|
2004
|
+
"""
|
|
2005
|
+
The overall security protection level of WAF. See `security_level` below.
|
|
2006
|
+
"""
|
|
2007
|
+
return pulumi.get(self, "security_level")
|
|
2008
|
+
|
|
2009
|
+
@_builtins.property
|
|
2010
|
+
@pulumi.getter
|
|
2011
|
+
def sigchls(self) -> Optional[Sequence[_builtins.str]]:
|
|
2012
|
+
"""
|
|
2013
|
+
Configuration items for token verification mechanisms.
|
|
2014
|
+
"""
|
|
2015
|
+
return pulumi.get(self, "sigchls")
|
|
2016
|
+
|
|
2017
|
+
@_builtins.property
|
|
2018
|
+
@pulumi.getter
|
|
2019
|
+
def status(self) -> Optional[_builtins.str]:
|
|
2020
|
+
"""
|
|
2021
|
+
The status of the managed rule: whether it is enabled or disabled.
|
|
2022
|
+
"""
|
|
2023
|
+
return pulumi.get(self, "status")
|
|
2024
|
+
|
|
2025
|
+
@_builtins.property
|
|
2026
|
+
@pulumi.getter
|
|
2027
|
+
def timer(self) -> Optional['outputs.WafRuleConfigTimer']:
|
|
2028
|
+
"""
|
|
2029
|
+
Configuration for the time schedule when the rule takes effect. See `timer` below.
|
|
2030
|
+
"""
|
|
2031
|
+
return pulumi.get(self, "timer")
|
|
2032
|
+
|
|
2033
|
+
@_builtins.property
|
|
2034
|
+
@pulumi.getter
|
|
2035
|
+
def type(self) -> Optional[_builtins.str]:
|
|
2036
|
+
"""
|
|
2037
|
+
The type category of the WAF rule.
|
|
2038
|
+
"""
|
|
2039
|
+
return pulumi.get(self, "type")
|
|
2040
|
+
|
|
2041
|
+
@_builtins.property
|
|
2042
|
+
@pulumi.getter
|
|
2043
|
+
def value(self) -> Optional[_builtins.str]:
|
|
2044
|
+
"""
|
|
2045
|
+
The value of the custom signature field used for validation.
|
|
2046
|
+
"""
|
|
2047
|
+
return pulumi.get(self, "value")
|
|
2048
|
+
|
|
2049
|
+
|
|
2050
|
+
@pulumi.output_type
|
|
2051
|
+
class WafRuleConfigActions(dict):
|
|
2052
|
+
def __init__(__self__, *,
|
|
2053
|
+
bypass: Optional['outputs.WafRuleConfigActionsBypass'] = None,
|
|
2054
|
+
response: Optional['outputs.WafRuleConfigActionsResponse'] = None):
|
|
2055
|
+
"""
|
|
2056
|
+
:param 'WafRuleConfigActionsBypassArgs' bypass: The skip configuration specified by the whitelist rule. See `bypass` below.
|
|
2057
|
+
"""
|
|
2058
|
+
if bypass is not None:
|
|
2059
|
+
pulumi.set(__self__, "bypass", bypass)
|
|
2060
|
+
if response is not None:
|
|
2061
|
+
pulumi.set(__self__, "response", response)
|
|
2062
|
+
|
|
2063
|
+
@_builtins.property
|
|
2064
|
+
@pulumi.getter
|
|
2065
|
+
def bypass(self) -> Optional['outputs.WafRuleConfigActionsBypass']:
|
|
2066
|
+
"""
|
|
2067
|
+
The skip configuration specified by the whitelist rule. See `bypass` below.
|
|
2068
|
+
"""
|
|
2069
|
+
return pulumi.get(self, "bypass")
|
|
2070
|
+
|
|
2071
|
+
@_builtins.property
|
|
2072
|
+
@pulumi.getter
|
|
2073
|
+
def response(self) -> Optional['outputs.WafRuleConfigActionsResponse']:
|
|
2074
|
+
return pulumi.get(self, "response")
|
|
2075
|
+
|
|
2076
|
+
|
|
2077
|
+
@pulumi.output_type
|
|
2078
|
+
class WafRuleConfigActionsBypass(dict):
|
|
2079
|
+
@staticmethod
|
|
2080
|
+
def __key_warning(key: str):
|
|
2081
|
+
suggest = None
|
|
2082
|
+
if key == "customRules":
|
|
2083
|
+
suggest = "custom_rules"
|
|
2084
|
+
elif key == "regularRules":
|
|
2085
|
+
suggest = "regular_rules"
|
|
2086
|
+
elif key == "regularTypes":
|
|
2087
|
+
suggest = "regular_types"
|
|
2088
|
+
|
|
2089
|
+
if suggest:
|
|
2090
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfigActionsBypass. Access the value via the '{suggest}' property getter instead.")
|
|
2091
|
+
|
|
2092
|
+
def __getitem__(self, key: str) -> Any:
|
|
2093
|
+
WafRuleConfigActionsBypass.__key_warning(key)
|
|
2094
|
+
return super().__getitem__(key)
|
|
2095
|
+
|
|
2096
|
+
def get(self, key: str, default = None) -> Any:
|
|
2097
|
+
WafRuleConfigActionsBypass.__key_warning(key)
|
|
2098
|
+
return super().get(key, default)
|
|
2099
|
+
|
|
2100
|
+
def __init__(__self__, *,
|
|
2101
|
+
custom_rules: Optional[Sequence[_builtins.int]] = None,
|
|
2102
|
+
regular_rules: Optional[Sequence[_builtins.int]] = None,
|
|
2103
|
+
regular_types: Optional[Sequence[_builtins.str]] = None,
|
|
2104
|
+
skip: Optional[_builtins.str] = None,
|
|
2105
|
+
tags: Optional[Sequence[_builtins.str]] = None):
|
|
2106
|
+
"""
|
|
2107
|
+
:param Sequence[_builtins.int] custom_rules: The IDs of custom rules to skip.
|
|
2108
|
+
:param Sequence[_builtins.int] regular_rules: The IDs of specific managed rules to skip.
|
|
2109
|
+
:param Sequence[_builtins.str] regular_types: The types of managed rules to skip.
|
|
2110
|
+
:param _builtins.str skip: The scope that is skipped when requests match conditions defined in the whitelist rule.
|
|
2111
|
+
:param Sequence[_builtins.str] tags: The rule categories that are skipped when requests match conditions defined in the whitelist rule.
|
|
2112
|
+
"""
|
|
2113
|
+
if custom_rules is not None:
|
|
2114
|
+
pulumi.set(__self__, "custom_rules", custom_rules)
|
|
2115
|
+
if regular_rules is not None:
|
|
2116
|
+
pulumi.set(__self__, "regular_rules", regular_rules)
|
|
2117
|
+
if regular_types is not None:
|
|
2118
|
+
pulumi.set(__self__, "regular_types", regular_types)
|
|
2119
|
+
if skip is not None:
|
|
2120
|
+
pulumi.set(__self__, "skip", skip)
|
|
2121
|
+
if tags is not None:
|
|
2122
|
+
pulumi.set(__self__, "tags", tags)
|
|
2123
|
+
|
|
2124
|
+
@_builtins.property
|
|
2125
|
+
@pulumi.getter(name="customRules")
|
|
2126
|
+
def custom_rules(self) -> Optional[Sequence[_builtins.int]]:
|
|
2127
|
+
"""
|
|
2128
|
+
The IDs of custom rules to skip.
|
|
2129
|
+
"""
|
|
2130
|
+
return pulumi.get(self, "custom_rules")
|
|
2131
|
+
|
|
2132
|
+
@_builtins.property
|
|
2133
|
+
@pulumi.getter(name="regularRules")
|
|
2134
|
+
def regular_rules(self) -> Optional[Sequence[_builtins.int]]:
|
|
2135
|
+
"""
|
|
2136
|
+
The IDs of specific managed rules to skip.
|
|
2137
|
+
"""
|
|
2138
|
+
return pulumi.get(self, "regular_rules")
|
|
2139
|
+
|
|
2140
|
+
@_builtins.property
|
|
2141
|
+
@pulumi.getter(name="regularTypes")
|
|
2142
|
+
def regular_types(self) -> Optional[Sequence[_builtins.str]]:
|
|
2143
|
+
"""
|
|
2144
|
+
The types of managed rules to skip.
|
|
2145
|
+
"""
|
|
2146
|
+
return pulumi.get(self, "regular_types")
|
|
2147
|
+
|
|
2148
|
+
@_builtins.property
|
|
2149
|
+
@pulumi.getter
|
|
2150
|
+
def skip(self) -> Optional[_builtins.str]:
|
|
2151
|
+
"""
|
|
2152
|
+
The scope that is skipped when requests match conditions defined in the whitelist rule.
|
|
2153
|
+
"""
|
|
2154
|
+
return pulumi.get(self, "skip")
|
|
2155
|
+
|
|
2156
|
+
@_builtins.property
|
|
2157
|
+
@pulumi.getter
|
|
2158
|
+
def tags(self) -> Optional[Sequence[_builtins.str]]:
|
|
2159
|
+
"""
|
|
2160
|
+
The rule categories that are skipped when requests match conditions defined in the whitelist rule.
|
|
2161
|
+
"""
|
|
2162
|
+
return pulumi.get(self, "tags")
|
|
2163
|
+
|
|
2164
|
+
|
|
2165
|
+
@pulumi.output_type
|
|
2166
|
+
class WafRuleConfigActionsResponse(dict):
|
|
2167
|
+
def __init__(__self__, *,
|
|
2168
|
+
code: Optional[_builtins.int] = None,
|
|
2169
|
+
id: Optional[_builtins.int] = None):
|
|
2170
|
+
"""
|
|
2171
|
+
:param _builtins.int id: The internal unique ID of the WAF rule.
|
|
2172
|
+
"""
|
|
2173
|
+
if code is not None:
|
|
2174
|
+
pulumi.set(__self__, "code", code)
|
|
2175
|
+
if id is not None:
|
|
2176
|
+
pulumi.set(__self__, "id", id)
|
|
2177
|
+
|
|
2178
|
+
@_builtins.property
|
|
2179
|
+
@pulumi.getter
|
|
2180
|
+
def code(self) -> Optional[_builtins.int]:
|
|
2181
|
+
return pulumi.get(self, "code")
|
|
2182
|
+
|
|
2183
|
+
@_builtins.property
|
|
2184
|
+
@pulumi.getter
|
|
2185
|
+
def id(self) -> Optional[_builtins.int]:
|
|
2186
|
+
"""
|
|
2187
|
+
The internal unique ID of the WAF rule.
|
|
2188
|
+
"""
|
|
2189
|
+
return pulumi.get(self, "id")
|
|
2190
|
+
|
|
2191
|
+
|
|
2192
|
+
@pulumi.output_type
|
|
2193
|
+
class WafRuleConfigAppPackage(dict):
|
|
2194
|
+
@staticmethod
|
|
2195
|
+
def __key_warning(key: str):
|
|
2196
|
+
suggest = None
|
|
2197
|
+
if key == "packageSigns":
|
|
2198
|
+
suggest = "package_signs"
|
|
2199
|
+
|
|
2200
|
+
if suggest:
|
|
2201
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfigAppPackage. Access the value via the '{suggest}' property getter instead.")
|
|
2202
|
+
|
|
2203
|
+
def __getitem__(self, key: str) -> Any:
|
|
2204
|
+
WafRuleConfigAppPackage.__key_warning(key)
|
|
2205
|
+
return super().__getitem__(key)
|
|
2206
|
+
|
|
2207
|
+
def get(self, key: str, default = None) -> Any:
|
|
2208
|
+
WafRuleConfigAppPackage.__key_warning(key)
|
|
2209
|
+
return super().get(key, default)
|
|
2210
|
+
|
|
2211
|
+
def __init__(__self__, *,
|
|
2212
|
+
package_signs: Optional[Sequence['outputs.WafRuleConfigAppPackagePackageSign']] = None):
|
|
2213
|
+
"""
|
|
2214
|
+
:param Sequence['WafRuleConfigAppPackagePackageSignArgs'] package_signs: Security mechanism to prevent apps from being repackaged. See `package_signs` below.
|
|
2215
|
+
"""
|
|
2216
|
+
if package_signs is not None:
|
|
2217
|
+
pulumi.set(__self__, "package_signs", package_signs)
|
|
2218
|
+
|
|
2219
|
+
@_builtins.property
|
|
2220
|
+
@pulumi.getter(name="packageSigns")
|
|
2221
|
+
def package_signs(self) -> Optional[Sequence['outputs.WafRuleConfigAppPackagePackageSign']]:
|
|
2222
|
+
"""
|
|
2223
|
+
Security mechanism to prevent apps from being repackaged. See `package_signs` below.
|
|
2224
|
+
"""
|
|
2225
|
+
return pulumi.get(self, "package_signs")
|
|
2226
|
+
|
|
2227
|
+
|
|
2228
|
+
@pulumi.output_type
|
|
2229
|
+
class WafRuleConfigAppPackagePackageSign(dict):
|
|
2230
|
+
def __init__(__self__, *,
|
|
2231
|
+
name: Optional[_builtins.str] = None,
|
|
2232
|
+
sign: Optional[_builtins.str] = None):
|
|
2233
|
+
"""
|
|
2234
|
+
:param _builtins.str sign: The digital signature of a legitimate app package.
|
|
2235
|
+
"""
|
|
2236
|
+
if name is not None:
|
|
2237
|
+
pulumi.set(__self__, "name", name)
|
|
2238
|
+
if sign is not None:
|
|
2239
|
+
pulumi.set(__self__, "sign", sign)
|
|
2240
|
+
|
|
2241
|
+
@_builtins.property
|
|
2242
|
+
@pulumi.getter
|
|
2243
|
+
def name(self) -> Optional[_builtins.str]:
|
|
2244
|
+
return pulumi.get(self, "name")
|
|
2245
|
+
|
|
2246
|
+
@_builtins.property
|
|
2247
|
+
@pulumi.getter
|
|
2248
|
+
def sign(self) -> Optional[_builtins.str]:
|
|
2249
|
+
"""
|
|
2250
|
+
The digital signature of a legitimate app package.
|
|
2251
|
+
"""
|
|
2252
|
+
return pulumi.get(self, "sign")
|
|
2253
|
+
|
|
2254
|
+
|
|
2255
|
+
@pulumi.output_type
|
|
2256
|
+
class WafRuleConfigAppSdk(dict):
|
|
2257
|
+
@staticmethod
|
|
2258
|
+
def __key_warning(key: str):
|
|
2259
|
+
suggest = None
|
|
2260
|
+
if key == "customSign":
|
|
2261
|
+
suggest = "custom_sign"
|
|
2262
|
+
elif key == "customSignStatus":
|
|
2263
|
+
suggest = "custom_sign_status"
|
|
2264
|
+
elif key == "featureAbnormals":
|
|
2265
|
+
suggest = "feature_abnormals"
|
|
2266
|
+
|
|
2267
|
+
if suggest:
|
|
2268
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfigAppSdk. Access the value via the '{suggest}' property getter instead.")
|
|
2269
|
+
|
|
2270
|
+
def __getitem__(self, key: str) -> Any:
|
|
2271
|
+
WafRuleConfigAppSdk.__key_warning(key)
|
|
2272
|
+
return super().__getitem__(key)
|
|
2273
|
+
|
|
2274
|
+
def get(self, key: str, default = None) -> Any:
|
|
2275
|
+
WafRuleConfigAppSdk.__key_warning(key)
|
|
2276
|
+
return super().get(key, default)
|
|
2277
|
+
|
|
2278
|
+
def __init__(__self__, *,
|
|
2279
|
+
custom_sign: Optional['outputs.WafRuleConfigAppSdkCustomSign'] = None,
|
|
2280
|
+
custom_sign_status: Optional[_builtins.str] = None,
|
|
2281
|
+
feature_abnormals: Optional[Sequence[_builtins.str]] = None):
|
|
2282
|
+
"""
|
|
2283
|
+
:param 'WafRuleConfigAppSdkCustomSignArgs' custom_sign: Custom fields used for mobile app signature validation. See `custom_sign` below.
|
|
2284
|
+
:param _builtins.str custom_sign_status: Indicates whether the custom signature field validation is enabled.
|
|
2285
|
+
:param Sequence[_builtins.str] feature_abnormals: Detected abnormal behaviors of the application.
|
|
2286
|
+
"""
|
|
2287
|
+
if custom_sign is not None:
|
|
2288
|
+
pulumi.set(__self__, "custom_sign", custom_sign)
|
|
2289
|
+
if custom_sign_status is not None:
|
|
2290
|
+
pulumi.set(__self__, "custom_sign_status", custom_sign_status)
|
|
2291
|
+
if feature_abnormals is not None:
|
|
2292
|
+
pulumi.set(__self__, "feature_abnormals", feature_abnormals)
|
|
2293
|
+
|
|
2294
|
+
@_builtins.property
|
|
2295
|
+
@pulumi.getter(name="customSign")
|
|
2296
|
+
def custom_sign(self) -> Optional['outputs.WafRuleConfigAppSdkCustomSign']:
|
|
2297
|
+
"""
|
|
2298
|
+
Custom fields used for mobile app signature validation. See `custom_sign` below.
|
|
2299
|
+
"""
|
|
2300
|
+
return pulumi.get(self, "custom_sign")
|
|
2301
|
+
|
|
2302
|
+
@_builtins.property
|
|
2303
|
+
@pulumi.getter(name="customSignStatus")
|
|
2304
|
+
def custom_sign_status(self) -> Optional[_builtins.str]:
|
|
2305
|
+
"""
|
|
2306
|
+
Indicates whether the custom signature field validation is enabled.
|
|
2307
|
+
"""
|
|
2308
|
+
return pulumi.get(self, "custom_sign_status")
|
|
2309
|
+
|
|
2310
|
+
@_builtins.property
|
|
2311
|
+
@pulumi.getter(name="featureAbnormals")
|
|
2312
|
+
def feature_abnormals(self) -> Optional[Sequence[_builtins.str]]:
|
|
2313
|
+
"""
|
|
2314
|
+
Detected abnormal behaviors of the application.
|
|
2315
|
+
"""
|
|
2316
|
+
return pulumi.get(self, "feature_abnormals")
|
|
2317
|
+
|
|
2318
|
+
|
|
2319
|
+
@pulumi.output_type
|
|
2320
|
+
class WafRuleConfigAppSdkCustomSign(dict):
|
|
2321
|
+
def __init__(__self__, *,
|
|
2322
|
+
key: Optional[_builtins.str] = None,
|
|
2323
|
+
value: Optional[_builtins.str] = None):
|
|
2324
|
+
"""
|
|
2325
|
+
:param _builtins.str key: The name of the custom signature field used for validation.
|
|
2326
|
+
:param _builtins.str value: The value of the custom signature field used for validation.
|
|
2327
|
+
"""
|
|
2328
|
+
if key is not None:
|
|
2329
|
+
pulumi.set(__self__, "key", key)
|
|
2330
|
+
if value is not None:
|
|
2331
|
+
pulumi.set(__self__, "value", value)
|
|
2332
|
+
|
|
2333
|
+
@_builtins.property
|
|
2334
|
+
@pulumi.getter
|
|
2335
|
+
def key(self) -> Optional[_builtins.str]:
|
|
2336
|
+
"""
|
|
2337
|
+
The name of the custom signature field used for validation.
|
|
2338
|
+
"""
|
|
2339
|
+
return pulumi.get(self, "key")
|
|
2340
|
+
|
|
2341
|
+
@_builtins.property
|
|
2342
|
+
@pulumi.getter
|
|
2343
|
+
def value(self) -> Optional[_builtins.str]:
|
|
2344
|
+
"""
|
|
2345
|
+
The value of the custom signature field used for validation.
|
|
2346
|
+
"""
|
|
2347
|
+
return pulumi.get(self, "value")
|
|
2348
|
+
|
|
2349
|
+
|
|
2350
|
+
@pulumi.output_type
|
|
2351
|
+
class WafRuleConfigManagedRuleset(dict):
|
|
2352
|
+
@staticmethod
|
|
2353
|
+
def __key_warning(key: str):
|
|
2354
|
+
suggest = None
|
|
2355
|
+
if key == "attackType":
|
|
2356
|
+
suggest = "attack_type"
|
|
2357
|
+
elif key == "managedRules":
|
|
2358
|
+
suggest = "managed_rules"
|
|
2359
|
+
elif key == "numberEnabled":
|
|
2360
|
+
suggest = "number_enabled"
|
|
2361
|
+
elif key == "numberTotal":
|
|
2362
|
+
suggest = "number_total"
|
|
2363
|
+
elif key == "protectionLevel":
|
|
2364
|
+
suggest = "protection_level"
|
|
2365
|
+
|
|
2366
|
+
if suggest:
|
|
2367
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfigManagedRuleset. Access the value via the '{suggest}' property getter instead.")
|
|
2368
|
+
|
|
2369
|
+
def __getitem__(self, key: str) -> Any:
|
|
2370
|
+
WafRuleConfigManagedRuleset.__key_warning(key)
|
|
2371
|
+
return super().__getitem__(key)
|
|
2372
|
+
|
|
2373
|
+
def get(self, key: str, default = None) -> Any:
|
|
2374
|
+
WafRuleConfigManagedRuleset.__key_warning(key)
|
|
2375
|
+
return super().get(key, default)
|
|
2376
|
+
|
|
2377
|
+
def __init__(__self__, *,
|
|
2378
|
+
action: Optional[_builtins.str] = None,
|
|
2379
|
+
attack_type: Optional[_builtins.int] = None,
|
|
2380
|
+
managed_rules: Optional[Sequence['outputs.WafRuleConfigManagedRulesetManagedRule']] = None,
|
|
2381
|
+
number_enabled: Optional[_builtins.int] = None,
|
|
2382
|
+
number_total: Optional[_builtins.int] = None,
|
|
2383
|
+
protection_level: Optional[_builtins.int] = None):
|
|
2384
|
+
"""
|
|
2385
|
+
:param _builtins.int attack_type: The primary attack type targeted by this ruleset.
|
|
2386
|
+
:param Sequence['WafRuleConfigManagedRulesetManagedRuleArgs'] managed_rules: The individual managed rules included in this ruleset. See `managed_rules` below.
|
|
2387
|
+
:param _builtins.int number_enabled: Number of rules currently enabled.
|
|
2388
|
+
:param _builtins.int number_total: Total number of rules in this ruleset.
|
|
2389
|
+
:param _builtins.int protection_level: The protection strength level assigned to this ruleset.
|
|
2390
|
+
"""
|
|
2391
|
+
if action is not None:
|
|
2392
|
+
pulumi.set(__self__, "action", action)
|
|
2393
|
+
if attack_type is not None:
|
|
2394
|
+
pulumi.set(__self__, "attack_type", attack_type)
|
|
2395
|
+
if managed_rules is not None:
|
|
2396
|
+
pulumi.set(__self__, "managed_rules", managed_rules)
|
|
2397
|
+
if number_enabled is not None:
|
|
2398
|
+
pulumi.set(__self__, "number_enabled", number_enabled)
|
|
2399
|
+
if number_total is not None:
|
|
2400
|
+
pulumi.set(__self__, "number_total", number_total)
|
|
2401
|
+
if protection_level is not None:
|
|
2402
|
+
pulumi.set(__self__, "protection_level", protection_level)
|
|
2403
|
+
|
|
2404
|
+
@_builtins.property
|
|
2405
|
+
@pulumi.getter
|
|
2406
|
+
def action(self) -> Optional[_builtins.str]:
|
|
2407
|
+
return pulumi.get(self, "action")
|
|
2408
|
+
|
|
2409
|
+
@_builtins.property
|
|
2410
|
+
@pulumi.getter(name="attackType")
|
|
2411
|
+
def attack_type(self) -> Optional[_builtins.int]:
|
|
2412
|
+
"""
|
|
2413
|
+
The primary attack type targeted by this ruleset.
|
|
2414
|
+
"""
|
|
2415
|
+
return pulumi.get(self, "attack_type")
|
|
2416
|
+
|
|
2417
|
+
@_builtins.property
|
|
2418
|
+
@pulumi.getter(name="managedRules")
|
|
2419
|
+
def managed_rules(self) -> Optional[Sequence['outputs.WafRuleConfigManagedRulesetManagedRule']]:
|
|
2420
|
+
"""
|
|
2421
|
+
The individual managed rules included in this ruleset. See `managed_rules` below.
|
|
2422
|
+
"""
|
|
2423
|
+
return pulumi.get(self, "managed_rules")
|
|
2424
|
+
|
|
2425
|
+
@_builtins.property
|
|
2426
|
+
@pulumi.getter(name="numberEnabled")
|
|
2427
|
+
def number_enabled(self) -> Optional[_builtins.int]:
|
|
2428
|
+
"""
|
|
2429
|
+
Number of rules currently enabled.
|
|
2430
|
+
"""
|
|
2431
|
+
return pulumi.get(self, "number_enabled")
|
|
2432
|
+
|
|
2433
|
+
@_builtins.property
|
|
2434
|
+
@pulumi.getter(name="numberTotal")
|
|
2435
|
+
def number_total(self) -> Optional[_builtins.int]:
|
|
2436
|
+
"""
|
|
2437
|
+
Total number of rules in this ruleset.
|
|
2438
|
+
"""
|
|
2439
|
+
return pulumi.get(self, "number_total")
|
|
2440
|
+
|
|
2441
|
+
@_builtins.property
|
|
2442
|
+
@pulumi.getter(name="protectionLevel")
|
|
2443
|
+
def protection_level(self) -> Optional[_builtins.int]:
|
|
2444
|
+
"""
|
|
2445
|
+
The protection strength level assigned to this ruleset.
|
|
2446
|
+
"""
|
|
2447
|
+
return pulumi.get(self, "protection_level")
|
|
2448
|
+
|
|
2449
|
+
|
|
2450
|
+
@pulumi.output_type
|
|
2451
|
+
class WafRuleConfigManagedRulesetManagedRule(dict):
|
|
2452
|
+
def __init__(__self__, *,
|
|
2453
|
+
action: Optional[_builtins.str] = None,
|
|
2454
|
+
id: Optional[_builtins.int] = None,
|
|
2455
|
+
status: Optional[_builtins.str] = None):
|
|
2456
|
+
"""
|
|
2457
|
+
:param _builtins.int id: The internal unique ID of the WAF rule.
|
|
2458
|
+
:param _builtins.str status: The status of the managed rule: whether it is enabled or disabled.
|
|
2459
|
+
"""
|
|
2460
|
+
if action is not None:
|
|
2461
|
+
pulumi.set(__self__, "action", action)
|
|
2462
|
+
if id is not None:
|
|
2463
|
+
pulumi.set(__self__, "id", id)
|
|
2464
|
+
if status is not None:
|
|
2465
|
+
pulumi.set(__self__, "status", status)
|
|
2466
|
+
|
|
2467
|
+
@_builtins.property
|
|
2468
|
+
@pulumi.getter
|
|
2469
|
+
def action(self) -> Optional[_builtins.str]:
|
|
2470
|
+
return pulumi.get(self, "action")
|
|
2471
|
+
|
|
2472
|
+
@_builtins.property
|
|
2473
|
+
@pulumi.getter
|
|
2474
|
+
def id(self) -> Optional[_builtins.int]:
|
|
2475
|
+
"""
|
|
2476
|
+
The internal unique ID of the WAF rule.
|
|
2477
|
+
"""
|
|
2478
|
+
return pulumi.get(self, "id")
|
|
2479
|
+
|
|
2480
|
+
@_builtins.property
|
|
2481
|
+
@pulumi.getter
|
|
2482
|
+
def status(self) -> Optional[_builtins.str]:
|
|
2483
|
+
"""
|
|
2484
|
+
The status of the managed rule: whether it is enabled or disabled.
|
|
2485
|
+
"""
|
|
2486
|
+
return pulumi.get(self, "status")
|
|
2487
|
+
|
|
2488
|
+
|
|
2489
|
+
@pulumi.output_type
|
|
2490
|
+
class WafRuleConfigRateLimit(dict):
|
|
2491
|
+
@staticmethod
|
|
2492
|
+
def __key_warning(key: str):
|
|
2493
|
+
suggest = None
|
|
2494
|
+
if key == "onHit":
|
|
2495
|
+
suggest = "on_hit"
|
|
2496
|
+
|
|
2497
|
+
if suggest:
|
|
2498
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfigRateLimit. Access the value via the '{suggest}' property getter instead.")
|
|
2499
|
+
|
|
2500
|
+
def __getitem__(self, key: str) -> Any:
|
|
2501
|
+
WafRuleConfigRateLimit.__key_warning(key)
|
|
2502
|
+
return super().__getitem__(key)
|
|
2503
|
+
|
|
2504
|
+
def get(self, key: str, default = None) -> Any:
|
|
2505
|
+
WafRuleConfigRateLimit.__key_warning(key)
|
|
2506
|
+
return super().get(key, default)
|
|
2507
|
+
|
|
2508
|
+
def __init__(__self__, *,
|
|
2509
|
+
characteristics: Optional['outputs.WafRuleConfigRateLimitCharacteristics'] = None,
|
|
2510
|
+
interval: Optional[_builtins.int] = None,
|
|
2511
|
+
on_hit: Optional[_builtins.bool] = None,
|
|
2512
|
+
threshold: Optional['outputs.WafRuleConfigRateLimitThreshold'] = None,
|
|
2513
|
+
ttl: Optional[_builtins.int] = None):
|
|
2514
|
+
"""
|
|
2515
|
+
:param 'WafRuleConfigRateLimitCharacteristicsArgs' characteristics: The statistical dimensions to which the rate limiting rule applies. See `characteristics` below.
|
|
2516
|
+
:param _builtins.int interval: The statistical interval.
|
|
2517
|
+
:param _builtins.bool on_hit: Indicates whether the rule applies to requests that hit the cache.
|
|
2518
|
+
:param 'WafRuleConfigRateLimitThresholdArgs' threshold: Threshold settings for the rate limiting rule. See `threshold` below.
|
|
2519
|
+
:param _builtins.int ttl: The timeout period for creating the stack used in rate limiting.
|
|
2520
|
+
"""
|
|
2521
|
+
if characteristics is not None:
|
|
2522
|
+
pulumi.set(__self__, "characteristics", characteristics)
|
|
2523
|
+
if interval is not None:
|
|
2524
|
+
pulumi.set(__self__, "interval", interval)
|
|
2525
|
+
if on_hit is not None:
|
|
2526
|
+
pulumi.set(__self__, "on_hit", on_hit)
|
|
2527
|
+
if threshold is not None:
|
|
2528
|
+
pulumi.set(__self__, "threshold", threshold)
|
|
2529
|
+
if ttl is not None:
|
|
2530
|
+
pulumi.set(__self__, "ttl", ttl)
|
|
2531
|
+
|
|
2532
|
+
@_builtins.property
|
|
2533
|
+
@pulumi.getter
|
|
2534
|
+
def characteristics(self) -> Optional['outputs.WafRuleConfigRateLimitCharacteristics']:
|
|
2535
|
+
"""
|
|
2536
|
+
The statistical dimensions to which the rate limiting rule applies. See `characteristics` below.
|
|
2537
|
+
"""
|
|
2538
|
+
return pulumi.get(self, "characteristics")
|
|
2539
|
+
|
|
2540
|
+
@_builtins.property
|
|
2541
|
+
@pulumi.getter
|
|
2542
|
+
def interval(self) -> Optional[_builtins.int]:
|
|
2543
|
+
"""
|
|
2544
|
+
The statistical interval.
|
|
2545
|
+
"""
|
|
2546
|
+
return pulumi.get(self, "interval")
|
|
2547
|
+
|
|
2548
|
+
@_builtins.property
|
|
2549
|
+
@pulumi.getter(name="onHit")
|
|
2550
|
+
def on_hit(self) -> Optional[_builtins.bool]:
|
|
2551
|
+
"""
|
|
2552
|
+
Indicates whether the rule applies to requests that hit the cache.
|
|
2553
|
+
"""
|
|
2554
|
+
return pulumi.get(self, "on_hit")
|
|
2555
|
+
|
|
2556
|
+
@_builtins.property
|
|
2557
|
+
@pulumi.getter
|
|
2558
|
+
def threshold(self) -> Optional['outputs.WafRuleConfigRateLimitThreshold']:
|
|
2559
|
+
"""
|
|
2560
|
+
Threshold settings for the rate limiting rule. See `threshold` below.
|
|
2561
|
+
"""
|
|
2562
|
+
return pulumi.get(self, "threshold")
|
|
2563
|
+
|
|
2564
|
+
@_builtins.property
|
|
2565
|
+
@pulumi.getter
|
|
2566
|
+
def ttl(self) -> Optional[_builtins.int]:
|
|
2567
|
+
"""
|
|
2568
|
+
The timeout period for creating the stack used in rate limiting.
|
|
2569
|
+
"""
|
|
2570
|
+
return pulumi.get(self, "ttl")
|
|
2571
|
+
|
|
2572
|
+
|
|
2573
|
+
@pulumi.output_type
|
|
2574
|
+
class WafRuleConfigRateLimitCharacteristics(dict):
|
|
2575
|
+
def __init__(__self__, *,
|
|
2576
|
+
criterias: Optional[Sequence['outputs.WafRuleConfigRateLimitCharacteristicsCriteria']] = None,
|
|
2577
|
+
logic: Optional[_builtins.str] = None):
|
|
2578
|
+
if criterias is not None:
|
|
2579
|
+
pulumi.set(__self__, "criterias", criterias)
|
|
2580
|
+
if logic is not None:
|
|
2581
|
+
pulumi.set(__self__, "logic", logic)
|
|
2582
|
+
|
|
2583
|
+
@_builtins.property
|
|
2584
|
+
@pulumi.getter
|
|
2585
|
+
def criterias(self) -> Optional[Sequence['outputs.WafRuleConfigRateLimitCharacteristicsCriteria']]:
|
|
2586
|
+
return pulumi.get(self, "criterias")
|
|
2587
|
+
|
|
2588
|
+
@_builtins.property
|
|
2589
|
+
@pulumi.getter
|
|
2590
|
+
def logic(self) -> Optional[_builtins.str]:
|
|
2591
|
+
return pulumi.get(self, "logic")
|
|
2592
|
+
|
|
2593
|
+
|
|
2594
|
+
@pulumi.output_type
|
|
2595
|
+
class WafRuleConfigRateLimitCharacteristicsCriteria(dict):
|
|
2596
|
+
@staticmethod
|
|
2597
|
+
def __key_warning(key: str):
|
|
2598
|
+
suggest = None
|
|
2599
|
+
if key == "matchType":
|
|
2600
|
+
suggest = "match_type"
|
|
2601
|
+
|
|
2602
|
+
if suggest:
|
|
2603
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfigRateLimitCharacteristicsCriteria. Access the value via the '{suggest}' property getter instead.")
|
|
2604
|
+
|
|
2605
|
+
def __getitem__(self, key: str) -> Any:
|
|
2606
|
+
WafRuleConfigRateLimitCharacteristicsCriteria.__key_warning(key)
|
|
2607
|
+
return super().__getitem__(key)
|
|
2608
|
+
|
|
2609
|
+
def get(self, key: str, default = None) -> Any:
|
|
2610
|
+
WafRuleConfigRateLimitCharacteristicsCriteria.__key_warning(key)
|
|
2611
|
+
return super().get(key, default)
|
|
2612
|
+
|
|
2613
|
+
def __init__(__self__, *,
|
|
2614
|
+
criterias: Optional[Sequence['outputs.WafRuleConfigRateLimitCharacteristicsCriteriaCriteria']] = None,
|
|
2615
|
+
logic: Optional[_builtins.str] = None,
|
|
2616
|
+
match_type: Optional[_builtins.str] = None):
|
|
2617
|
+
if criterias is not None:
|
|
2618
|
+
pulumi.set(__self__, "criterias", criterias)
|
|
2619
|
+
if logic is not None:
|
|
2620
|
+
pulumi.set(__self__, "logic", logic)
|
|
2621
|
+
if match_type is not None:
|
|
2622
|
+
pulumi.set(__self__, "match_type", match_type)
|
|
2623
|
+
|
|
2624
|
+
@_builtins.property
|
|
2625
|
+
@pulumi.getter
|
|
2626
|
+
def criterias(self) -> Optional[Sequence['outputs.WafRuleConfigRateLimitCharacteristicsCriteriaCriteria']]:
|
|
2627
|
+
return pulumi.get(self, "criterias")
|
|
2628
|
+
|
|
2629
|
+
@_builtins.property
|
|
2630
|
+
@pulumi.getter
|
|
2631
|
+
def logic(self) -> Optional[_builtins.str]:
|
|
2632
|
+
return pulumi.get(self, "logic")
|
|
2633
|
+
|
|
2634
|
+
@_builtins.property
|
|
2635
|
+
@pulumi.getter(name="matchType")
|
|
2636
|
+
def match_type(self) -> Optional[_builtins.str]:
|
|
2637
|
+
return pulumi.get(self, "match_type")
|
|
2638
|
+
|
|
2639
|
+
|
|
2640
|
+
@pulumi.output_type
|
|
2641
|
+
class WafRuleConfigRateLimitCharacteristicsCriteriaCriteria(dict):
|
|
2642
|
+
@staticmethod
|
|
2643
|
+
def __key_warning(key: str):
|
|
2644
|
+
suggest = None
|
|
2645
|
+
if key == "matchType":
|
|
2646
|
+
suggest = "match_type"
|
|
2647
|
+
|
|
2648
|
+
if suggest:
|
|
2649
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfigRateLimitCharacteristicsCriteriaCriteria. Access the value via the '{suggest}' property getter instead.")
|
|
2650
|
+
|
|
2651
|
+
def __getitem__(self, key: str) -> Any:
|
|
2652
|
+
WafRuleConfigRateLimitCharacteristicsCriteriaCriteria.__key_warning(key)
|
|
2653
|
+
return super().__getitem__(key)
|
|
2654
|
+
|
|
2655
|
+
def get(self, key: str, default = None) -> Any:
|
|
2656
|
+
WafRuleConfigRateLimitCharacteristicsCriteriaCriteria.__key_warning(key)
|
|
2657
|
+
return super().get(key, default)
|
|
2658
|
+
|
|
2659
|
+
def __init__(__self__, *,
|
|
2660
|
+
criterias: Optional[Sequence['outputs.WafRuleConfigRateLimitCharacteristicsCriteriaCriteriaCriteria']] = None,
|
|
2661
|
+
logic: Optional[_builtins.str] = None,
|
|
2662
|
+
match_type: Optional[_builtins.str] = None):
|
|
2663
|
+
if criterias is not None:
|
|
2664
|
+
pulumi.set(__self__, "criterias", criterias)
|
|
2665
|
+
if logic is not None:
|
|
2666
|
+
pulumi.set(__self__, "logic", logic)
|
|
2667
|
+
if match_type is not None:
|
|
2668
|
+
pulumi.set(__self__, "match_type", match_type)
|
|
2669
|
+
|
|
2670
|
+
@_builtins.property
|
|
2671
|
+
@pulumi.getter
|
|
2672
|
+
def criterias(self) -> Optional[Sequence['outputs.WafRuleConfigRateLimitCharacteristicsCriteriaCriteriaCriteria']]:
|
|
2673
|
+
return pulumi.get(self, "criterias")
|
|
2674
|
+
|
|
2675
|
+
@_builtins.property
|
|
2676
|
+
@pulumi.getter
|
|
2677
|
+
def logic(self) -> Optional[_builtins.str]:
|
|
2678
|
+
return pulumi.get(self, "logic")
|
|
2679
|
+
|
|
2680
|
+
@_builtins.property
|
|
2681
|
+
@pulumi.getter(name="matchType")
|
|
2682
|
+
def match_type(self) -> Optional[_builtins.str]:
|
|
2683
|
+
return pulumi.get(self, "match_type")
|
|
2684
|
+
|
|
2685
|
+
|
|
2686
|
+
@pulumi.output_type
|
|
2687
|
+
class WafRuleConfigRateLimitCharacteristicsCriteriaCriteriaCriteria(dict):
|
|
2688
|
+
@staticmethod
|
|
2689
|
+
def __key_warning(key: str):
|
|
2690
|
+
suggest = None
|
|
2691
|
+
if key == "matchType":
|
|
2692
|
+
suggest = "match_type"
|
|
2693
|
+
|
|
2694
|
+
if suggest:
|
|
2695
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfigRateLimitCharacteristicsCriteriaCriteriaCriteria. Access the value via the '{suggest}' property getter instead.")
|
|
2696
|
+
|
|
2697
|
+
def __getitem__(self, key: str) -> Any:
|
|
2698
|
+
WafRuleConfigRateLimitCharacteristicsCriteriaCriteriaCriteria.__key_warning(key)
|
|
2699
|
+
return super().__getitem__(key)
|
|
2700
|
+
|
|
2701
|
+
def get(self, key: str, default = None) -> Any:
|
|
2702
|
+
WafRuleConfigRateLimitCharacteristicsCriteriaCriteriaCriteria.__key_warning(key)
|
|
2703
|
+
return super().get(key, default)
|
|
2704
|
+
|
|
2705
|
+
def __init__(__self__, *,
|
|
2706
|
+
match_type: Optional[_builtins.str] = None):
|
|
2707
|
+
if match_type is not None:
|
|
2708
|
+
pulumi.set(__self__, "match_type", match_type)
|
|
2709
|
+
|
|
2710
|
+
@_builtins.property
|
|
2711
|
+
@pulumi.getter(name="matchType")
|
|
2712
|
+
def match_type(self) -> Optional[_builtins.str]:
|
|
2713
|
+
return pulumi.get(self, "match_type")
|
|
2714
|
+
|
|
2715
|
+
|
|
2716
|
+
@pulumi.output_type
|
|
2717
|
+
class WafRuleConfigRateLimitThreshold(dict):
|
|
2718
|
+
@staticmethod
|
|
2719
|
+
def __key_warning(key: str):
|
|
2720
|
+
suggest = None
|
|
2721
|
+
if key == "distinctManagedRules":
|
|
2722
|
+
suggest = "distinct_managed_rules"
|
|
2723
|
+
elif key == "managedRulesBlocked":
|
|
2724
|
+
suggest = "managed_rules_blocked"
|
|
2725
|
+
elif key == "responseStatus":
|
|
2726
|
+
suggest = "response_status"
|
|
2727
|
+
|
|
2728
|
+
if suggest:
|
|
2729
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfigRateLimitThreshold. Access the value via the '{suggest}' property getter instead.")
|
|
2730
|
+
|
|
2731
|
+
def __getitem__(self, key: str) -> Any:
|
|
2732
|
+
WafRuleConfigRateLimitThreshold.__key_warning(key)
|
|
2733
|
+
return super().__getitem__(key)
|
|
2734
|
+
|
|
2735
|
+
def get(self, key: str, default = None) -> Any:
|
|
2736
|
+
WafRuleConfigRateLimitThreshold.__key_warning(key)
|
|
2737
|
+
return super().get(key, default)
|
|
2738
|
+
|
|
2739
|
+
def __init__(__self__, *,
|
|
2740
|
+
distinct_managed_rules: Optional[_builtins.int] = None,
|
|
2741
|
+
managed_rules_blocked: Optional[_builtins.int] = None,
|
|
2742
|
+
request: Optional[_builtins.int] = None,
|
|
2743
|
+
response_status: Optional['outputs.WafRuleConfigRateLimitThresholdResponseStatus'] = None,
|
|
2744
|
+
traffic: Optional[_builtins.str] = None):
|
|
2745
|
+
"""
|
|
2746
|
+
:param _builtins.int distinct_managed_rules: The maximum number of distinct managed rules that can be triggered.
|
|
2747
|
+
:param _builtins.int managed_rules_blocked: The maximum number of times that managed rules can be triggered.
|
|
2748
|
+
:param _builtins.int request: The maximum number of allowed requests within a time interval.
|
|
2749
|
+
:param 'WafRuleConfigRateLimitThresholdResponseStatusArgs' response_status: Limits on the frequency of returning specific HTTP status codes. See `response_status` below.
|
|
2750
|
+
:param _builtins.str traffic: The maximum allowed traffic within a time interval (deprecated).
|
|
2751
|
+
"""
|
|
2752
|
+
if distinct_managed_rules is not None:
|
|
2753
|
+
pulumi.set(__self__, "distinct_managed_rules", distinct_managed_rules)
|
|
2754
|
+
if managed_rules_blocked is not None:
|
|
2755
|
+
pulumi.set(__self__, "managed_rules_blocked", managed_rules_blocked)
|
|
2756
|
+
if request is not None:
|
|
2757
|
+
pulumi.set(__self__, "request", request)
|
|
2758
|
+
if response_status is not None:
|
|
2759
|
+
pulumi.set(__self__, "response_status", response_status)
|
|
2760
|
+
if traffic is not None:
|
|
2761
|
+
pulumi.set(__self__, "traffic", traffic)
|
|
2762
|
+
|
|
2763
|
+
@_builtins.property
|
|
2764
|
+
@pulumi.getter(name="distinctManagedRules")
|
|
2765
|
+
def distinct_managed_rules(self) -> Optional[_builtins.int]:
|
|
2766
|
+
"""
|
|
2767
|
+
The maximum number of distinct managed rules that can be triggered.
|
|
2768
|
+
"""
|
|
2769
|
+
return pulumi.get(self, "distinct_managed_rules")
|
|
2770
|
+
|
|
2771
|
+
@_builtins.property
|
|
2772
|
+
@pulumi.getter(name="managedRulesBlocked")
|
|
2773
|
+
def managed_rules_blocked(self) -> Optional[_builtins.int]:
|
|
2774
|
+
"""
|
|
2775
|
+
The maximum number of times that managed rules can be triggered.
|
|
2776
|
+
"""
|
|
2777
|
+
return pulumi.get(self, "managed_rules_blocked")
|
|
2778
|
+
|
|
2779
|
+
@_builtins.property
|
|
2780
|
+
@pulumi.getter
|
|
2781
|
+
def request(self) -> Optional[_builtins.int]:
|
|
2782
|
+
"""
|
|
2783
|
+
The maximum number of allowed requests within a time interval.
|
|
2784
|
+
"""
|
|
2785
|
+
return pulumi.get(self, "request")
|
|
2786
|
+
|
|
2787
|
+
@_builtins.property
|
|
2788
|
+
@pulumi.getter(name="responseStatus")
|
|
2789
|
+
def response_status(self) -> Optional['outputs.WafRuleConfigRateLimitThresholdResponseStatus']:
|
|
2790
|
+
"""
|
|
2791
|
+
Limits on the frequency of returning specific HTTP status codes. See `response_status` below.
|
|
2792
|
+
"""
|
|
2793
|
+
return pulumi.get(self, "response_status")
|
|
2794
|
+
|
|
2795
|
+
@_builtins.property
|
|
2796
|
+
@pulumi.getter
|
|
2797
|
+
def traffic(self) -> Optional[_builtins.str]:
|
|
2798
|
+
"""
|
|
2799
|
+
The maximum allowed traffic within a time interval (deprecated).
|
|
2800
|
+
"""
|
|
2801
|
+
return pulumi.get(self, "traffic")
|
|
2802
|
+
|
|
2803
|
+
|
|
2804
|
+
@pulumi.output_type
|
|
2805
|
+
class WafRuleConfigRateLimitThresholdResponseStatus(dict):
|
|
2806
|
+
def __init__(__self__, *,
|
|
2807
|
+
code: Optional[_builtins.int] = None,
|
|
2808
|
+
count: Optional[_builtins.int] = None,
|
|
2809
|
+
ratio: Optional[_builtins.int] = None):
|
|
2810
|
+
"""
|
|
2811
|
+
:param _builtins.int count: The maximum number of times the specified status code can be returned.
|
|
2812
|
+
:param _builtins.int ratio: The upper limit of the percentage of occurrences of the specified status code among all responses.
|
|
2813
|
+
"""
|
|
2814
|
+
if code is not None:
|
|
2815
|
+
pulumi.set(__self__, "code", code)
|
|
2816
|
+
if count is not None:
|
|
2817
|
+
pulumi.set(__self__, "count", count)
|
|
2818
|
+
if ratio is not None:
|
|
2819
|
+
pulumi.set(__self__, "ratio", ratio)
|
|
2820
|
+
|
|
2821
|
+
@_builtins.property
|
|
2822
|
+
@pulumi.getter
|
|
2823
|
+
def code(self) -> Optional[_builtins.int]:
|
|
2824
|
+
return pulumi.get(self, "code")
|
|
2825
|
+
|
|
2826
|
+
@_builtins.property
|
|
2827
|
+
@pulumi.getter
|
|
2828
|
+
def count(self) -> Optional[_builtins.int]:
|
|
2829
|
+
"""
|
|
2830
|
+
The maximum number of times the specified status code can be returned.
|
|
2831
|
+
"""
|
|
2832
|
+
return pulumi.get(self, "count")
|
|
2833
|
+
|
|
2834
|
+
@_builtins.property
|
|
2835
|
+
@pulumi.getter
|
|
2836
|
+
def ratio(self) -> Optional[_builtins.int]:
|
|
2837
|
+
"""
|
|
2838
|
+
The upper limit of the percentage of occurrences of the specified status code among all responses.
|
|
2839
|
+
"""
|
|
2840
|
+
return pulumi.get(self, "ratio")
|
|
2841
|
+
|
|
2842
|
+
|
|
2843
|
+
@pulumi.output_type
|
|
2844
|
+
class WafRuleConfigSecurityLevel(dict):
|
|
2845
|
+
def __init__(__self__, *,
|
|
2846
|
+
value: Optional[_builtins.str] = None):
|
|
2847
|
+
"""
|
|
2848
|
+
:param _builtins.str value: The value of the custom signature field used for validation.
|
|
2849
|
+
"""
|
|
2850
|
+
if value is not None:
|
|
2851
|
+
pulumi.set(__self__, "value", value)
|
|
2852
|
+
|
|
2853
|
+
@_builtins.property
|
|
2854
|
+
@pulumi.getter
|
|
2855
|
+
def value(self) -> Optional[_builtins.str]:
|
|
2856
|
+
"""
|
|
2857
|
+
The value of the custom signature field used for validation.
|
|
2858
|
+
"""
|
|
2859
|
+
return pulumi.get(self, "value")
|
|
2860
|
+
|
|
2861
|
+
|
|
2862
|
+
@pulumi.output_type
|
|
2863
|
+
class WafRuleConfigTimer(dict):
|
|
2864
|
+
@staticmethod
|
|
2865
|
+
def __key_warning(key: str):
|
|
2866
|
+
suggest = None
|
|
2867
|
+
if key == "weeklyPeriods":
|
|
2868
|
+
suggest = "weekly_periods"
|
|
2869
|
+
|
|
2870
|
+
if suggest:
|
|
2871
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfigTimer. Access the value via the '{suggest}' property getter instead.")
|
|
2872
|
+
|
|
2873
|
+
def __getitem__(self, key: str) -> Any:
|
|
2874
|
+
WafRuleConfigTimer.__key_warning(key)
|
|
2875
|
+
return super().__getitem__(key)
|
|
2876
|
+
|
|
2877
|
+
def get(self, key: str, default = None) -> Any:
|
|
2878
|
+
WafRuleConfigTimer.__key_warning(key)
|
|
2879
|
+
return super().get(key, default)
|
|
2880
|
+
|
|
2881
|
+
def __init__(__self__, *,
|
|
2882
|
+
periods: Optional[Sequence['outputs.WafRuleConfigTimerPeriod']] = None,
|
|
2883
|
+
scopes: Optional[_builtins.str] = None,
|
|
2884
|
+
weekly_periods: Optional[Sequence['outputs.WafRuleConfigTimerWeeklyPeriod']] = None,
|
|
2885
|
+
zone: Optional[_builtins.int] = None):
|
|
2886
|
+
"""
|
|
2887
|
+
:param _builtins.str scopes: Timing type:
|
|
2888
|
+
:param Sequence['WafRuleConfigTimerWeeklyPeriodArgs'] weekly_periods: Weekly recurring time schedules. See `weekly_periods` below.
|
|
2889
|
+
:param _builtins.int zone: The time zone. If it is not specified, the default value is UTC +00:00. Example: 8 means East Zone 8,-8 means West Zone 8 Range:-12 -+14
|
|
2890
|
+
"""
|
|
2891
|
+
if periods is not None:
|
|
2892
|
+
pulumi.set(__self__, "periods", periods)
|
|
2893
|
+
if scopes is not None:
|
|
2894
|
+
pulumi.set(__self__, "scopes", scopes)
|
|
2895
|
+
if weekly_periods is not None:
|
|
2896
|
+
pulumi.set(__self__, "weekly_periods", weekly_periods)
|
|
2897
|
+
if zone is not None:
|
|
2898
|
+
pulumi.set(__self__, "zone", zone)
|
|
2899
|
+
|
|
2900
|
+
@_builtins.property
|
|
2901
|
+
@pulumi.getter
|
|
2902
|
+
def periods(self) -> Optional[Sequence['outputs.WafRuleConfigTimerPeriod']]:
|
|
2903
|
+
return pulumi.get(self, "periods")
|
|
2904
|
+
|
|
2905
|
+
@_builtins.property
|
|
2906
|
+
@pulumi.getter
|
|
2907
|
+
def scopes(self) -> Optional[_builtins.str]:
|
|
2908
|
+
"""
|
|
2909
|
+
Timing type:
|
|
2910
|
+
"""
|
|
2911
|
+
return pulumi.get(self, "scopes")
|
|
2912
|
+
|
|
2913
|
+
@_builtins.property
|
|
2914
|
+
@pulumi.getter(name="weeklyPeriods")
|
|
2915
|
+
def weekly_periods(self) -> Optional[Sequence['outputs.WafRuleConfigTimerWeeklyPeriod']]:
|
|
2916
|
+
"""
|
|
2917
|
+
Weekly recurring time schedules. See `weekly_periods` below.
|
|
2918
|
+
"""
|
|
2919
|
+
return pulumi.get(self, "weekly_periods")
|
|
2920
|
+
|
|
2921
|
+
@_builtins.property
|
|
2922
|
+
@pulumi.getter
|
|
2923
|
+
def zone(self) -> Optional[_builtins.int]:
|
|
2924
|
+
"""
|
|
2925
|
+
The time zone. If it is not specified, the default value is UTC +00:00. Example: 8 means East Zone 8,-8 means West Zone 8 Range:-12 -+14
|
|
2926
|
+
"""
|
|
2927
|
+
return pulumi.get(self, "zone")
|
|
2928
|
+
|
|
2929
|
+
|
|
2930
|
+
@pulumi.output_type
|
|
2931
|
+
class WafRuleConfigTimerPeriod(dict):
|
|
2932
|
+
def __init__(__self__, *,
|
|
2933
|
+
end: Optional[_builtins.str] = None,
|
|
2934
|
+
start: Optional[_builtins.str] = None):
|
|
2935
|
+
"""
|
|
2936
|
+
:param _builtins.str end: End time in HH:mm:ss format
|
|
2937
|
+
:param _builtins.str start: Start time in HH:mm:ss format
|
|
2938
|
+
"""
|
|
2939
|
+
if end is not None:
|
|
2940
|
+
pulumi.set(__self__, "end", end)
|
|
2941
|
+
if start is not None:
|
|
2942
|
+
pulumi.set(__self__, "start", start)
|
|
2943
|
+
|
|
2944
|
+
@_builtins.property
|
|
2945
|
+
@pulumi.getter
|
|
2946
|
+
def end(self) -> Optional[_builtins.str]:
|
|
2947
|
+
"""
|
|
2948
|
+
End time in HH:mm:ss format
|
|
2949
|
+
"""
|
|
2950
|
+
return pulumi.get(self, "end")
|
|
2951
|
+
|
|
2952
|
+
@_builtins.property
|
|
2953
|
+
@pulumi.getter
|
|
2954
|
+
def start(self) -> Optional[_builtins.str]:
|
|
2955
|
+
"""
|
|
2956
|
+
Start time in HH:mm:ss format
|
|
2957
|
+
"""
|
|
2958
|
+
return pulumi.get(self, "start")
|
|
2959
|
+
|
|
2960
|
+
|
|
2961
|
+
@pulumi.output_type
|
|
2962
|
+
class WafRuleConfigTimerWeeklyPeriod(dict):
|
|
2963
|
+
@staticmethod
|
|
2964
|
+
def __key_warning(key: str):
|
|
2965
|
+
suggest = None
|
|
2966
|
+
if key == "dailyPeriods":
|
|
2967
|
+
suggest = "daily_periods"
|
|
2968
|
+
|
|
2969
|
+
if suggest:
|
|
2970
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleConfigTimerWeeklyPeriod. Access the value via the '{suggest}' property getter instead.")
|
|
2971
|
+
|
|
2972
|
+
def __getitem__(self, key: str) -> Any:
|
|
2973
|
+
WafRuleConfigTimerWeeklyPeriod.__key_warning(key)
|
|
2974
|
+
return super().__getitem__(key)
|
|
2975
|
+
|
|
2976
|
+
def get(self, key: str, default = None) -> Any:
|
|
2977
|
+
WafRuleConfigTimerWeeklyPeriod.__key_warning(key)
|
|
2978
|
+
return super().get(key, default)
|
|
2979
|
+
|
|
2980
|
+
def __init__(__self__, *,
|
|
2981
|
+
daily_periods: Optional[Sequence['outputs.WafRuleConfigTimerWeeklyPeriodDailyPeriod']] = None,
|
|
2982
|
+
days: Optional[_builtins.str] = None):
|
|
2983
|
+
"""
|
|
2984
|
+
:param Sequence['WafRuleConfigTimerWeeklyPeriodDailyPeriodArgs'] daily_periods: Daily effective time periods within a weekly schedule. See `daily_periods` below.
|
|
2985
|
+
:param _builtins.str days: Cycle, multiple use comma separated, 1-7 respectively represent Monday-Sunday. Example: Monday, Wednesday value is "1,3"
|
|
2986
|
+
"""
|
|
2987
|
+
if daily_periods is not None:
|
|
2988
|
+
pulumi.set(__self__, "daily_periods", daily_periods)
|
|
2989
|
+
if days is not None:
|
|
2990
|
+
pulumi.set(__self__, "days", days)
|
|
2991
|
+
|
|
2992
|
+
@_builtins.property
|
|
2993
|
+
@pulumi.getter(name="dailyPeriods")
|
|
2994
|
+
def daily_periods(self) -> Optional[Sequence['outputs.WafRuleConfigTimerWeeklyPeriodDailyPeriod']]:
|
|
2995
|
+
"""
|
|
2996
|
+
Daily effective time periods within a weekly schedule. See `daily_periods` below.
|
|
2997
|
+
"""
|
|
2998
|
+
return pulumi.get(self, "daily_periods")
|
|
2999
|
+
|
|
3000
|
+
@_builtins.property
|
|
3001
|
+
@pulumi.getter
|
|
3002
|
+
def days(self) -> Optional[_builtins.str]:
|
|
3003
|
+
"""
|
|
3004
|
+
Cycle, multiple use comma separated, 1-7 respectively represent Monday-Sunday. Example: Monday, Wednesday value is "1,3"
|
|
3005
|
+
"""
|
|
3006
|
+
return pulumi.get(self, "days")
|
|
3007
|
+
|
|
3008
|
+
|
|
3009
|
+
@pulumi.output_type
|
|
3010
|
+
class WafRuleConfigTimerWeeklyPeriodDailyPeriod(dict):
|
|
3011
|
+
def __init__(__self__, *,
|
|
3012
|
+
end: Optional[_builtins.str] = None,
|
|
3013
|
+
start: Optional[_builtins.str] = None):
|
|
3014
|
+
"""
|
|
3015
|
+
:param _builtins.str end: End time in HH:mm:ss format
|
|
3016
|
+
:param _builtins.str start: Start time in HH:mm:ss format
|
|
3017
|
+
"""
|
|
3018
|
+
if end is not None:
|
|
3019
|
+
pulumi.set(__self__, "end", end)
|
|
3020
|
+
if start is not None:
|
|
3021
|
+
pulumi.set(__self__, "start", start)
|
|
3022
|
+
|
|
3023
|
+
@_builtins.property
|
|
3024
|
+
@pulumi.getter
|
|
3025
|
+
def end(self) -> Optional[_builtins.str]:
|
|
3026
|
+
"""
|
|
3027
|
+
End time in HH:mm:ss format
|
|
3028
|
+
"""
|
|
3029
|
+
return pulumi.get(self, "end")
|
|
3030
|
+
|
|
3031
|
+
@_builtins.property
|
|
3032
|
+
@pulumi.getter
|
|
3033
|
+
def start(self) -> Optional[_builtins.str]:
|
|
3034
|
+
"""
|
|
3035
|
+
Start time in HH:mm:ss format
|
|
3036
|
+
"""
|
|
3037
|
+
return pulumi.get(self, "start")
|
|
3038
|
+
|
|
3039
|
+
|
|
3040
|
+
@pulumi.output_type
|
|
3041
|
+
class WafRuleShared(dict):
|
|
3042
|
+
@staticmethod
|
|
3043
|
+
def __key_warning(key: str):
|
|
3044
|
+
suggest = None
|
|
3045
|
+
if key == "crossSiteId":
|
|
3046
|
+
suggest = "cross_site_id"
|
|
3047
|
+
|
|
3048
|
+
if suggest:
|
|
3049
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleShared. Access the value via the '{suggest}' property getter instead.")
|
|
3050
|
+
|
|
3051
|
+
def __getitem__(self, key: str) -> Any:
|
|
3052
|
+
WafRuleShared.__key_warning(key)
|
|
3053
|
+
return super().__getitem__(key)
|
|
3054
|
+
|
|
3055
|
+
def get(self, key: str, default = None) -> Any:
|
|
3056
|
+
WafRuleShared.__key_warning(key)
|
|
3057
|
+
return super().get(key, default)
|
|
3058
|
+
|
|
3059
|
+
def __init__(__self__, *,
|
|
3060
|
+
action: Optional[_builtins.str] = None,
|
|
3061
|
+
actions: Optional['outputs.WafRuleSharedActions'] = None,
|
|
3062
|
+
cross_site_id: Optional[_builtins.int] = None,
|
|
3063
|
+
expression: Optional[_builtins.str] = None,
|
|
3064
|
+
match: Optional['outputs.WafRuleSharedMatch'] = None,
|
|
3065
|
+
mode: Optional[_builtins.str] = None,
|
|
3066
|
+
name: Optional[_builtins.str] = None,
|
|
3067
|
+
target: Optional[_builtins.str] = None):
|
|
3068
|
+
"""
|
|
3069
|
+
:param _builtins.str action: The default action executed under shared configuration.
|
|
3070
|
+
:param 'WafRuleSharedActionsArgs' actions: Extended action configurations under shared settings. See `actions` below.
|
|
3071
|
+
:param _builtins.int cross_site_id: Specify the cross-domain site ID.
|
|
3072
|
+
:param _builtins.str expression: The match expression used in shared configuration.
|
|
3073
|
+
:param 'WafRuleSharedMatchArgs' match: Configuration of the request matching logic engine. See `match` below.
|
|
3074
|
+
:param _builtins.str mode: The integration mode of the Web SDK:
|
|
3075
|
+
:param _builtins.str name: The display name of the ruleset.
|
|
3076
|
+
:param _builtins.str target: The target type protected by this rule: web or app.
|
|
3077
|
+
"""
|
|
3078
|
+
if action is not None:
|
|
3079
|
+
pulumi.set(__self__, "action", action)
|
|
3080
|
+
if actions is not None:
|
|
3081
|
+
pulumi.set(__self__, "actions", actions)
|
|
3082
|
+
if cross_site_id is not None:
|
|
3083
|
+
pulumi.set(__self__, "cross_site_id", cross_site_id)
|
|
3084
|
+
if expression is not None:
|
|
3085
|
+
pulumi.set(__self__, "expression", expression)
|
|
3086
|
+
if match is not None:
|
|
3087
|
+
pulumi.set(__self__, "match", match)
|
|
3088
|
+
if mode is not None:
|
|
3089
|
+
pulumi.set(__self__, "mode", mode)
|
|
3090
|
+
if name is not None:
|
|
3091
|
+
pulumi.set(__self__, "name", name)
|
|
3092
|
+
if target is not None:
|
|
3093
|
+
pulumi.set(__self__, "target", target)
|
|
3094
|
+
|
|
3095
|
+
@_builtins.property
|
|
3096
|
+
@pulumi.getter
|
|
3097
|
+
def action(self) -> Optional[_builtins.str]:
|
|
3098
|
+
"""
|
|
3099
|
+
The default action executed under shared configuration.
|
|
3100
|
+
"""
|
|
3101
|
+
return pulumi.get(self, "action")
|
|
3102
|
+
|
|
3103
|
+
@_builtins.property
|
|
3104
|
+
@pulumi.getter
|
|
3105
|
+
def actions(self) -> Optional['outputs.WafRuleSharedActions']:
|
|
3106
|
+
"""
|
|
3107
|
+
Extended action configurations under shared settings. See `actions` below.
|
|
3108
|
+
"""
|
|
3109
|
+
return pulumi.get(self, "actions")
|
|
3110
|
+
|
|
3111
|
+
@_builtins.property
|
|
3112
|
+
@pulumi.getter(name="crossSiteId")
|
|
3113
|
+
def cross_site_id(self) -> Optional[_builtins.int]:
|
|
3114
|
+
"""
|
|
3115
|
+
Specify the cross-domain site ID.
|
|
3116
|
+
"""
|
|
3117
|
+
return pulumi.get(self, "cross_site_id")
|
|
3118
|
+
|
|
3119
|
+
@_builtins.property
|
|
3120
|
+
@pulumi.getter
|
|
3121
|
+
def expression(self) -> Optional[_builtins.str]:
|
|
3122
|
+
"""
|
|
3123
|
+
The match expression used in shared configuration.
|
|
3124
|
+
"""
|
|
3125
|
+
return pulumi.get(self, "expression")
|
|
3126
|
+
|
|
3127
|
+
@_builtins.property
|
|
3128
|
+
@pulumi.getter
|
|
3129
|
+
def match(self) -> Optional['outputs.WafRuleSharedMatch']:
|
|
3130
|
+
"""
|
|
3131
|
+
Configuration of the request matching logic engine. See `match` below.
|
|
3132
|
+
"""
|
|
3133
|
+
return pulumi.get(self, "match")
|
|
3134
|
+
|
|
3135
|
+
@_builtins.property
|
|
3136
|
+
@pulumi.getter
|
|
3137
|
+
def mode(self) -> Optional[_builtins.str]:
|
|
3138
|
+
"""
|
|
3139
|
+
The integration mode of the Web SDK:
|
|
3140
|
+
"""
|
|
3141
|
+
return pulumi.get(self, "mode")
|
|
3142
|
+
|
|
3143
|
+
@_builtins.property
|
|
3144
|
+
@pulumi.getter
|
|
3145
|
+
def name(self) -> Optional[_builtins.str]:
|
|
3146
|
+
"""
|
|
3147
|
+
The display name of the ruleset.
|
|
3148
|
+
"""
|
|
3149
|
+
return pulumi.get(self, "name")
|
|
3150
|
+
|
|
3151
|
+
@_builtins.property
|
|
3152
|
+
@pulumi.getter
|
|
3153
|
+
def target(self) -> Optional[_builtins.str]:
|
|
3154
|
+
"""
|
|
3155
|
+
The target type protected by this rule: web or app.
|
|
3156
|
+
"""
|
|
3157
|
+
return pulumi.get(self, "target")
|
|
3158
|
+
|
|
3159
|
+
|
|
3160
|
+
@pulumi.output_type
|
|
3161
|
+
class WafRuleSharedActions(dict):
|
|
3162
|
+
def __init__(__self__, *,
|
|
3163
|
+
response: Optional['outputs.WafRuleSharedActionsResponse'] = None):
|
|
3164
|
+
if response is not None:
|
|
3165
|
+
pulumi.set(__self__, "response", response)
|
|
3166
|
+
|
|
3167
|
+
@_builtins.property
|
|
3168
|
+
@pulumi.getter
|
|
3169
|
+
def response(self) -> Optional['outputs.WafRuleSharedActionsResponse']:
|
|
3170
|
+
return pulumi.get(self, "response")
|
|
3171
|
+
|
|
3172
|
+
|
|
3173
|
+
@pulumi.output_type
|
|
3174
|
+
class WafRuleSharedActionsResponse(dict):
|
|
3175
|
+
def __init__(__self__, *,
|
|
3176
|
+
code: Optional[_builtins.int] = None,
|
|
3177
|
+
id: Optional[_builtins.int] = None):
|
|
3178
|
+
"""
|
|
3179
|
+
:param _builtins.int id: The internal unique ID of the WAF rule.
|
|
3180
|
+
"""
|
|
3181
|
+
if code is not None:
|
|
3182
|
+
pulumi.set(__self__, "code", code)
|
|
3183
|
+
if id is not None:
|
|
3184
|
+
pulumi.set(__self__, "id", id)
|
|
3185
|
+
|
|
3186
|
+
@_builtins.property
|
|
3187
|
+
@pulumi.getter
|
|
3188
|
+
def code(self) -> Optional[_builtins.int]:
|
|
3189
|
+
return pulumi.get(self, "code")
|
|
3190
|
+
|
|
3191
|
+
@_builtins.property
|
|
3192
|
+
@pulumi.getter
|
|
3193
|
+
def id(self) -> Optional[_builtins.int]:
|
|
3194
|
+
"""
|
|
3195
|
+
The internal unique ID of the WAF rule.
|
|
3196
|
+
"""
|
|
3197
|
+
return pulumi.get(self, "id")
|
|
3198
|
+
|
|
3199
|
+
|
|
3200
|
+
@pulumi.output_type
|
|
3201
|
+
class WafRuleSharedMatch(dict):
|
|
3202
|
+
@staticmethod
|
|
3203
|
+
def __key_warning(key: str):
|
|
3204
|
+
suggest = None
|
|
3205
|
+
if key == "matchType":
|
|
3206
|
+
suggest = "match_type"
|
|
3207
|
+
|
|
3208
|
+
if suggest:
|
|
3209
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleSharedMatch. Access the value via the '{suggest}' property getter instead.")
|
|
3210
|
+
|
|
3211
|
+
def __getitem__(self, key: str) -> Any:
|
|
3212
|
+
WafRuleSharedMatch.__key_warning(key)
|
|
3213
|
+
return super().__getitem__(key)
|
|
3214
|
+
|
|
3215
|
+
def get(self, key: str, default = None) -> Any:
|
|
3216
|
+
WafRuleSharedMatch.__key_warning(key)
|
|
3217
|
+
return super().get(key, default)
|
|
3218
|
+
|
|
3219
|
+
def __init__(__self__, *,
|
|
3220
|
+
criterias: Optional[Sequence['outputs.WafRuleSharedMatchCriteria']] = None,
|
|
3221
|
+
logic: Optional[_builtins.str] = None,
|
|
3222
|
+
match_type: Optional[_builtins.str] = None):
|
|
3223
|
+
if criterias is not None:
|
|
3224
|
+
pulumi.set(__self__, "criterias", criterias)
|
|
3225
|
+
if logic is not None:
|
|
3226
|
+
pulumi.set(__self__, "logic", logic)
|
|
3227
|
+
if match_type is not None:
|
|
3228
|
+
pulumi.set(__self__, "match_type", match_type)
|
|
3229
|
+
|
|
3230
|
+
@_builtins.property
|
|
3231
|
+
@pulumi.getter
|
|
3232
|
+
def criterias(self) -> Optional[Sequence['outputs.WafRuleSharedMatchCriteria']]:
|
|
3233
|
+
return pulumi.get(self, "criterias")
|
|
3234
|
+
|
|
3235
|
+
@_builtins.property
|
|
3236
|
+
@pulumi.getter
|
|
3237
|
+
def logic(self) -> Optional[_builtins.str]:
|
|
3238
|
+
return pulumi.get(self, "logic")
|
|
3239
|
+
|
|
3240
|
+
@_builtins.property
|
|
3241
|
+
@pulumi.getter(name="matchType")
|
|
3242
|
+
def match_type(self) -> Optional[_builtins.str]:
|
|
3243
|
+
return pulumi.get(self, "match_type")
|
|
3244
|
+
|
|
3245
|
+
|
|
3246
|
+
@pulumi.output_type
|
|
3247
|
+
class WafRuleSharedMatchCriteria(dict):
|
|
3248
|
+
@staticmethod
|
|
3249
|
+
def __key_warning(key: str):
|
|
3250
|
+
suggest = None
|
|
3251
|
+
if key == "matchType":
|
|
3252
|
+
suggest = "match_type"
|
|
3253
|
+
|
|
3254
|
+
if suggest:
|
|
3255
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleSharedMatchCriteria. Access the value via the '{suggest}' property getter instead.")
|
|
3256
|
+
|
|
3257
|
+
def __getitem__(self, key: str) -> Any:
|
|
3258
|
+
WafRuleSharedMatchCriteria.__key_warning(key)
|
|
3259
|
+
return super().__getitem__(key)
|
|
3260
|
+
|
|
3261
|
+
def get(self, key: str, default = None) -> Any:
|
|
3262
|
+
WafRuleSharedMatchCriteria.__key_warning(key)
|
|
3263
|
+
return super().get(key, default)
|
|
3264
|
+
|
|
3265
|
+
def __init__(__self__, *,
|
|
3266
|
+
criterias: Optional[Sequence['outputs.WafRuleSharedMatchCriteriaCriteria']] = None,
|
|
3267
|
+
logic: Optional[_builtins.str] = None,
|
|
3268
|
+
match_type: Optional[_builtins.str] = None):
|
|
3269
|
+
if criterias is not None:
|
|
3270
|
+
pulumi.set(__self__, "criterias", criterias)
|
|
3271
|
+
if logic is not None:
|
|
3272
|
+
pulumi.set(__self__, "logic", logic)
|
|
3273
|
+
if match_type is not None:
|
|
3274
|
+
pulumi.set(__self__, "match_type", match_type)
|
|
3275
|
+
|
|
3276
|
+
@_builtins.property
|
|
3277
|
+
@pulumi.getter
|
|
3278
|
+
def criterias(self) -> Optional[Sequence['outputs.WafRuleSharedMatchCriteriaCriteria']]:
|
|
3279
|
+
return pulumi.get(self, "criterias")
|
|
3280
|
+
|
|
3281
|
+
@_builtins.property
|
|
3282
|
+
@pulumi.getter
|
|
3283
|
+
def logic(self) -> Optional[_builtins.str]:
|
|
3284
|
+
return pulumi.get(self, "logic")
|
|
3285
|
+
|
|
3286
|
+
@_builtins.property
|
|
3287
|
+
@pulumi.getter(name="matchType")
|
|
3288
|
+
def match_type(self) -> Optional[_builtins.str]:
|
|
3289
|
+
return pulumi.get(self, "match_type")
|
|
3290
|
+
|
|
3291
|
+
|
|
3292
|
+
@pulumi.output_type
|
|
3293
|
+
class WafRuleSharedMatchCriteriaCriteria(dict):
|
|
3294
|
+
@staticmethod
|
|
3295
|
+
def __key_warning(key: str):
|
|
3296
|
+
suggest = None
|
|
3297
|
+
if key == "matchType":
|
|
3298
|
+
suggest = "match_type"
|
|
3299
|
+
|
|
3300
|
+
if suggest:
|
|
3301
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleSharedMatchCriteriaCriteria. Access the value via the '{suggest}' property getter instead.")
|
|
3302
|
+
|
|
3303
|
+
def __getitem__(self, key: str) -> Any:
|
|
3304
|
+
WafRuleSharedMatchCriteriaCriteria.__key_warning(key)
|
|
3305
|
+
return super().__getitem__(key)
|
|
3306
|
+
|
|
3307
|
+
def get(self, key: str, default = None) -> Any:
|
|
3308
|
+
WafRuleSharedMatchCriteriaCriteria.__key_warning(key)
|
|
3309
|
+
return super().get(key, default)
|
|
3310
|
+
|
|
3311
|
+
def __init__(__self__, *,
|
|
3312
|
+
criterias: Optional[Sequence['outputs.WafRuleSharedMatchCriteriaCriteriaCriteria']] = None,
|
|
3313
|
+
logic: Optional[_builtins.str] = None,
|
|
3314
|
+
match_type: Optional[_builtins.str] = None):
|
|
3315
|
+
if criterias is not None:
|
|
3316
|
+
pulumi.set(__self__, "criterias", criterias)
|
|
3317
|
+
if logic is not None:
|
|
3318
|
+
pulumi.set(__self__, "logic", logic)
|
|
3319
|
+
if match_type is not None:
|
|
3320
|
+
pulumi.set(__self__, "match_type", match_type)
|
|
3321
|
+
|
|
3322
|
+
@_builtins.property
|
|
3323
|
+
@pulumi.getter
|
|
3324
|
+
def criterias(self) -> Optional[Sequence['outputs.WafRuleSharedMatchCriteriaCriteriaCriteria']]:
|
|
3325
|
+
return pulumi.get(self, "criterias")
|
|
3326
|
+
|
|
3327
|
+
@_builtins.property
|
|
3328
|
+
@pulumi.getter
|
|
3329
|
+
def logic(self) -> Optional[_builtins.str]:
|
|
3330
|
+
return pulumi.get(self, "logic")
|
|
3331
|
+
|
|
3332
|
+
@_builtins.property
|
|
3333
|
+
@pulumi.getter(name="matchType")
|
|
3334
|
+
def match_type(self) -> Optional[_builtins.str]:
|
|
3335
|
+
return pulumi.get(self, "match_type")
|
|
3336
|
+
|
|
3337
|
+
|
|
3338
|
+
@pulumi.output_type
|
|
3339
|
+
class WafRuleSharedMatchCriteriaCriteriaCriteria(dict):
|
|
3340
|
+
@staticmethod
|
|
3341
|
+
def __key_warning(key: str):
|
|
3342
|
+
suggest = None
|
|
3343
|
+
if key == "matchType":
|
|
3344
|
+
suggest = "match_type"
|
|
3345
|
+
|
|
3346
|
+
if suggest:
|
|
3347
|
+
pulumi.log.warn(f"Key '{key}' not found in WafRuleSharedMatchCriteriaCriteriaCriteria. Access the value via the '{suggest}' property getter instead.")
|
|
3348
|
+
|
|
3349
|
+
def __getitem__(self, key: str) -> Any:
|
|
3350
|
+
WafRuleSharedMatchCriteriaCriteriaCriteria.__key_warning(key)
|
|
3351
|
+
return super().__getitem__(key)
|
|
3352
|
+
|
|
3353
|
+
def get(self, key: str, default = None) -> Any:
|
|
3354
|
+
WafRuleSharedMatchCriteriaCriteriaCriteria.__key_warning(key)
|
|
3355
|
+
return super().get(key, default)
|
|
3356
|
+
|
|
3357
|
+
def __init__(__self__, *,
|
|
3358
|
+
match_type: Optional[_builtins.str] = None):
|
|
3359
|
+
if match_type is not None:
|
|
3360
|
+
pulumi.set(__self__, "match_type", match_type)
|
|
3361
|
+
|
|
3362
|
+
@_builtins.property
|
|
3363
|
+
@pulumi.getter(name="matchType")
|
|
3364
|
+
def match_type(self) -> Optional[_builtins.str]:
|
|
3365
|
+
return pulumi.get(self, "match_type")
|
|
3366
|
+
|
|
3367
|
+
|
|
1288
3368
|
@pulumi.output_type
|
|
1289
3369
|
class WaitingRoomHostNameAndPath(dict):
|
|
1290
3370
|
def __init__(__self__, *,
|