tencentcloud-sdk-python-intl-en 3.0.1161__py2.py3-none-any.whl → 3.0.1162__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of tencentcloud-sdk-python-intl-en might be problematic. Click here for more details.
- tencentcloud/__init__.py +1 -1
- tencentcloud/ocr/v20181119/models.py +334 -0
- tencentcloud/ocr/v20181119/ocr_client.py +23 -0
- tencentcloud/teo/v20220901/models.py +1314 -21
- tencentcloud/teo/v20220901/teo_client.py +23 -0
- {tencentcloud_sdk_python_intl_en-3.0.1161.dist-info → tencentcloud_sdk_python_intl_en-3.0.1162.dist-info}/METADATA +1 -1
- {tencentcloud_sdk_python_intl_en-3.0.1161.dist-info → tencentcloud_sdk_python_intl_en-3.0.1162.dist-info}/RECORD +9 -9
- {tencentcloud_sdk_python_intl_en-3.0.1161.dist-info → tencentcloud_sdk_python_intl_en-3.0.1162.dist-info}/WHEEL +0 -0
- {tencentcloud_sdk_python_intl_en-3.0.1161.dist-info → tencentcloud_sdk_python_intl_en-3.0.1162.dist-info}/top_level.txt +0 -0
|
@@ -3300,6 +3300,42 @@ class BindZoneToPlanResponse(AbstractModel):
|
|
|
3300
3300
|
self._RequestId = params.get("RequestId")
|
|
3301
3301
|
|
|
3302
3302
|
|
|
3303
|
+
class BlockIPActionParameters(AbstractModel):
|
|
3304
|
+
"""Additional parameter for SecurityAction `BlockIP`.
|
|
3305
|
+
|
|
3306
|
+
"""
|
|
3307
|
+
|
|
3308
|
+
def __init__(self):
|
|
3309
|
+
r"""
|
|
3310
|
+
:param _Duration: Penalty duration for `BlockIP`. Units: <li>`s`: second, value range 1-120;</li> <li>`m`: minute, value range 1-120;</li> <li>`h`: hour, value range 1-48.</li>.
|
|
3311
|
+
:type Duration: str
|
|
3312
|
+
"""
|
|
3313
|
+
self._Duration = None
|
|
3314
|
+
|
|
3315
|
+
@property
|
|
3316
|
+
def Duration(self):
|
|
3317
|
+
"""Penalty duration for `BlockIP`. Units: <li>`s`: second, value range 1-120;</li> <li>`m`: minute, value range 1-120;</li> <li>`h`: hour, value range 1-48.</li>.
|
|
3318
|
+
:rtype: str
|
|
3319
|
+
"""
|
|
3320
|
+
return self._Duration
|
|
3321
|
+
|
|
3322
|
+
@Duration.setter
|
|
3323
|
+
def Duration(self, Duration):
|
|
3324
|
+
self._Duration = Duration
|
|
3325
|
+
|
|
3326
|
+
|
|
3327
|
+
def _deserialize(self, params):
|
|
3328
|
+
self._Duration = params.get("Duration")
|
|
3329
|
+
memeber_set = set(params.keys())
|
|
3330
|
+
for name, value in vars(self).items():
|
|
3331
|
+
property_name = name[1:]
|
|
3332
|
+
if property_name in memeber_set:
|
|
3333
|
+
memeber_set.remove(property_name)
|
|
3334
|
+
if len(memeber_set) > 0:
|
|
3335
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
3336
|
+
|
|
3337
|
+
|
|
3338
|
+
|
|
3303
3339
|
class BotConfig(AbstractModel):
|
|
3304
3340
|
"""Bot security configuration
|
|
3305
3341
|
|
|
@@ -10731,6 +10767,175 @@ Note: This field may return null, indicating that no valid values can be obtaine
|
|
|
10731
10767
|
|
|
10732
10768
|
|
|
10733
10769
|
|
|
10770
|
+
class CustomRule(AbstractModel):
|
|
10771
|
+
"""Custom rule configuration.
|
|
10772
|
+
|
|
10773
|
+
"""
|
|
10774
|
+
|
|
10775
|
+
def __init__(self):
|
|
10776
|
+
r"""
|
|
10777
|
+
:param _Name: The custom rule name.
|
|
10778
|
+
:type Name: str
|
|
10779
|
+
:param _Condition: The specifics of the custom rule, must comply with the expression grammar, please refer to product documentation for details.
|
|
10780
|
+
:type Condition: str
|
|
10781
|
+
:param _Action: Action for custom rules. The Name parameter of SecurityAction supports: <li>`Deny`: block;</li> <li>`Monitor`: observe;</li> <li>`ReturnCustomPage`: block with customized page;</li> <li>`Redirect`: Redirect to URL;</li> <li>`BlockIP`: IP blocking;</li> <li>`JSChallenge`: JavaScript challenge;</li> <li>`ManagedChallenge`: managed challenge;</li> <li>`Allow`: Allow.</li>.
|
|
10782
|
+
:type Action: :class:`tencentcloud.teo.v20220901.models.SecurityAction`
|
|
10783
|
+
:param _Enabled: The custom rule status. Values: <li>`on`: enabled</li> <li>`off`: disabled</li>.
|
|
10784
|
+
:type Enabled: str
|
|
10785
|
+
:param _Id: Custom rule ID. <br>Different rule configuration operations are supported by rule ID : <br> - Add a new rule: ID is empty or the ID parameter is not specified; <br> - Modify an existing rule: specify the rule ID that needs to be updated/modified; <br> - Delete an existing rule: existing rules not included in the Rules parameter will be deleted.
|
|
10786
|
+
:type Id: str
|
|
10787
|
+
:param _RuleType: Type of custom rule. Values: <li>`BasicAccessRule`: basic access control;</li> <li>`PreciseMatchRule`: exact custom rule, default;</li> <li>`ManagedAccessRule`: expert customized rule, output parameter only.</li>The default value is PreciseMatchRule.
|
|
10788
|
+
:type RuleType: str
|
|
10789
|
+
:param _Priority: Customize the priority of custom rule. Range: 0-100, the default value is 0, this parameter only supports PreciseMatchRule.
|
|
10790
|
+
:type Priority: int
|
|
10791
|
+
"""
|
|
10792
|
+
self._Name = None
|
|
10793
|
+
self._Condition = None
|
|
10794
|
+
self._Action = None
|
|
10795
|
+
self._Enabled = None
|
|
10796
|
+
self._Id = None
|
|
10797
|
+
self._RuleType = None
|
|
10798
|
+
self._Priority = None
|
|
10799
|
+
|
|
10800
|
+
@property
|
|
10801
|
+
def Name(self):
|
|
10802
|
+
"""The custom rule name.
|
|
10803
|
+
:rtype: str
|
|
10804
|
+
"""
|
|
10805
|
+
return self._Name
|
|
10806
|
+
|
|
10807
|
+
@Name.setter
|
|
10808
|
+
def Name(self, Name):
|
|
10809
|
+
self._Name = Name
|
|
10810
|
+
|
|
10811
|
+
@property
|
|
10812
|
+
def Condition(self):
|
|
10813
|
+
"""The specifics of the custom rule, must comply with the expression grammar, please refer to product documentation for details.
|
|
10814
|
+
:rtype: str
|
|
10815
|
+
"""
|
|
10816
|
+
return self._Condition
|
|
10817
|
+
|
|
10818
|
+
@Condition.setter
|
|
10819
|
+
def Condition(self, Condition):
|
|
10820
|
+
self._Condition = Condition
|
|
10821
|
+
|
|
10822
|
+
@property
|
|
10823
|
+
def Action(self):
|
|
10824
|
+
"""Action for custom rules. The Name parameter of SecurityAction supports: <li>`Deny`: block;</li> <li>`Monitor`: observe;</li> <li>`ReturnCustomPage`: block with customized page;</li> <li>`Redirect`: Redirect to URL;</li> <li>`BlockIP`: IP blocking;</li> <li>`JSChallenge`: JavaScript challenge;</li> <li>`ManagedChallenge`: managed challenge;</li> <li>`Allow`: Allow.</li>.
|
|
10825
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.SecurityAction`
|
|
10826
|
+
"""
|
|
10827
|
+
return self._Action
|
|
10828
|
+
|
|
10829
|
+
@Action.setter
|
|
10830
|
+
def Action(self, Action):
|
|
10831
|
+
self._Action = Action
|
|
10832
|
+
|
|
10833
|
+
@property
|
|
10834
|
+
def Enabled(self):
|
|
10835
|
+
"""The custom rule status. Values: <li>`on`: enabled</li> <li>`off`: disabled</li>.
|
|
10836
|
+
:rtype: str
|
|
10837
|
+
"""
|
|
10838
|
+
return self._Enabled
|
|
10839
|
+
|
|
10840
|
+
@Enabled.setter
|
|
10841
|
+
def Enabled(self, Enabled):
|
|
10842
|
+
self._Enabled = Enabled
|
|
10843
|
+
|
|
10844
|
+
@property
|
|
10845
|
+
def Id(self):
|
|
10846
|
+
"""Custom rule ID. <br>Different rule configuration operations are supported by rule ID : <br> - Add a new rule: ID is empty or the ID parameter is not specified; <br> - Modify an existing rule: specify the rule ID that needs to be updated/modified; <br> - Delete an existing rule: existing rules not included in the Rules parameter will be deleted.
|
|
10847
|
+
:rtype: str
|
|
10848
|
+
"""
|
|
10849
|
+
return self._Id
|
|
10850
|
+
|
|
10851
|
+
@Id.setter
|
|
10852
|
+
def Id(self, Id):
|
|
10853
|
+
self._Id = Id
|
|
10854
|
+
|
|
10855
|
+
@property
|
|
10856
|
+
def RuleType(self):
|
|
10857
|
+
"""Type of custom rule. Values: <li>`BasicAccessRule`: basic access control;</li> <li>`PreciseMatchRule`: exact custom rule, default;</li> <li>`ManagedAccessRule`: expert customized rule, output parameter only.</li>The default value is PreciseMatchRule.
|
|
10858
|
+
:rtype: str
|
|
10859
|
+
"""
|
|
10860
|
+
return self._RuleType
|
|
10861
|
+
|
|
10862
|
+
@RuleType.setter
|
|
10863
|
+
def RuleType(self, RuleType):
|
|
10864
|
+
self._RuleType = RuleType
|
|
10865
|
+
|
|
10866
|
+
@property
|
|
10867
|
+
def Priority(self):
|
|
10868
|
+
"""Customize the priority of custom rule. Range: 0-100, the default value is 0, this parameter only supports PreciseMatchRule.
|
|
10869
|
+
:rtype: int
|
|
10870
|
+
"""
|
|
10871
|
+
return self._Priority
|
|
10872
|
+
|
|
10873
|
+
@Priority.setter
|
|
10874
|
+
def Priority(self, Priority):
|
|
10875
|
+
self._Priority = Priority
|
|
10876
|
+
|
|
10877
|
+
|
|
10878
|
+
def _deserialize(self, params):
|
|
10879
|
+
self._Name = params.get("Name")
|
|
10880
|
+
self._Condition = params.get("Condition")
|
|
10881
|
+
if params.get("Action") is not None:
|
|
10882
|
+
self._Action = SecurityAction()
|
|
10883
|
+
self._Action._deserialize(params.get("Action"))
|
|
10884
|
+
self._Enabled = params.get("Enabled")
|
|
10885
|
+
self._Id = params.get("Id")
|
|
10886
|
+
self._RuleType = params.get("RuleType")
|
|
10887
|
+
self._Priority = params.get("Priority")
|
|
10888
|
+
memeber_set = set(params.keys())
|
|
10889
|
+
for name, value in vars(self).items():
|
|
10890
|
+
property_name = name[1:]
|
|
10891
|
+
if property_name in memeber_set:
|
|
10892
|
+
memeber_set.remove(property_name)
|
|
10893
|
+
if len(memeber_set) > 0:
|
|
10894
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
10895
|
+
|
|
10896
|
+
|
|
10897
|
+
|
|
10898
|
+
class CustomRules(AbstractModel):
|
|
10899
|
+
"""Custom rules configuration.
|
|
10900
|
+
|
|
10901
|
+
"""
|
|
10902
|
+
|
|
10903
|
+
def __init__(self):
|
|
10904
|
+
r"""
|
|
10905
|
+
:param _Rules: The custom rule. <br>when modifying the Web protection configuration using ModifySecurityPolicy: <br> - if the Rules parameter is not specified or the parameter length of Rules is zero: clear all custom rule configurations. <br> - if the Rules parameter is not specified: keep the existing custom rule configuration without modification.
|
|
10906
|
+
:type Rules: list of CustomRule
|
|
10907
|
+
"""
|
|
10908
|
+
self._Rules = None
|
|
10909
|
+
|
|
10910
|
+
@property
|
|
10911
|
+
def Rules(self):
|
|
10912
|
+
"""The custom rule. <br>when modifying the Web protection configuration using ModifySecurityPolicy: <br> - if the Rules parameter is not specified or the parameter length of Rules is zero: clear all custom rule configurations. <br> - if the Rules parameter is not specified: keep the existing custom rule configuration without modification.
|
|
10913
|
+
:rtype: list of CustomRule
|
|
10914
|
+
"""
|
|
10915
|
+
return self._Rules
|
|
10916
|
+
|
|
10917
|
+
@Rules.setter
|
|
10918
|
+
def Rules(self, Rules):
|
|
10919
|
+
self._Rules = Rules
|
|
10920
|
+
|
|
10921
|
+
|
|
10922
|
+
def _deserialize(self, params):
|
|
10923
|
+
if params.get("Rules") is not None:
|
|
10924
|
+
self._Rules = []
|
|
10925
|
+
for item in params.get("Rules"):
|
|
10926
|
+
obj = CustomRule()
|
|
10927
|
+
obj._deserialize(item)
|
|
10928
|
+
self._Rules.append(obj)
|
|
10929
|
+
memeber_set = set(params.keys())
|
|
10930
|
+
for name, value in vars(self).items():
|
|
10931
|
+
property_name = name[1:]
|
|
10932
|
+
if property_name in memeber_set:
|
|
10933
|
+
memeber_set.remove(property_name)
|
|
10934
|
+
if len(memeber_set) > 0:
|
|
10935
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
10936
|
+
|
|
10937
|
+
|
|
10938
|
+
|
|
10734
10939
|
class CustomTime(AbstractModel):
|
|
10735
10940
|
"""Node cache TTL custom cache time parameter configuration.
|
|
10736
10941
|
|
|
@@ -19104,6 +19309,134 @@ class DescribeSecurityIPGroupResponse(AbstractModel):
|
|
|
19104
19309
|
self._RequestId = params.get("RequestId")
|
|
19105
19310
|
|
|
19106
19311
|
|
|
19312
|
+
class DescribeSecurityPolicyRequest(AbstractModel):
|
|
19313
|
+
"""DescribeSecurityPolicy request structure.
|
|
19314
|
+
|
|
19315
|
+
"""
|
|
19316
|
+
|
|
19317
|
+
def __init__(self):
|
|
19318
|
+
r"""
|
|
19319
|
+
:param _ZoneId: Zone ID.
|
|
19320
|
+
:type ZoneId: str
|
|
19321
|
+
:param _Entity: `SecurityPolicy` type, the following parameter values can be used for query: <li>`ZoneDefaultPolicy`: used to specify a query for site-level policies;</li> <li>`Template`: used to specify a query for policy templates. the `TemplateId` parameter needs to be specified simultaneously;</li> <li>`Host`: used to specify a query for domain-level policies (note: when using `Host` to specify a domain name service policy, only domain name services or policy templates that have been applied domain-level policies are supported).</li>
|
|
19322
|
+
:type Entity: str
|
|
19323
|
+
:param _TemplateId: Specify the policy Template ID. Use this parameter to specify the ID of the policy Template to query the Template configuration when the `Entity` parameter value is set to `Template`.
|
|
19324
|
+
:type TemplateId: str
|
|
19325
|
+
:param _Host: Specify the domain name. When the `Entity` parameter value is set to `Host`, use the domain-level policy specified by this parameter to query the domain configuration. For example, use `www.example.com` to configure the domain-level policy for that domain name.
|
|
19326
|
+
:type Host: str
|
|
19327
|
+
"""
|
|
19328
|
+
self._ZoneId = None
|
|
19329
|
+
self._Entity = None
|
|
19330
|
+
self._TemplateId = None
|
|
19331
|
+
self._Host = None
|
|
19332
|
+
|
|
19333
|
+
@property
|
|
19334
|
+
def ZoneId(self):
|
|
19335
|
+
"""Zone ID.
|
|
19336
|
+
:rtype: str
|
|
19337
|
+
"""
|
|
19338
|
+
return self._ZoneId
|
|
19339
|
+
|
|
19340
|
+
@ZoneId.setter
|
|
19341
|
+
def ZoneId(self, ZoneId):
|
|
19342
|
+
self._ZoneId = ZoneId
|
|
19343
|
+
|
|
19344
|
+
@property
|
|
19345
|
+
def Entity(self):
|
|
19346
|
+
"""`SecurityPolicy` type, the following parameter values can be used for query: <li>`ZoneDefaultPolicy`: used to specify a query for site-level policies;</li> <li>`Template`: used to specify a query for policy templates. the `TemplateId` parameter needs to be specified simultaneously;</li> <li>`Host`: used to specify a query for domain-level policies (note: when using `Host` to specify a domain name service policy, only domain name services or policy templates that have been applied domain-level policies are supported).</li>
|
|
19347
|
+
:rtype: str
|
|
19348
|
+
"""
|
|
19349
|
+
return self._Entity
|
|
19350
|
+
|
|
19351
|
+
@Entity.setter
|
|
19352
|
+
def Entity(self, Entity):
|
|
19353
|
+
self._Entity = Entity
|
|
19354
|
+
|
|
19355
|
+
@property
|
|
19356
|
+
def TemplateId(self):
|
|
19357
|
+
"""Specify the policy Template ID. Use this parameter to specify the ID of the policy Template to query the Template configuration when the `Entity` parameter value is set to `Template`.
|
|
19358
|
+
:rtype: str
|
|
19359
|
+
"""
|
|
19360
|
+
return self._TemplateId
|
|
19361
|
+
|
|
19362
|
+
@TemplateId.setter
|
|
19363
|
+
def TemplateId(self, TemplateId):
|
|
19364
|
+
self._TemplateId = TemplateId
|
|
19365
|
+
|
|
19366
|
+
@property
|
|
19367
|
+
def Host(self):
|
|
19368
|
+
"""Specify the domain name. When the `Entity` parameter value is set to `Host`, use the domain-level policy specified by this parameter to query the domain configuration. For example, use `www.example.com` to configure the domain-level policy for that domain name.
|
|
19369
|
+
:rtype: str
|
|
19370
|
+
"""
|
|
19371
|
+
return self._Host
|
|
19372
|
+
|
|
19373
|
+
@Host.setter
|
|
19374
|
+
def Host(self, Host):
|
|
19375
|
+
self._Host = Host
|
|
19376
|
+
|
|
19377
|
+
|
|
19378
|
+
def _deserialize(self, params):
|
|
19379
|
+
self._ZoneId = params.get("ZoneId")
|
|
19380
|
+
self._Entity = params.get("Entity")
|
|
19381
|
+
self._TemplateId = params.get("TemplateId")
|
|
19382
|
+
self._Host = params.get("Host")
|
|
19383
|
+
memeber_set = set(params.keys())
|
|
19384
|
+
for name, value in vars(self).items():
|
|
19385
|
+
property_name = name[1:]
|
|
19386
|
+
if property_name in memeber_set:
|
|
19387
|
+
memeber_set.remove(property_name)
|
|
19388
|
+
if len(memeber_set) > 0:
|
|
19389
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
19390
|
+
|
|
19391
|
+
|
|
19392
|
+
|
|
19393
|
+
class DescribeSecurityPolicyResponse(AbstractModel):
|
|
19394
|
+
"""DescribeSecurityPolicy response structure.
|
|
19395
|
+
|
|
19396
|
+
"""
|
|
19397
|
+
|
|
19398
|
+
def __init__(self):
|
|
19399
|
+
r"""
|
|
19400
|
+
:param _SecurityPolicy: Security policy configuration.
|
|
19401
|
+
Note: This field may return null, which indicates a failure to obtain a valid value.
|
|
19402
|
+
:type SecurityPolicy: :class:`tencentcloud.teo.v20220901.models.SecurityPolicy`
|
|
19403
|
+
:param _RequestId: The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
|
|
19404
|
+
:type RequestId: str
|
|
19405
|
+
"""
|
|
19406
|
+
self._SecurityPolicy = None
|
|
19407
|
+
self._RequestId = None
|
|
19408
|
+
|
|
19409
|
+
@property
|
|
19410
|
+
def SecurityPolicy(self):
|
|
19411
|
+
"""Security policy configuration.
|
|
19412
|
+
Note: This field may return null, which indicates a failure to obtain a valid value.
|
|
19413
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.SecurityPolicy`
|
|
19414
|
+
"""
|
|
19415
|
+
return self._SecurityPolicy
|
|
19416
|
+
|
|
19417
|
+
@SecurityPolicy.setter
|
|
19418
|
+
def SecurityPolicy(self, SecurityPolicy):
|
|
19419
|
+
self._SecurityPolicy = SecurityPolicy
|
|
19420
|
+
|
|
19421
|
+
@property
|
|
19422
|
+
def RequestId(self):
|
|
19423
|
+
"""The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
|
|
19424
|
+
:rtype: str
|
|
19425
|
+
"""
|
|
19426
|
+
return self._RequestId
|
|
19427
|
+
|
|
19428
|
+
@RequestId.setter
|
|
19429
|
+
def RequestId(self, RequestId):
|
|
19430
|
+
self._RequestId = RequestId
|
|
19431
|
+
|
|
19432
|
+
|
|
19433
|
+
def _deserialize(self, params):
|
|
19434
|
+
if params.get("SecurityPolicy") is not None:
|
|
19435
|
+
self._SecurityPolicy = SecurityPolicy()
|
|
19436
|
+
self._SecurityPolicy._deserialize(params.get("SecurityPolicy"))
|
|
19437
|
+
self._RequestId = params.get("RequestId")
|
|
19438
|
+
|
|
19439
|
+
|
|
19107
19440
|
class DescribeSecurityTemplateBindingsRequest(AbstractModel):
|
|
19108
19441
|
"""DescribeSecurityTemplateBindings request structure.
|
|
19109
19442
|
|
|
@@ -21409,6 +21742,213 @@ Note: This field may return `null`, indicating that no valid value can be obtain
|
|
|
21409
21742
|
|
|
21410
21743
|
|
|
21411
21744
|
|
|
21745
|
+
class DetectLengthLimitCondition(AbstractModel):
|
|
21746
|
+
"""Length limit detection condition configuration.
|
|
21747
|
+
|
|
21748
|
+
"""
|
|
21749
|
+
|
|
21750
|
+
def __init__(self):
|
|
21751
|
+
r"""
|
|
21752
|
+
:param _Name: Parameter name of the matched condition. Values:.
|
|
21753
|
+
<li>`body_depth`: detection depth of the request body packet part.</li>
|
|
21754
|
+
:type Name: str
|
|
21755
|
+
:param _Values: Parameter value of the matched condition, used in pairs with the `Name` parameter.
|
|
21756
|
+
When the `Name` value is body_depth, `Values` only support passing in a single value. Values:
|
|
21757
|
+
<li>`8KB`;</li>
|
|
21758
|
+
<li>`64KB`;</li>
|
|
21759
|
+
<li>`128KB`.</li>
|
|
21760
|
+
:type Values: list of str
|
|
21761
|
+
"""
|
|
21762
|
+
self._Name = None
|
|
21763
|
+
self._Values = None
|
|
21764
|
+
|
|
21765
|
+
@property
|
|
21766
|
+
def Name(self):
|
|
21767
|
+
"""Parameter name of the matched condition. Values:.
|
|
21768
|
+
<li>`body_depth`: detection depth of the request body packet part.</li>
|
|
21769
|
+
:rtype: str
|
|
21770
|
+
"""
|
|
21771
|
+
return self._Name
|
|
21772
|
+
|
|
21773
|
+
@Name.setter
|
|
21774
|
+
def Name(self, Name):
|
|
21775
|
+
self._Name = Name
|
|
21776
|
+
|
|
21777
|
+
@property
|
|
21778
|
+
def Values(self):
|
|
21779
|
+
"""Parameter value of the matched condition, used in pairs with the `Name` parameter.
|
|
21780
|
+
When the `Name` value is body_depth, `Values` only support passing in a single value. Values:
|
|
21781
|
+
<li>`8KB`;</li>
|
|
21782
|
+
<li>`64KB`;</li>
|
|
21783
|
+
<li>`128KB`.</li>
|
|
21784
|
+
:rtype: list of str
|
|
21785
|
+
"""
|
|
21786
|
+
return self._Values
|
|
21787
|
+
|
|
21788
|
+
@Values.setter
|
|
21789
|
+
def Values(self, Values):
|
|
21790
|
+
self._Values = Values
|
|
21791
|
+
|
|
21792
|
+
|
|
21793
|
+
def _deserialize(self, params):
|
|
21794
|
+
self._Name = params.get("Name")
|
|
21795
|
+
self._Values = params.get("Values")
|
|
21796
|
+
memeber_set = set(params.keys())
|
|
21797
|
+
for name, value in vars(self).items():
|
|
21798
|
+
property_name = name[1:]
|
|
21799
|
+
if property_name in memeber_set:
|
|
21800
|
+
memeber_set.remove(property_name)
|
|
21801
|
+
if len(memeber_set) > 0:
|
|
21802
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
21803
|
+
|
|
21804
|
+
|
|
21805
|
+
|
|
21806
|
+
class DetectLengthLimitConfig(AbstractModel):
|
|
21807
|
+
"""Length limit detection configuration.
|
|
21808
|
+
|
|
21809
|
+
"""
|
|
21810
|
+
|
|
21811
|
+
def __init__(self):
|
|
21812
|
+
r"""
|
|
21813
|
+
:param _DetectLengthLimitRules: List of rules that detect length limits.
|
|
21814
|
+
:type DetectLengthLimitRules: list of DetectLengthLimitRule
|
|
21815
|
+
"""
|
|
21816
|
+
self._DetectLengthLimitRules = None
|
|
21817
|
+
|
|
21818
|
+
@property
|
|
21819
|
+
def DetectLengthLimitRules(self):
|
|
21820
|
+
"""List of rules that detect length limits.
|
|
21821
|
+
:rtype: list of DetectLengthLimitRule
|
|
21822
|
+
"""
|
|
21823
|
+
return self._DetectLengthLimitRules
|
|
21824
|
+
|
|
21825
|
+
@DetectLengthLimitRules.setter
|
|
21826
|
+
def DetectLengthLimitRules(self, DetectLengthLimitRules):
|
|
21827
|
+
self._DetectLengthLimitRules = DetectLengthLimitRules
|
|
21828
|
+
|
|
21829
|
+
|
|
21830
|
+
def _deserialize(self, params):
|
|
21831
|
+
if params.get("DetectLengthLimitRules") is not None:
|
|
21832
|
+
self._DetectLengthLimitRules = []
|
|
21833
|
+
for item in params.get("DetectLengthLimitRules"):
|
|
21834
|
+
obj = DetectLengthLimitRule()
|
|
21835
|
+
obj._deserialize(item)
|
|
21836
|
+
self._DetectLengthLimitRules.append(obj)
|
|
21837
|
+
memeber_set = set(params.keys())
|
|
21838
|
+
for name, value in vars(self).items():
|
|
21839
|
+
property_name = name[1:]
|
|
21840
|
+
if property_name in memeber_set:
|
|
21841
|
+
memeber_set.remove(property_name)
|
|
21842
|
+
if len(memeber_set) > 0:
|
|
21843
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
21844
|
+
|
|
21845
|
+
|
|
21846
|
+
|
|
21847
|
+
class DetectLengthLimitRule(AbstractModel):
|
|
21848
|
+
"""Length limit detection rule details configuration.
|
|
21849
|
+
|
|
21850
|
+
"""
|
|
21851
|
+
|
|
21852
|
+
def __init__(self):
|
|
21853
|
+
r"""
|
|
21854
|
+
:param _RuleId: Rule Id, output parameter only.
|
|
21855
|
+
:type RuleId: int
|
|
21856
|
+
:param _RuleName: Rule name, output parameter only.
|
|
21857
|
+
:type RuleName: str
|
|
21858
|
+
:param _Description: Rule description, output parameter only.
|
|
21859
|
+
:type Description: str
|
|
21860
|
+
:param _Conditions: Rule configuration conditions, output parameter only.
|
|
21861
|
+
:type Conditions: list of DetectLengthLimitCondition
|
|
21862
|
+
:param _Action: Handling method. Values:.
|
|
21863
|
+
<li>`skip`: when request body data exceeds the detection depth set by `body_depth` in `Conditions` output parameters, skip all request body content detection.</li>.
|
|
21864
|
+
<li>`scan`: detect at the detection depth set by `body_depth` in the `Conditions` output parameters only. Truncate the excess part of the request body content directly, the excess part of the request body will not go through security detection.</li> Output paramter only.
|
|
21865
|
+
:type Action: str
|
|
21866
|
+
"""
|
|
21867
|
+
self._RuleId = None
|
|
21868
|
+
self._RuleName = None
|
|
21869
|
+
self._Description = None
|
|
21870
|
+
self._Conditions = None
|
|
21871
|
+
self._Action = None
|
|
21872
|
+
|
|
21873
|
+
@property
|
|
21874
|
+
def RuleId(self):
|
|
21875
|
+
"""Rule Id, output parameter only.
|
|
21876
|
+
:rtype: int
|
|
21877
|
+
"""
|
|
21878
|
+
return self._RuleId
|
|
21879
|
+
|
|
21880
|
+
@RuleId.setter
|
|
21881
|
+
def RuleId(self, RuleId):
|
|
21882
|
+
self._RuleId = RuleId
|
|
21883
|
+
|
|
21884
|
+
@property
|
|
21885
|
+
def RuleName(self):
|
|
21886
|
+
"""Rule name, output parameter only.
|
|
21887
|
+
:rtype: str
|
|
21888
|
+
"""
|
|
21889
|
+
return self._RuleName
|
|
21890
|
+
|
|
21891
|
+
@RuleName.setter
|
|
21892
|
+
def RuleName(self, RuleName):
|
|
21893
|
+
self._RuleName = RuleName
|
|
21894
|
+
|
|
21895
|
+
@property
|
|
21896
|
+
def Description(self):
|
|
21897
|
+
"""Rule description, output parameter only.
|
|
21898
|
+
:rtype: str
|
|
21899
|
+
"""
|
|
21900
|
+
return self._Description
|
|
21901
|
+
|
|
21902
|
+
@Description.setter
|
|
21903
|
+
def Description(self, Description):
|
|
21904
|
+
self._Description = Description
|
|
21905
|
+
|
|
21906
|
+
@property
|
|
21907
|
+
def Conditions(self):
|
|
21908
|
+
"""Rule configuration conditions, output parameter only.
|
|
21909
|
+
:rtype: list of DetectLengthLimitCondition
|
|
21910
|
+
"""
|
|
21911
|
+
return self._Conditions
|
|
21912
|
+
|
|
21913
|
+
@Conditions.setter
|
|
21914
|
+
def Conditions(self, Conditions):
|
|
21915
|
+
self._Conditions = Conditions
|
|
21916
|
+
|
|
21917
|
+
@property
|
|
21918
|
+
def Action(self):
|
|
21919
|
+
"""Handling method. Values:.
|
|
21920
|
+
<li>`skip`: when request body data exceeds the detection depth set by `body_depth` in `Conditions` output parameters, skip all request body content detection.</li>.
|
|
21921
|
+
<li>`scan`: detect at the detection depth set by `body_depth` in the `Conditions` output parameters only. Truncate the excess part of the request body content directly, the excess part of the request body will not go through security detection.</li> Output paramter only.
|
|
21922
|
+
:rtype: str
|
|
21923
|
+
"""
|
|
21924
|
+
return self._Action
|
|
21925
|
+
|
|
21926
|
+
@Action.setter
|
|
21927
|
+
def Action(self, Action):
|
|
21928
|
+
self._Action = Action
|
|
21929
|
+
|
|
21930
|
+
|
|
21931
|
+
def _deserialize(self, params):
|
|
21932
|
+
self._RuleId = params.get("RuleId")
|
|
21933
|
+
self._RuleName = params.get("RuleName")
|
|
21934
|
+
self._Description = params.get("Description")
|
|
21935
|
+
if params.get("Conditions") is not None:
|
|
21936
|
+
self._Conditions = []
|
|
21937
|
+
for item in params.get("Conditions"):
|
|
21938
|
+
obj = DetectLengthLimitCondition()
|
|
21939
|
+
obj._deserialize(item)
|
|
21940
|
+
self._Conditions.append(obj)
|
|
21941
|
+
self._Action = params.get("Action")
|
|
21942
|
+
memeber_set = set(params.keys())
|
|
21943
|
+
for name, value in vars(self).items():
|
|
21944
|
+
property_name = name[1:]
|
|
21945
|
+
if property_name in memeber_set:
|
|
21946
|
+
memeber_set.remove(property_name)
|
|
21947
|
+
if len(memeber_set) > 0:
|
|
21948
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
21949
|
+
|
|
21950
|
+
|
|
21951
|
+
|
|
21412
21952
|
class DiffIPWhitelist(AbstractModel):
|
|
21413
21953
|
"""Differences between the newest and existing intermediate IPs
|
|
21414
21954
|
|
|
@@ -27631,6 +28171,485 @@ class LogFormat(AbstractModel):
|
|
|
27631
28171
|
|
|
27632
28172
|
|
|
27633
28173
|
|
|
28174
|
+
class ManagedRuleAction(AbstractModel):
|
|
28175
|
+
"""Action for specific RuleId.
|
|
28176
|
+
|
|
28177
|
+
"""
|
|
28178
|
+
|
|
28179
|
+
def __init__(self):
|
|
28180
|
+
r"""
|
|
28181
|
+
:param _RuleId: Specific items under ManagedRuleGroup, used to rewrite the configuration of this individual rule item, refer to product documentation for details.
|
|
28182
|
+
:type RuleId: str
|
|
28183
|
+
:param _Action: Action for the managed rule item specified by RuleId, the SecurityAction Name parameter supports: <li>`Deny`: block and respond with an block page;</li> <li>`Monitor`: observe, do not process the request and record the security event in logs;</li> <li>`Disabled`: disabled, do not scan the request and skip this rule.</li>.
|
|
28184
|
+
:type Action: :class:`tencentcloud.teo.v20220901.models.SecurityAction`
|
|
28185
|
+
"""
|
|
28186
|
+
self._RuleId = None
|
|
28187
|
+
self._Action = None
|
|
28188
|
+
|
|
28189
|
+
@property
|
|
28190
|
+
def RuleId(self):
|
|
28191
|
+
"""Specific items under ManagedRuleGroup, used to rewrite the configuration of this individual rule item, refer to product documentation for details.
|
|
28192
|
+
:rtype: str
|
|
28193
|
+
"""
|
|
28194
|
+
return self._RuleId
|
|
28195
|
+
|
|
28196
|
+
@RuleId.setter
|
|
28197
|
+
def RuleId(self, RuleId):
|
|
28198
|
+
self._RuleId = RuleId
|
|
28199
|
+
|
|
28200
|
+
@property
|
|
28201
|
+
def Action(self):
|
|
28202
|
+
"""Action for the managed rule item specified by RuleId, the SecurityAction Name parameter supports: <li>`Deny`: block and respond with an block page;</li> <li>`Monitor`: observe, do not process the request and record the security event in logs;</li> <li>`Disabled`: disabled, do not scan the request and skip this rule.</li>.
|
|
28203
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.SecurityAction`
|
|
28204
|
+
"""
|
|
28205
|
+
return self._Action
|
|
28206
|
+
|
|
28207
|
+
@Action.setter
|
|
28208
|
+
def Action(self, Action):
|
|
28209
|
+
self._Action = Action
|
|
28210
|
+
|
|
28211
|
+
|
|
28212
|
+
def _deserialize(self, params):
|
|
28213
|
+
self._RuleId = params.get("RuleId")
|
|
28214
|
+
if params.get("Action") is not None:
|
|
28215
|
+
self._Action = SecurityAction()
|
|
28216
|
+
self._Action._deserialize(params.get("Action"))
|
|
28217
|
+
memeber_set = set(params.keys())
|
|
28218
|
+
for name, value in vars(self).items():
|
|
28219
|
+
property_name = name[1:]
|
|
28220
|
+
if property_name in memeber_set:
|
|
28221
|
+
memeber_set.remove(property_name)
|
|
28222
|
+
if len(memeber_set) > 0:
|
|
28223
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
28224
|
+
|
|
28225
|
+
|
|
28226
|
+
|
|
28227
|
+
class ManagedRuleAutoUpdate(AbstractModel):
|
|
28228
|
+
"""Managed rule automatic update option.
|
|
28229
|
+
|
|
28230
|
+
"""
|
|
28231
|
+
|
|
28232
|
+
def __init__(self):
|
|
28233
|
+
r"""
|
|
28234
|
+
:param _AutoUpdateToLatestVersion: Enable automatic update to the latest version or not. Values: <li>`on`: enabled</li> <li>`off`: disabled</li>.
|
|
28235
|
+
:type AutoUpdateToLatestVersion: str
|
|
28236
|
+
:param _RulesetVersion: Current version, compliant with ISO 8601 standard format, such as 2023-12-21T12:00:32Z, empty by default, output parameter only.
|
|
28237
|
+
:type RulesetVersion: str
|
|
28238
|
+
"""
|
|
28239
|
+
self._AutoUpdateToLatestVersion = None
|
|
28240
|
+
self._RulesetVersion = None
|
|
28241
|
+
|
|
28242
|
+
@property
|
|
28243
|
+
def AutoUpdateToLatestVersion(self):
|
|
28244
|
+
"""Enable automatic update to the latest version or not. Values: <li>`on`: enabled</li> <li>`off`: disabled</li>.
|
|
28245
|
+
:rtype: str
|
|
28246
|
+
"""
|
|
28247
|
+
return self._AutoUpdateToLatestVersion
|
|
28248
|
+
|
|
28249
|
+
@AutoUpdateToLatestVersion.setter
|
|
28250
|
+
def AutoUpdateToLatestVersion(self, AutoUpdateToLatestVersion):
|
|
28251
|
+
self._AutoUpdateToLatestVersion = AutoUpdateToLatestVersion
|
|
28252
|
+
|
|
28253
|
+
@property
|
|
28254
|
+
def RulesetVersion(self):
|
|
28255
|
+
"""Current version, compliant with ISO 8601 standard format, such as 2023-12-21T12:00:32Z, empty by default, output parameter only.
|
|
28256
|
+
:rtype: str
|
|
28257
|
+
"""
|
|
28258
|
+
return self._RulesetVersion
|
|
28259
|
+
|
|
28260
|
+
@RulesetVersion.setter
|
|
28261
|
+
def RulesetVersion(self, RulesetVersion):
|
|
28262
|
+
self._RulesetVersion = RulesetVersion
|
|
28263
|
+
|
|
28264
|
+
|
|
28265
|
+
def _deserialize(self, params):
|
|
28266
|
+
self._AutoUpdateToLatestVersion = params.get("AutoUpdateToLatestVersion")
|
|
28267
|
+
self._RulesetVersion = params.get("RulesetVersion")
|
|
28268
|
+
memeber_set = set(params.keys())
|
|
28269
|
+
for name, value in vars(self).items():
|
|
28270
|
+
property_name = name[1:]
|
|
28271
|
+
if property_name in memeber_set:
|
|
28272
|
+
memeber_set.remove(property_name)
|
|
28273
|
+
if len(memeber_set) > 0:
|
|
28274
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
28275
|
+
|
|
28276
|
+
|
|
28277
|
+
|
|
28278
|
+
class ManagedRuleDetail(AbstractModel):
|
|
28279
|
+
"""Managed rule detail.
|
|
28280
|
+
|
|
28281
|
+
"""
|
|
28282
|
+
|
|
28283
|
+
def __init__(self):
|
|
28284
|
+
r"""
|
|
28285
|
+
:param _RuleId: Managed rule Id.
|
|
28286
|
+
:type RuleId: str
|
|
28287
|
+
:param _RiskLevel: Protection level of managed rules. Values: <li>`low`: low risk, this rule has a relatively low risk and is applicable to very strict access scenarios, this level of rule may generate considerable false alarms.</li> <li>`medium`: medium risk, this means the risk of this rule is normal and is suitable for protection scenarios with stricter requirements.</li> <li>`high`: high risk, this indicates that the risk of this rule is relatively high and will not generate false alarms in most scenarios.</li> <li>`extreme`: ultra-high risk. this represents that the risk of this rule is extremely high and will not generate false alarms basically.</li>.
|
|
28288
|
+
:type RiskLevel: str
|
|
28289
|
+
:param _Description: Rule description.
|
|
28290
|
+
:type Description: str
|
|
28291
|
+
:param _Tags: Rule tag. Some types of rules do not have tags.
|
|
28292
|
+
:type Tags: list of str
|
|
28293
|
+
:param _RuleVersion: Rule version.
|
|
28294
|
+
:type RuleVersion: str
|
|
28295
|
+
"""
|
|
28296
|
+
self._RuleId = None
|
|
28297
|
+
self._RiskLevel = None
|
|
28298
|
+
self._Description = None
|
|
28299
|
+
self._Tags = None
|
|
28300
|
+
self._RuleVersion = None
|
|
28301
|
+
|
|
28302
|
+
@property
|
|
28303
|
+
def RuleId(self):
|
|
28304
|
+
"""Managed rule Id.
|
|
28305
|
+
:rtype: str
|
|
28306
|
+
"""
|
|
28307
|
+
return self._RuleId
|
|
28308
|
+
|
|
28309
|
+
@RuleId.setter
|
|
28310
|
+
def RuleId(self, RuleId):
|
|
28311
|
+
self._RuleId = RuleId
|
|
28312
|
+
|
|
28313
|
+
@property
|
|
28314
|
+
def RiskLevel(self):
|
|
28315
|
+
"""Protection level of managed rules. Values: <li>`low`: low risk, this rule has a relatively low risk and is applicable to very strict access scenarios, this level of rule may generate considerable false alarms.</li> <li>`medium`: medium risk, this means the risk of this rule is normal and is suitable for protection scenarios with stricter requirements.</li> <li>`high`: high risk, this indicates that the risk of this rule is relatively high and will not generate false alarms in most scenarios.</li> <li>`extreme`: ultra-high risk. this represents that the risk of this rule is extremely high and will not generate false alarms basically.</li>.
|
|
28316
|
+
:rtype: str
|
|
28317
|
+
"""
|
|
28318
|
+
return self._RiskLevel
|
|
28319
|
+
|
|
28320
|
+
@RiskLevel.setter
|
|
28321
|
+
def RiskLevel(self, RiskLevel):
|
|
28322
|
+
self._RiskLevel = RiskLevel
|
|
28323
|
+
|
|
28324
|
+
@property
|
|
28325
|
+
def Description(self):
|
|
28326
|
+
"""Rule description.
|
|
28327
|
+
:rtype: str
|
|
28328
|
+
"""
|
|
28329
|
+
return self._Description
|
|
28330
|
+
|
|
28331
|
+
@Description.setter
|
|
28332
|
+
def Description(self, Description):
|
|
28333
|
+
self._Description = Description
|
|
28334
|
+
|
|
28335
|
+
@property
|
|
28336
|
+
def Tags(self):
|
|
28337
|
+
"""Rule tag. Some types of rules do not have tags.
|
|
28338
|
+
:rtype: list of str
|
|
28339
|
+
"""
|
|
28340
|
+
return self._Tags
|
|
28341
|
+
|
|
28342
|
+
@Tags.setter
|
|
28343
|
+
def Tags(self, Tags):
|
|
28344
|
+
self._Tags = Tags
|
|
28345
|
+
|
|
28346
|
+
@property
|
|
28347
|
+
def RuleVersion(self):
|
|
28348
|
+
"""Rule version.
|
|
28349
|
+
:rtype: str
|
|
28350
|
+
"""
|
|
28351
|
+
return self._RuleVersion
|
|
28352
|
+
|
|
28353
|
+
@RuleVersion.setter
|
|
28354
|
+
def RuleVersion(self, RuleVersion):
|
|
28355
|
+
self._RuleVersion = RuleVersion
|
|
28356
|
+
|
|
28357
|
+
|
|
28358
|
+
def _deserialize(self, params):
|
|
28359
|
+
self._RuleId = params.get("RuleId")
|
|
28360
|
+
self._RiskLevel = params.get("RiskLevel")
|
|
28361
|
+
self._Description = params.get("Description")
|
|
28362
|
+
self._Tags = params.get("Tags")
|
|
28363
|
+
self._RuleVersion = params.get("RuleVersion")
|
|
28364
|
+
memeber_set = set(params.keys())
|
|
28365
|
+
for name, value in vars(self).items():
|
|
28366
|
+
property_name = name[1:]
|
|
28367
|
+
if property_name in memeber_set:
|
|
28368
|
+
memeber_set.remove(property_name)
|
|
28369
|
+
if len(memeber_set) > 0:
|
|
28370
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
28371
|
+
|
|
28372
|
+
|
|
28373
|
+
|
|
28374
|
+
class ManagedRuleGroup(AbstractModel):
|
|
28375
|
+
"""Managed rule group configuration.
|
|
28376
|
+
|
|
28377
|
+
"""
|
|
28378
|
+
|
|
28379
|
+
def __init__(self):
|
|
28380
|
+
r"""
|
|
28381
|
+
:param _GroupId: Name of the managed rule group, if the configuration for the rule group is not specified, it will be processed by default, refer to product documentation for the specific value of GroupId.
|
|
28382
|
+
:type GroupId: str
|
|
28383
|
+
:param _SensitivityLevel: Protection level of the managed rule group. Values: <li>`loose`: lenient, only contain ultra-high risk rules, at this point, Action parameter needs configured instead of RuleActions parameter;</li> <li>`normal`: normal, contain ultra-high risk and high-risk rules, at this point,Action parameter needs configured instead of RuleActions parameter;</li> <li>`strict`: strict, contains ultra-high risk, high-risk and medium-risk rules, at this point, Action parameter needs configured instead of RuleActions parameter;</li> <li>`extreme`: super strict, contains ultra-high risk, high-risk, medium-risk and low-risk rules, at this point, Action parameter needs configured instead of RuleActions parameter;</li> <li>`custom`: custom, refined strategy, configure the RuleActions parameter for each individual rule, at this point, the Action field is invalid, use RuleActions to configure the refined strategy for each individual rule.</li>.
|
|
28384
|
+
:type SensitivityLevel: str
|
|
28385
|
+
:param _Action: Action for ManagedRuleGroup. the Name parameter value of SecurityAction supports: <li>`Deny`: block and respond with a block page;</li> <li>`Monitor`: observe, do not process requests and record security events in logs;</li> <li>`Disabled`: not enabled, do not scan requests and skip this rule.</li>.
|
|
28386
|
+
:type Action: :class:`tencentcloud.teo.v20220901.models.SecurityAction`
|
|
28387
|
+
:param _RuleActions: Specific configuration of rule items under the managed rule group, valid only when SensitivityLevel is custom.
|
|
28388
|
+
:type RuleActions: list of ManagedRuleAction
|
|
28389
|
+
:param _MetaData: ManagedRuleGroup detailed information, output parameter only.
|
|
28390
|
+
:type MetaData: :class:`tencentcloud.teo.v20220901.models.ManagedRuleGroupMeta`
|
|
28391
|
+
"""
|
|
28392
|
+
self._GroupId = None
|
|
28393
|
+
self._SensitivityLevel = None
|
|
28394
|
+
self._Action = None
|
|
28395
|
+
self._RuleActions = None
|
|
28396
|
+
self._MetaData = None
|
|
28397
|
+
|
|
28398
|
+
@property
|
|
28399
|
+
def GroupId(self):
|
|
28400
|
+
"""Name of the managed rule group, if the configuration for the rule group is not specified, it will be processed by default, refer to product documentation for the specific value of GroupId.
|
|
28401
|
+
:rtype: str
|
|
28402
|
+
"""
|
|
28403
|
+
return self._GroupId
|
|
28404
|
+
|
|
28405
|
+
@GroupId.setter
|
|
28406
|
+
def GroupId(self, GroupId):
|
|
28407
|
+
self._GroupId = GroupId
|
|
28408
|
+
|
|
28409
|
+
@property
|
|
28410
|
+
def SensitivityLevel(self):
|
|
28411
|
+
"""Protection level of the managed rule group. Values: <li>`loose`: lenient, only contain ultra-high risk rules, at this point, Action parameter needs configured instead of RuleActions parameter;</li> <li>`normal`: normal, contain ultra-high risk and high-risk rules, at this point,Action parameter needs configured instead of RuleActions parameter;</li> <li>`strict`: strict, contains ultra-high risk, high-risk and medium-risk rules, at this point, Action parameter needs configured instead of RuleActions parameter;</li> <li>`extreme`: super strict, contains ultra-high risk, high-risk, medium-risk and low-risk rules, at this point, Action parameter needs configured instead of RuleActions parameter;</li> <li>`custom`: custom, refined strategy, configure the RuleActions parameter for each individual rule, at this point, the Action field is invalid, use RuleActions to configure the refined strategy for each individual rule.</li>.
|
|
28412
|
+
:rtype: str
|
|
28413
|
+
"""
|
|
28414
|
+
return self._SensitivityLevel
|
|
28415
|
+
|
|
28416
|
+
@SensitivityLevel.setter
|
|
28417
|
+
def SensitivityLevel(self, SensitivityLevel):
|
|
28418
|
+
self._SensitivityLevel = SensitivityLevel
|
|
28419
|
+
|
|
28420
|
+
@property
|
|
28421
|
+
def Action(self):
|
|
28422
|
+
"""Action for ManagedRuleGroup. the Name parameter value of SecurityAction supports: <li>`Deny`: block and respond with a block page;</li> <li>`Monitor`: observe, do not process requests and record security events in logs;</li> <li>`Disabled`: not enabled, do not scan requests and skip this rule.</li>.
|
|
28423
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.SecurityAction`
|
|
28424
|
+
"""
|
|
28425
|
+
return self._Action
|
|
28426
|
+
|
|
28427
|
+
@Action.setter
|
|
28428
|
+
def Action(self, Action):
|
|
28429
|
+
self._Action = Action
|
|
28430
|
+
|
|
28431
|
+
@property
|
|
28432
|
+
def RuleActions(self):
|
|
28433
|
+
"""Specific configuration of rule items under the managed rule group, valid only when SensitivityLevel is custom.
|
|
28434
|
+
:rtype: list of ManagedRuleAction
|
|
28435
|
+
"""
|
|
28436
|
+
return self._RuleActions
|
|
28437
|
+
|
|
28438
|
+
@RuleActions.setter
|
|
28439
|
+
def RuleActions(self, RuleActions):
|
|
28440
|
+
self._RuleActions = RuleActions
|
|
28441
|
+
|
|
28442
|
+
@property
|
|
28443
|
+
def MetaData(self):
|
|
28444
|
+
"""ManagedRuleGroup detailed information, output parameter only.
|
|
28445
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.ManagedRuleGroupMeta`
|
|
28446
|
+
"""
|
|
28447
|
+
return self._MetaData
|
|
28448
|
+
|
|
28449
|
+
@MetaData.setter
|
|
28450
|
+
def MetaData(self, MetaData):
|
|
28451
|
+
self._MetaData = MetaData
|
|
28452
|
+
|
|
28453
|
+
|
|
28454
|
+
def _deserialize(self, params):
|
|
28455
|
+
self._GroupId = params.get("GroupId")
|
|
28456
|
+
self._SensitivityLevel = params.get("SensitivityLevel")
|
|
28457
|
+
if params.get("Action") is not None:
|
|
28458
|
+
self._Action = SecurityAction()
|
|
28459
|
+
self._Action._deserialize(params.get("Action"))
|
|
28460
|
+
if params.get("RuleActions") is not None:
|
|
28461
|
+
self._RuleActions = []
|
|
28462
|
+
for item in params.get("RuleActions"):
|
|
28463
|
+
obj = ManagedRuleAction()
|
|
28464
|
+
obj._deserialize(item)
|
|
28465
|
+
self._RuleActions.append(obj)
|
|
28466
|
+
if params.get("MetaData") is not None:
|
|
28467
|
+
self._MetaData = ManagedRuleGroupMeta()
|
|
28468
|
+
self._MetaData._deserialize(params.get("MetaData"))
|
|
28469
|
+
memeber_set = set(params.keys())
|
|
28470
|
+
for name, value in vars(self).items():
|
|
28471
|
+
property_name = name[1:]
|
|
28472
|
+
if property_name in memeber_set:
|
|
28473
|
+
memeber_set.remove(property_name)
|
|
28474
|
+
if len(memeber_set) > 0:
|
|
28475
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
28476
|
+
|
|
28477
|
+
|
|
28478
|
+
|
|
28479
|
+
class ManagedRuleGroupMeta(AbstractModel):
|
|
28480
|
+
"""Managed rule group meta information.
|
|
28481
|
+
|
|
28482
|
+
"""
|
|
28483
|
+
|
|
28484
|
+
def __init__(self):
|
|
28485
|
+
r"""
|
|
28486
|
+
:param _GroupDetail: ManagedRuleGroup detailed information, output parameter only.
|
|
28487
|
+
:type GroupDetail: str
|
|
28488
|
+
:param _GroupName: ManagedRuleGroup name, output parameter only.
|
|
28489
|
+
:type GroupName: str
|
|
28490
|
+
:param _RuleDetails: All sub-rules information under current ManagedRuleGroup, output parameter only.
|
|
28491
|
+
:type RuleDetails: list of ManagedRuleDetail
|
|
28492
|
+
"""
|
|
28493
|
+
self._GroupDetail = None
|
|
28494
|
+
self._GroupName = None
|
|
28495
|
+
self._RuleDetails = None
|
|
28496
|
+
|
|
28497
|
+
@property
|
|
28498
|
+
def GroupDetail(self):
|
|
28499
|
+
"""ManagedRuleGroup detailed information, output parameter only.
|
|
28500
|
+
:rtype: str
|
|
28501
|
+
"""
|
|
28502
|
+
return self._GroupDetail
|
|
28503
|
+
|
|
28504
|
+
@GroupDetail.setter
|
|
28505
|
+
def GroupDetail(self, GroupDetail):
|
|
28506
|
+
self._GroupDetail = GroupDetail
|
|
28507
|
+
|
|
28508
|
+
@property
|
|
28509
|
+
def GroupName(self):
|
|
28510
|
+
"""ManagedRuleGroup name, output parameter only.
|
|
28511
|
+
:rtype: str
|
|
28512
|
+
"""
|
|
28513
|
+
return self._GroupName
|
|
28514
|
+
|
|
28515
|
+
@GroupName.setter
|
|
28516
|
+
def GroupName(self, GroupName):
|
|
28517
|
+
self._GroupName = GroupName
|
|
28518
|
+
|
|
28519
|
+
@property
|
|
28520
|
+
def RuleDetails(self):
|
|
28521
|
+
"""All sub-rules information under current ManagedRuleGroup, output parameter only.
|
|
28522
|
+
:rtype: list of ManagedRuleDetail
|
|
28523
|
+
"""
|
|
28524
|
+
return self._RuleDetails
|
|
28525
|
+
|
|
28526
|
+
@RuleDetails.setter
|
|
28527
|
+
def RuleDetails(self, RuleDetails):
|
|
28528
|
+
self._RuleDetails = RuleDetails
|
|
28529
|
+
|
|
28530
|
+
|
|
28531
|
+
def _deserialize(self, params):
|
|
28532
|
+
self._GroupDetail = params.get("GroupDetail")
|
|
28533
|
+
self._GroupName = params.get("GroupName")
|
|
28534
|
+
if params.get("RuleDetails") is not None:
|
|
28535
|
+
self._RuleDetails = []
|
|
28536
|
+
for item in params.get("RuleDetails"):
|
|
28537
|
+
obj = ManagedRuleDetail()
|
|
28538
|
+
obj._deserialize(item)
|
|
28539
|
+
self._RuleDetails.append(obj)
|
|
28540
|
+
memeber_set = set(params.keys())
|
|
28541
|
+
for name, value in vars(self).items():
|
|
28542
|
+
property_name = name[1:]
|
|
28543
|
+
if property_name in memeber_set:
|
|
28544
|
+
memeber_set.remove(property_name)
|
|
28545
|
+
if len(memeber_set) > 0:
|
|
28546
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
28547
|
+
|
|
28548
|
+
|
|
28549
|
+
|
|
28550
|
+
class ManagedRules(AbstractModel):
|
|
28551
|
+
"""Managed rules configuration.
|
|
28552
|
+
|
|
28553
|
+
"""
|
|
28554
|
+
|
|
28555
|
+
def __init__(self):
|
|
28556
|
+
r"""
|
|
28557
|
+
:param _Enabled: The managed rule status. Values: <li>`on`: enabled, all managed rules take effect as configured;</li> <li>`off`: disabled, all managed rules do not take effect.</li>.
|
|
28558
|
+
:type Enabled: str
|
|
28559
|
+
:param _DetectionOnly: Evaluation mode is enabled or not, it is valid only when the `Enabled` parameter is set to `on`. Values: <li>`on`: enabled, all managed rules take effect in `observe` mode.</li> <li>off: disabled, all managed rules take effect according to the specified configuration.</li>.
|
|
28560
|
+
:type DetectionOnly: str
|
|
28561
|
+
:param _SemanticAnalysis: Managed rule semantic analysis is enabled or not, it is valid only when the `Enabled` parameter is `on`. Values: <li>`on`: enabled, perform semantic analysis before processing requests;</li> <li>`off`: disabled, process requests directly without semantic analysis.</li> <br/>The default value is `off`.
|
|
28562
|
+
:type SemanticAnalysis: str
|
|
28563
|
+
:param _AutoUpdate: Managed rule automatic update option.
|
|
28564
|
+
:type AutoUpdate: :class:`tencentcloud.teo.v20220901.models.ManagedRuleAutoUpdate`
|
|
28565
|
+
:param _ManagedRuleGroups: Configuration of the managed rule group. If this structure is passed as an empty array or the GroupId is not included in the array, it will be processed based by default.
|
|
28566
|
+
:type ManagedRuleGroups: list of ManagedRuleGroup
|
|
28567
|
+
"""
|
|
28568
|
+
self._Enabled = None
|
|
28569
|
+
self._DetectionOnly = None
|
|
28570
|
+
self._SemanticAnalysis = None
|
|
28571
|
+
self._AutoUpdate = None
|
|
28572
|
+
self._ManagedRuleGroups = None
|
|
28573
|
+
|
|
28574
|
+
@property
|
|
28575
|
+
def Enabled(self):
|
|
28576
|
+
"""The managed rule status. Values: <li>`on`: enabled, all managed rules take effect as configured;</li> <li>`off`: disabled, all managed rules do not take effect.</li>.
|
|
28577
|
+
:rtype: str
|
|
28578
|
+
"""
|
|
28579
|
+
return self._Enabled
|
|
28580
|
+
|
|
28581
|
+
@Enabled.setter
|
|
28582
|
+
def Enabled(self, Enabled):
|
|
28583
|
+
self._Enabled = Enabled
|
|
28584
|
+
|
|
28585
|
+
@property
|
|
28586
|
+
def DetectionOnly(self):
|
|
28587
|
+
"""Evaluation mode is enabled or not, it is valid only when the `Enabled` parameter is set to `on`. Values: <li>`on`: enabled, all managed rules take effect in `observe` mode.</li> <li>off: disabled, all managed rules take effect according to the specified configuration.</li>.
|
|
28588
|
+
:rtype: str
|
|
28589
|
+
"""
|
|
28590
|
+
return self._DetectionOnly
|
|
28591
|
+
|
|
28592
|
+
@DetectionOnly.setter
|
|
28593
|
+
def DetectionOnly(self, DetectionOnly):
|
|
28594
|
+
self._DetectionOnly = DetectionOnly
|
|
28595
|
+
|
|
28596
|
+
@property
|
|
28597
|
+
def SemanticAnalysis(self):
|
|
28598
|
+
"""Managed rule semantic analysis is enabled or not, it is valid only when the `Enabled` parameter is `on`. Values: <li>`on`: enabled, perform semantic analysis before processing requests;</li> <li>`off`: disabled, process requests directly without semantic analysis.</li> <br/>The default value is `off`.
|
|
28599
|
+
:rtype: str
|
|
28600
|
+
"""
|
|
28601
|
+
return self._SemanticAnalysis
|
|
28602
|
+
|
|
28603
|
+
@SemanticAnalysis.setter
|
|
28604
|
+
def SemanticAnalysis(self, SemanticAnalysis):
|
|
28605
|
+
self._SemanticAnalysis = SemanticAnalysis
|
|
28606
|
+
|
|
28607
|
+
@property
|
|
28608
|
+
def AutoUpdate(self):
|
|
28609
|
+
"""Managed rule automatic update option.
|
|
28610
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.ManagedRuleAutoUpdate`
|
|
28611
|
+
"""
|
|
28612
|
+
return self._AutoUpdate
|
|
28613
|
+
|
|
28614
|
+
@AutoUpdate.setter
|
|
28615
|
+
def AutoUpdate(self, AutoUpdate):
|
|
28616
|
+
self._AutoUpdate = AutoUpdate
|
|
28617
|
+
|
|
28618
|
+
@property
|
|
28619
|
+
def ManagedRuleGroups(self):
|
|
28620
|
+
"""Configuration of the managed rule group. If this structure is passed as an empty array or the GroupId is not included in the array, it will be processed based by default.
|
|
28621
|
+
:rtype: list of ManagedRuleGroup
|
|
28622
|
+
"""
|
|
28623
|
+
return self._ManagedRuleGroups
|
|
28624
|
+
|
|
28625
|
+
@ManagedRuleGroups.setter
|
|
28626
|
+
def ManagedRuleGroups(self, ManagedRuleGroups):
|
|
28627
|
+
self._ManagedRuleGroups = ManagedRuleGroups
|
|
28628
|
+
|
|
28629
|
+
|
|
28630
|
+
def _deserialize(self, params):
|
|
28631
|
+
self._Enabled = params.get("Enabled")
|
|
28632
|
+
self._DetectionOnly = params.get("DetectionOnly")
|
|
28633
|
+
self._SemanticAnalysis = params.get("SemanticAnalysis")
|
|
28634
|
+
if params.get("AutoUpdate") is not None:
|
|
28635
|
+
self._AutoUpdate = ManagedRuleAutoUpdate()
|
|
28636
|
+
self._AutoUpdate._deserialize(params.get("AutoUpdate"))
|
|
28637
|
+
if params.get("ManagedRuleGroups") is not None:
|
|
28638
|
+
self._ManagedRuleGroups = []
|
|
28639
|
+
for item in params.get("ManagedRuleGroups"):
|
|
28640
|
+
obj = ManagedRuleGroup()
|
|
28641
|
+
obj._deserialize(item)
|
|
28642
|
+
self._ManagedRuleGroups.append(obj)
|
|
28643
|
+
memeber_set = set(params.keys())
|
|
28644
|
+
for name, value in vars(self).items():
|
|
28645
|
+
property_name = name[1:]
|
|
28646
|
+
if property_name in memeber_set:
|
|
28647
|
+
memeber_set.remove(property_name)
|
|
28648
|
+
if len(memeber_set) > 0:
|
|
28649
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
28650
|
+
|
|
28651
|
+
|
|
28652
|
+
|
|
27634
28653
|
class MaxAge(AbstractModel):
|
|
27635
28654
|
"""Browser cache rule configuration, which is used to set the default value of `MaxAge` and is disabled by default.
|
|
27636
28655
|
|
|
@@ -31533,29 +32552,29 @@ class ModifySecurityPolicyRequest(AbstractModel):
|
|
|
31533
32552
|
|
|
31534
32553
|
def __init__(self):
|
|
31535
32554
|
r"""
|
|
31536
|
-
:param _ZoneId:
|
|
32555
|
+
:param _ZoneId: Zone ID.
|
|
31537
32556
|
:type ZoneId: str
|
|
31538
|
-
:param _SecurityConfig: Security configuration.
|
|
32557
|
+
:param _SecurityConfig: Security policy configuration. <li>When the `CustomRule` in the `SecurityPolicy` parameter is set, the `AclConfg` and `IpTableConfg` in the `SecurityConfig` parameter will be ignored;</li> <li>when the `ManagedRule` in the `SecurityPolicy` parameter is set, the `WafConfig` in the `SecurityConfig` parameter will be ignored.</li> <li>For custom rules and managed rule policy configuration, using `SecurityPolicy` parameter to configure settings is recommended.</li>
|
|
31539
32558
|
:type SecurityConfig: :class:`tencentcloud.teo.v20220901.models.SecurityConfig`
|
|
31540
|
-
:param
|
|
31541
|
-
|
|
31542
|
-
|
|
32559
|
+
:param _SecurityPolicy: Security policy configuration. The parameter is recommended to use for custom policies and managed rule configurations of web protection, it supports configuring security policies with expression grammar.
|
|
32560
|
+
:type SecurityPolicy: :class:`tencentcloud.teo.v20220901.models.SecurityPolicy`
|
|
32561
|
+
:param _Entity: `SecurityPolicy` type, the following parameter values can be used for query: <li>`ZoneDefaultPolicy`: used to specify a query for site-level policies;</li> <li>`Template`: used to specify a query for policy templates. the `TemplateId` parameter needs to be specified simultaneously;</li> <li>`Host`: used to specify a query for domain-level policies (note: when using `Host` to specify a domain name service policy, only domain name services or policy templates that have been applied domain-level policies are supported).</li>
|
|
31543
32562
|
:type Entity: str
|
|
31544
|
-
:param
|
|
31545
|
-
|
|
31546
|
-
|
|
31547
|
-
|
|
31548
|
-
Note: When this parameter is used, the Entity parameter will not take effect. Do not use this parameter and the Entity parameter at the same time.
|
|
32563
|
+
:param _Host: Specify the domain name. When the `Entity` parameter value is set to `Host`, use the domain-level policy specified by this parameter to query the domain configuration. For example, use `www.example.com` to configure the domain-level policy for that domain name.
|
|
32564
|
+
:type Host: str
|
|
32565
|
+
:param _TemplateId: Specify the policy template ID. Use this parameter to specify the ID of the policy Template to query the Template configuration when the `Entity` parameter value is set to `Template`.
|
|
31549
32566
|
:type TemplateId: str
|
|
31550
32567
|
"""
|
|
31551
32568
|
self._ZoneId = None
|
|
31552
32569
|
self._SecurityConfig = None
|
|
32570
|
+
self._SecurityPolicy = None
|
|
31553
32571
|
self._Entity = None
|
|
32572
|
+
self._Host = None
|
|
31554
32573
|
self._TemplateId = None
|
|
31555
32574
|
|
|
31556
32575
|
@property
|
|
31557
32576
|
def ZoneId(self):
|
|
31558
|
-
"""
|
|
32577
|
+
"""Zone ID.
|
|
31559
32578
|
:rtype: str
|
|
31560
32579
|
"""
|
|
31561
32580
|
return self._ZoneId
|
|
@@ -31566,7 +32585,7 @@ Note: When this parameter is used, the Entity parameter will not take effect. Do
|
|
|
31566
32585
|
|
|
31567
32586
|
@property
|
|
31568
32587
|
def SecurityConfig(self):
|
|
31569
|
-
"""Security configuration.
|
|
32588
|
+
"""Security policy configuration. <li>When the `CustomRule` in the `SecurityPolicy` parameter is set, the `AclConfg` and `IpTableConfg` in the `SecurityConfig` parameter will be ignored;</li> <li>when the `ManagedRule` in the `SecurityPolicy` parameter is set, the `WafConfig` in the `SecurityConfig` parameter will be ignored.</li> <li>For custom rules and managed rule policy configuration, using `SecurityPolicy` parameter to configure settings is recommended.</li>
|
|
31570
32589
|
:rtype: :class:`tencentcloud.teo.v20220901.models.SecurityConfig`
|
|
31571
32590
|
"""
|
|
31572
32591
|
return self._SecurityConfig
|
|
@@ -31576,10 +32595,19 @@ Note: When this parameter is used, the Entity parameter will not take effect. Do
|
|
|
31576
32595
|
self._SecurityConfig = SecurityConfig
|
|
31577
32596
|
|
|
31578
32597
|
@property
|
|
31579
|
-
def
|
|
31580
|
-
"""
|
|
32598
|
+
def SecurityPolicy(self):
|
|
32599
|
+
"""Security policy configuration. The parameter is recommended to use for custom policies and managed rule configurations of web protection, it supports configuring security policies with expression grammar.
|
|
32600
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.SecurityPolicy`
|
|
32601
|
+
"""
|
|
32602
|
+
return self._SecurityPolicy
|
|
31581
32603
|
|
|
31582
|
-
|
|
32604
|
+
@SecurityPolicy.setter
|
|
32605
|
+
def SecurityPolicy(self, SecurityPolicy):
|
|
32606
|
+
self._SecurityPolicy = SecurityPolicy
|
|
32607
|
+
|
|
32608
|
+
@property
|
|
32609
|
+
def Entity(self):
|
|
32610
|
+
"""`SecurityPolicy` type, the following parameter values can be used for query: <li>`ZoneDefaultPolicy`: used to specify a query for site-level policies;</li> <li>`Template`: used to specify a query for policy templates. the `TemplateId` parameter needs to be specified simultaneously;</li> <li>`Host`: used to specify a query for domain-level policies (note: when using `Host` to specify a domain name service policy, only domain name services or policy templates that have been applied domain-level policies are supported).</li>
|
|
31583
32611
|
:rtype: str
|
|
31584
32612
|
"""
|
|
31585
32613
|
return self._Entity
|
|
@@ -31589,12 +32617,19 @@ Note: When both this parameter and the TemplateId parameter are specified, this
|
|
|
31589
32617
|
self._Entity = Entity
|
|
31590
32618
|
|
|
31591
32619
|
@property
|
|
31592
|
-
def
|
|
31593
|
-
"""
|
|
31594
|
-
|
|
31595
|
-
|
|
32620
|
+
def Host(self):
|
|
32621
|
+
"""Specify the domain name. When the `Entity` parameter value is set to `Host`, use the domain-level policy specified by this parameter to query the domain configuration. For example, use `www.example.com` to configure the domain-level policy for that domain name.
|
|
32622
|
+
:rtype: str
|
|
32623
|
+
"""
|
|
32624
|
+
return self._Host
|
|
32625
|
+
|
|
32626
|
+
@Host.setter
|
|
32627
|
+
def Host(self, Host):
|
|
32628
|
+
self._Host = Host
|
|
31596
32629
|
|
|
31597
|
-
|
|
32630
|
+
@property
|
|
32631
|
+
def TemplateId(self):
|
|
32632
|
+
"""Specify the policy template ID. Use this parameter to specify the ID of the policy Template to query the Template configuration when the `Entity` parameter value is set to `Template`.
|
|
31598
32633
|
:rtype: str
|
|
31599
32634
|
"""
|
|
31600
32635
|
return self._TemplateId
|
|
@@ -31609,7 +32644,11 @@ Note: When this parameter is used, the Entity parameter will not take effect. Do
|
|
|
31609
32644
|
if params.get("SecurityConfig") is not None:
|
|
31610
32645
|
self._SecurityConfig = SecurityConfig()
|
|
31611
32646
|
self._SecurityConfig._deserialize(params.get("SecurityConfig"))
|
|
32647
|
+
if params.get("SecurityPolicy") is not None:
|
|
32648
|
+
self._SecurityPolicy = SecurityPolicy()
|
|
32649
|
+
self._SecurityPolicy._deserialize(params.get("SecurityPolicy"))
|
|
31612
32650
|
self._Entity = params.get("Entity")
|
|
32651
|
+
self._Host = params.get("Host")
|
|
31613
32652
|
self._TemplateId = params.get("TemplateId")
|
|
31614
32653
|
memeber_set = set(params.keys())
|
|
31615
32654
|
for name, value in vars(self).items():
|
|
@@ -36022,6 +37061,42 @@ Note: This field may return null, which indicates a failure to obtain a valid va
|
|
|
36022
37061
|
|
|
36023
37062
|
|
|
36024
37063
|
|
|
37064
|
+
class RedirectActionParameters(AbstractModel):
|
|
37065
|
+
"""Additional parameter for SecurityAction `Redirect`.
|
|
37066
|
+
|
|
37067
|
+
"""
|
|
37068
|
+
|
|
37069
|
+
def __init__(self):
|
|
37070
|
+
r"""
|
|
37071
|
+
:param _URL: Redirect URL.
|
|
37072
|
+
:type URL: str
|
|
37073
|
+
"""
|
|
37074
|
+
self._URL = None
|
|
37075
|
+
|
|
37076
|
+
@property
|
|
37077
|
+
def URL(self):
|
|
37078
|
+
"""Redirect URL.
|
|
37079
|
+
:rtype: str
|
|
37080
|
+
"""
|
|
37081
|
+
return self._URL
|
|
37082
|
+
|
|
37083
|
+
@URL.setter
|
|
37084
|
+
def URL(self, URL):
|
|
37085
|
+
self._URL = URL
|
|
37086
|
+
|
|
37087
|
+
|
|
37088
|
+
def _deserialize(self, params):
|
|
37089
|
+
self._URL = params.get("URL")
|
|
37090
|
+
memeber_set = set(params.keys())
|
|
37091
|
+
for name, value in vars(self).items():
|
|
37092
|
+
property_name = name[1:]
|
|
37093
|
+
if property_name in memeber_set:
|
|
37094
|
+
memeber_set.remove(property_name)
|
|
37095
|
+
if len(memeber_set) > 0:
|
|
37096
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
37097
|
+
|
|
37098
|
+
|
|
37099
|
+
|
|
36025
37100
|
class RenewFlag(AbstractModel):
|
|
36026
37101
|
"""Auto-renewal configuration item in a prepaid plan.
|
|
36027
37102
|
|
|
@@ -36496,6 +37571,57 @@ class ResponseSpeedLimitParameters(AbstractModel):
|
|
|
36496
37571
|
|
|
36497
37572
|
|
|
36498
37573
|
|
|
37574
|
+
class ReturnCustomPageActionParameters(AbstractModel):
|
|
37575
|
+
"""Additional parameter for SecurityAction `ReturnCustomPage`.
|
|
37576
|
+
|
|
37577
|
+
"""
|
|
37578
|
+
|
|
37579
|
+
def __init__(self):
|
|
37580
|
+
r"""
|
|
37581
|
+
:param _ResponseCode: Response custom status code.
|
|
37582
|
+
:type ResponseCode: str
|
|
37583
|
+
:param _ErrorPageId: Response custom page ID.
|
|
37584
|
+
:type ErrorPageId: str
|
|
37585
|
+
"""
|
|
37586
|
+
self._ResponseCode = None
|
|
37587
|
+
self._ErrorPageId = None
|
|
37588
|
+
|
|
37589
|
+
@property
|
|
37590
|
+
def ResponseCode(self):
|
|
37591
|
+
"""Response custom status code.
|
|
37592
|
+
:rtype: str
|
|
37593
|
+
"""
|
|
37594
|
+
return self._ResponseCode
|
|
37595
|
+
|
|
37596
|
+
@ResponseCode.setter
|
|
37597
|
+
def ResponseCode(self, ResponseCode):
|
|
37598
|
+
self._ResponseCode = ResponseCode
|
|
37599
|
+
|
|
37600
|
+
@property
|
|
37601
|
+
def ErrorPageId(self):
|
|
37602
|
+
"""Response custom page ID.
|
|
37603
|
+
:rtype: str
|
|
37604
|
+
"""
|
|
37605
|
+
return self._ErrorPageId
|
|
37606
|
+
|
|
37607
|
+
@ErrorPageId.setter
|
|
37608
|
+
def ErrorPageId(self, ErrorPageId):
|
|
37609
|
+
self._ErrorPageId = ErrorPageId
|
|
37610
|
+
|
|
37611
|
+
|
|
37612
|
+
def _deserialize(self, params):
|
|
37613
|
+
self._ResponseCode = params.get("ResponseCode")
|
|
37614
|
+
self._ErrorPageId = params.get("ErrorPageId")
|
|
37615
|
+
memeber_set = set(params.keys())
|
|
37616
|
+
for name, value in vars(self).items():
|
|
37617
|
+
property_name = name[1:]
|
|
37618
|
+
if property_name in memeber_set:
|
|
37619
|
+
memeber_set.remove(property_name)
|
|
37620
|
+
if len(memeber_set) > 0:
|
|
37621
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
37622
|
+
|
|
37623
|
+
|
|
37624
|
+
|
|
36499
37625
|
class RewriteAction(AbstractModel):
|
|
36500
37626
|
"""Rule engine action for the HTTP request/response header
|
|
36501
37627
|
|
|
@@ -38872,8 +39998,97 @@ class SecEntryValue(AbstractModel):
|
|
|
38872
39998
|
|
|
38873
39999
|
|
|
38874
40000
|
|
|
40001
|
+
class SecurityAction(AbstractModel):
|
|
40002
|
+
"""Action for security operation.
|
|
40003
|
+
|
|
40004
|
+
"""
|
|
40005
|
+
|
|
40006
|
+
def __init__(self):
|
|
40007
|
+
r"""
|
|
40008
|
+
:param _Name: Specific action name for security operation. Values:
|
|
40009
|
+
<li>`Deny`: block</li> <li>`Monitor`: monitor</li> <li>`ReturnCustomPage`: block with customized page</li> <li>`Redirect`: Redirect to URL</li> <li>`BlockIP`: IP block</li> <li>`JSChallenge`: javaScript challenge</li> <li>`ManagedChallenge`: managed challenge</li> <li>`Disabled`: disabled</li> <li>`Allow`: allow</li>.
|
|
40010
|
+
:type Name: str
|
|
40011
|
+
:param _BlockIPActionParameters: Additional parameter when Name is BlockIP.
|
|
40012
|
+
:type BlockIPActionParameters: :class:`tencentcloud.teo.v20220901.models.BlockIPActionParameters`
|
|
40013
|
+
:param _ReturnCustomPageActionParameters: Additional parameter when Name is ReturnCustomPage.
|
|
40014
|
+
:type ReturnCustomPageActionParameters: :class:`tencentcloud.teo.v20220901.models.ReturnCustomPageActionParameters`
|
|
40015
|
+
:param _RedirectActionParameters: Additional parameter when Name is Redirect.
|
|
40016
|
+
:type RedirectActionParameters: :class:`tencentcloud.teo.v20220901.models.RedirectActionParameters`
|
|
40017
|
+
"""
|
|
40018
|
+
self._Name = None
|
|
40019
|
+
self._BlockIPActionParameters = None
|
|
40020
|
+
self._ReturnCustomPageActionParameters = None
|
|
40021
|
+
self._RedirectActionParameters = None
|
|
40022
|
+
|
|
40023
|
+
@property
|
|
40024
|
+
def Name(self):
|
|
40025
|
+
"""Specific action name for security operation. Values:
|
|
40026
|
+
<li>`Deny`: block</li> <li>`Monitor`: monitor</li> <li>`ReturnCustomPage`: block with customized page</li> <li>`Redirect`: Redirect to URL</li> <li>`BlockIP`: IP block</li> <li>`JSChallenge`: javaScript challenge</li> <li>`ManagedChallenge`: managed challenge</li> <li>`Disabled`: disabled</li> <li>`Allow`: allow</li>.
|
|
40027
|
+
:rtype: str
|
|
40028
|
+
"""
|
|
40029
|
+
return self._Name
|
|
40030
|
+
|
|
40031
|
+
@Name.setter
|
|
40032
|
+
def Name(self, Name):
|
|
40033
|
+
self._Name = Name
|
|
40034
|
+
|
|
40035
|
+
@property
|
|
40036
|
+
def BlockIPActionParameters(self):
|
|
40037
|
+
"""Additional parameter when Name is BlockIP.
|
|
40038
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.BlockIPActionParameters`
|
|
40039
|
+
"""
|
|
40040
|
+
return self._BlockIPActionParameters
|
|
40041
|
+
|
|
40042
|
+
@BlockIPActionParameters.setter
|
|
40043
|
+
def BlockIPActionParameters(self, BlockIPActionParameters):
|
|
40044
|
+
self._BlockIPActionParameters = BlockIPActionParameters
|
|
40045
|
+
|
|
40046
|
+
@property
|
|
40047
|
+
def ReturnCustomPageActionParameters(self):
|
|
40048
|
+
"""Additional parameter when Name is ReturnCustomPage.
|
|
40049
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.ReturnCustomPageActionParameters`
|
|
40050
|
+
"""
|
|
40051
|
+
return self._ReturnCustomPageActionParameters
|
|
40052
|
+
|
|
40053
|
+
@ReturnCustomPageActionParameters.setter
|
|
40054
|
+
def ReturnCustomPageActionParameters(self, ReturnCustomPageActionParameters):
|
|
40055
|
+
self._ReturnCustomPageActionParameters = ReturnCustomPageActionParameters
|
|
40056
|
+
|
|
40057
|
+
@property
|
|
40058
|
+
def RedirectActionParameters(self):
|
|
40059
|
+
"""Additional parameter when Name is Redirect.
|
|
40060
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.RedirectActionParameters`
|
|
40061
|
+
"""
|
|
40062
|
+
return self._RedirectActionParameters
|
|
40063
|
+
|
|
40064
|
+
@RedirectActionParameters.setter
|
|
40065
|
+
def RedirectActionParameters(self, RedirectActionParameters):
|
|
40066
|
+
self._RedirectActionParameters = RedirectActionParameters
|
|
40067
|
+
|
|
40068
|
+
|
|
40069
|
+
def _deserialize(self, params):
|
|
40070
|
+
self._Name = params.get("Name")
|
|
40071
|
+
if params.get("BlockIPActionParameters") is not None:
|
|
40072
|
+
self._BlockIPActionParameters = BlockIPActionParameters()
|
|
40073
|
+
self._BlockIPActionParameters._deserialize(params.get("BlockIPActionParameters"))
|
|
40074
|
+
if params.get("ReturnCustomPageActionParameters") is not None:
|
|
40075
|
+
self._ReturnCustomPageActionParameters = ReturnCustomPageActionParameters()
|
|
40076
|
+
self._ReturnCustomPageActionParameters._deserialize(params.get("ReturnCustomPageActionParameters"))
|
|
40077
|
+
if params.get("RedirectActionParameters") is not None:
|
|
40078
|
+
self._RedirectActionParameters = RedirectActionParameters()
|
|
40079
|
+
self._RedirectActionParameters._deserialize(params.get("RedirectActionParameters"))
|
|
40080
|
+
memeber_set = set(params.keys())
|
|
40081
|
+
for name, value in vars(self).items():
|
|
40082
|
+
property_name = name[1:]
|
|
40083
|
+
if property_name in memeber_set:
|
|
40084
|
+
memeber_set.remove(property_name)
|
|
40085
|
+
if len(memeber_set) > 0:
|
|
40086
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
40087
|
+
|
|
40088
|
+
|
|
40089
|
+
|
|
38875
40090
|
class SecurityConfig(AbstractModel):
|
|
38876
|
-
"""
|
|
40091
|
+
"""Web security configuration.
|
|
38877
40092
|
|
|
38878
40093
|
"""
|
|
38879
40094
|
|
|
@@ -38905,6 +40120,9 @@ Note: This field may return `null`, indicating that no valid value can be obtain
|
|
|
38905
40120
|
:type TemplateConfig: :class:`tencentcloud.teo.v20220901.models.TemplateConfig`
|
|
38906
40121
|
:param _SlowPostConfig: Settings for slow attack defense. If the parameter is null or not filled, the configuration last set will be used by default.Note: This field may return null, indicating that no valid value can be obtained.
|
|
38907
40122
|
:type SlowPostConfig: :class:`tencentcloud.teo.v20220901.models.SlowPostConfig`
|
|
40123
|
+
:param _DetectLengthLimitConfig: Detect the length limit configuration, output parameter only.
|
|
40124
|
+
Note: This field may return null, which indicates a failure to obtain a valid value.
|
|
40125
|
+
:type DetectLengthLimitConfig: :class:`tencentcloud.teo.v20220901.models.DetectLengthLimitConfig`
|
|
38908
40126
|
"""
|
|
38909
40127
|
self._WafConfig = None
|
|
38910
40128
|
self._RateLimitConfig = None
|
|
@@ -38916,6 +40134,7 @@ Note: This field may return `null`, indicating that no valid value can be obtain
|
|
|
38916
40134
|
self._DropPageConfig = None
|
|
38917
40135
|
self._TemplateConfig = None
|
|
38918
40136
|
self._SlowPostConfig = None
|
|
40137
|
+
self._DetectLengthLimitConfig = None
|
|
38919
40138
|
|
|
38920
40139
|
@property
|
|
38921
40140
|
def WafConfig(self):
|
|
@@ -39033,6 +40252,18 @@ Note: This field may return `null`, indicating that no valid value can be obtain
|
|
|
39033
40252
|
def SlowPostConfig(self, SlowPostConfig):
|
|
39034
40253
|
self._SlowPostConfig = SlowPostConfig
|
|
39035
40254
|
|
|
40255
|
+
@property
|
|
40256
|
+
def DetectLengthLimitConfig(self):
|
|
40257
|
+
"""Detect the length limit configuration, output parameter only.
|
|
40258
|
+
Note: This field may return null, which indicates a failure to obtain a valid value.
|
|
40259
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.DetectLengthLimitConfig`
|
|
40260
|
+
"""
|
|
40261
|
+
return self._DetectLengthLimitConfig
|
|
40262
|
+
|
|
40263
|
+
@DetectLengthLimitConfig.setter
|
|
40264
|
+
def DetectLengthLimitConfig(self, DetectLengthLimitConfig):
|
|
40265
|
+
self._DetectLengthLimitConfig = DetectLengthLimitConfig
|
|
40266
|
+
|
|
39036
40267
|
|
|
39037
40268
|
def _deserialize(self, params):
|
|
39038
40269
|
if params.get("WafConfig") is not None:
|
|
@@ -39065,6 +40296,68 @@ Note: This field may return `null`, indicating that no valid value can be obtain
|
|
|
39065
40296
|
if params.get("SlowPostConfig") is not None:
|
|
39066
40297
|
self._SlowPostConfig = SlowPostConfig()
|
|
39067
40298
|
self._SlowPostConfig._deserialize(params.get("SlowPostConfig"))
|
|
40299
|
+
if params.get("DetectLengthLimitConfig") is not None:
|
|
40300
|
+
self._DetectLengthLimitConfig = DetectLengthLimitConfig()
|
|
40301
|
+
self._DetectLengthLimitConfig._deserialize(params.get("DetectLengthLimitConfig"))
|
|
40302
|
+
memeber_set = set(params.keys())
|
|
40303
|
+
for name, value in vars(self).items():
|
|
40304
|
+
property_name = name[1:]
|
|
40305
|
+
if property_name in memeber_set:
|
|
40306
|
+
memeber_set.remove(property_name)
|
|
40307
|
+
if len(memeber_set) > 0:
|
|
40308
|
+
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
|
|
40309
|
+
|
|
40310
|
+
|
|
40311
|
+
|
|
40312
|
+
class SecurityPolicy(AbstractModel):
|
|
40313
|
+
"""Web security policy.
|
|
40314
|
+
|
|
40315
|
+
"""
|
|
40316
|
+
|
|
40317
|
+
def __init__(self):
|
|
40318
|
+
r"""
|
|
40319
|
+
:param _CustomRules: Custom rules. If the parameter is null or not filled, the configuration last set will be used by default.
|
|
40320
|
+
Note: This field may return null, indicating that no valid value can be obtained.
|
|
40321
|
+
:type CustomRules: :class:`tencentcloud.teo.v20220901.models.CustomRules`
|
|
40322
|
+
:param _ManagedRules: Managed. If the parameter is null or not filled, the configuration last set will be used by default.
|
|
40323
|
+
Note: This field may return null, indicating that no valid value can be obtained.
|
|
40324
|
+
:type ManagedRules: :class:`tencentcloud.teo.v20220901.models.ManagedRules`
|
|
40325
|
+
"""
|
|
40326
|
+
self._CustomRules = None
|
|
40327
|
+
self._ManagedRules = None
|
|
40328
|
+
|
|
40329
|
+
@property
|
|
40330
|
+
def CustomRules(self):
|
|
40331
|
+
"""Custom rules. If the parameter is null or not filled, the configuration last set will be used by default.
|
|
40332
|
+
Note: This field may return null, indicating that no valid value can be obtained.
|
|
40333
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.CustomRules`
|
|
40334
|
+
"""
|
|
40335
|
+
return self._CustomRules
|
|
40336
|
+
|
|
40337
|
+
@CustomRules.setter
|
|
40338
|
+
def CustomRules(self, CustomRules):
|
|
40339
|
+
self._CustomRules = CustomRules
|
|
40340
|
+
|
|
40341
|
+
@property
|
|
40342
|
+
def ManagedRules(self):
|
|
40343
|
+
"""Managed. If the parameter is null or not filled, the configuration last set will be used by default.
|
|
40344
|
+
Note: This field may return null, indicating that no valid value can be obtained.
|
|
40345
|
+
:rtype: :class:`tencentcloud.teo.v20220901.models.ManagedRules`
|
|
40346
|
+
"""
|
|
40347
|
+
return self._ManagedRules
|
|
40348
|
+
|
|
40349
|
+
@ManagedRules.setter
|
|
40350
|
+
def ManagedRules(self, ManagedRules):
|
|
40351
|
+
self._ManagedRules = ManagedRules
|
|
40352
|
+
|
|
40353
|
+
|
|
40354
|
+
def _deserialize(self, params):
|
|
40355
|
+
if params.get("CustomRules") is not None:
|
|
40356
|
+
self._CustomRules = CustomRules()
|
|
40357
|
+
self._CustomRules._deserialize(params.get("CustomRules"))
|
|
40358
|
+
if params.get("ManagedRules") is not None:
|
|
40359
|
+
self._ManagedRules = ManagedRules()
|
|
40360
|
+
self._ManagedRules._deserialize(params.get("ManagedRules"))
|
|
39068
40361
|
memeber_set = set(params.keys())
|
|
39069
40362
|
for name, value in vars(self).items():
|
|
39070
40363
|
property_name = name[1:]
|