aws-cdk-lib 2.91.0__py3-none-any.whl → 2.92.0__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 aws-cdk-lib might be problematic. Click here for more details.
- aws_cdk/_jsii/__init__.py +2 -2
- aws_cdk/_jsii/{aws-cdk-lib@2.91.0.jsii.tgz → aws-cdk-lib@2.92.0.jsii.tgz} +0 -0
- aws_cdk/aws_appstream/__init__.py +29 -21
- aws_cdk/aws_batch/__init__.py +22 -10
- aws_cdk/aws_billingconductor/__init__.py +14 -11
- aws_cdk/aws_cloudwatch/__init__.py +3 -3
- aws_cdk/aws_dms/__init__.py +117 -58
- aws_cdk/aws_ec2/__init__.py +12 -14
- aws_cdk/aws_ecs/__init__.py +24 -12
- aws_cdk/aws_evidently/__init__.py +3 -3
- aws_cdk/aws_fsx/__init__.py +6 -5
- aws_cdk/aws_guardduty/__init__.py +60 -17
- aws_cdk/aws_iam/__init__.py +6 -8
- aws_cdk/aws_internetmonitor/__init__.py +43 -20
- aws_cdk/aws_kms/__init__.py +95 -47
- aws_cdk/aws_mwaa/__init__.py +13 -8
- aws_cdk/aws_neptune/__init__.py +5 -2
- aws_cdk/aws_omics/__init__.py +5 -3
- aws_cdk/aws_opensearchservice/__init__.py +247 -14
- aws_cdk/aws_organizations/__init__.py +17 -17
- aws_cdk/aws_route53/__init__.py +3 -1
- aws_cdk/aws_sns/__init__.py +8 -8
- aws_cdk/aws_sqs/__init__.py +13 -9
- aws_cdk/aws_transfer/__init__.py +40 -12
- aws_cdk/aws_vpclattice/__init__.py +10 -6
- aws_cdk/aws_wafv2/__init__.py +118 -84
- {aws_cdk_lib-2.91.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/METADATA +3 -3
- {aws_cdk_lib-2.91.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/RECORD +32 -32
- {aws_cdk_lib-2.91.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.91.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.91.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.91.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_wafv2/__init__.py
CHANGED
|
@@ -11553,12 +11553,13 @@ class CfnWebACL(
|
|
|
11553
11553
|
enable_regex_in_path: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
11554
11554
|
response_inspection: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.ResponseInspectionProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
11555
11555
|
) -> None:
|
|
11556
|
-
'''
|
|
11557
|
-
|
|
11558
|
-
:param
|
|
11559
|
-
:param
|
|
11560
|
-
:param
|
|
11561
|
-
:param
|
|
11556
|
+
'''Not currently supported by AWS CloudFormation .
|
|
11557
|
+
|
|
11558
|
+
:param creation_path: Not currently supported by AWS CloudFormation .
|
|
11559
|
+
:param registration_page_path: Not currently supported by AWS CloudFormation .
|
|
11560
|
+
:param request_inspection: Not currently supported by AWS CloudFormation .
|
|
11561
|
+
:param enable_regex_in_path: Not currently supported by AWS CloudFormation .
|
|
11562
|
+
:param response_inspection: Not currently supported by AWS CloudFormation .
|
|
11562
11563
|
|
|
11563
11564
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-awsmanagedrulesacfpruleset.html
|
|
11564
11565
|
:exampleMetadata: fixture=_generated
|
|
@@ -11636,7 +11637,8 @@ class CfnWebACL(
|
|
|
11636
11637
|
|
|
11637
11638
|
@builtins.property
|
|
11638
11639
|
def creation_path(self) -> builtins.str:
|
|
11639
|
-
'''
|
|
11640
|
+
'''Not currently supported by AWS CloudFormation .
|
|
11641
|
+
|
|
11640
11642
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-awsmanagedrulesacfpruleset.html#cfn-wafv2-webacl-awsmanagedrulesacfpruleset-creationpath
|
|
11641
11643
|
'''
|
|
11642
11644
|
result = self._values.get("creation_path")
|
|
@@ -11645,7 +11647,8 @@ class CfnWebACL(
|
|
|
11645
11647
|
|
|
11646
11648
|
@builtins.property
|
|
11647
11649
|
def registration_page_path(self) -> builtins.str:
|
|
11648
|
-
'''
|
|
11650
|
+
'''Not currently supported by AWS CloudFormation .
|
|
11651
|
+
|
|
11649
11652
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-awsmanagedrulesacfpruleset.html#cfn-wafv2-webacl-awsmanagedrulesacfpruleset-registrationpagepath
|
|
11650
11653
|
'''
|
|
11651
11654
|
result = self._values.get("registration_page_path")
|
|
@@ -11656,7 +11659,8 @@ class CfnWebACL(
|
|
|
11656
11659
|
def request_inspection(
|
|
11657
11660
|
self,
|
|
11658
11661
|
) -> typing.Union[_IResolvable_da3f097b, "CfnWebACL.RequestInspectionACFPProperty"]:
|
|
11659
|
-
'''
|
|
11662
|
+
'''Not currently supported by AWS CloudFormation .
|
|
11663
|
+
|
|
11660
11664
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-awsmanagedrulesacfpruleset.html#cfn-wafv2-webacl-awsmanagedrulesacfpruleset-requestinspection
|
|
11661
11665
|
'''
|
|
11662
11666
|
result = self._values.get("request_inspection")
|
|
@@ -11667,7 +11671,8 @@ class CfnWebACL(
|
|
|
11667
11671
|
def enable_regex_in_path(
|
|
11668
11672
|
self,
|
|
11669
11673
|
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
11670
|
-
'''
|
|
11674
|
+
'''Not currently supported by AWS CloudFormation .
|
|
11675
|
+
|
|
11671
11676
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-awsmanagedrulesacfpruleset.html#cfn-wafv2-webacl-awsmanagedrulesacfpruleset-enableregexinpath
|
|
11672
11677
|
'''
|
|
11673
11678
|
result = self._values.get("enable_regex_in_path")
|
|
@@ -11677,7 +11682,8 @@ class CfnWebACL(
|
|
|
11677
11682
|
def response_inspection(
|
|
11678
11683
|
self,
|
|
11679
11684
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.ResponseInspectionProperty"]]:
|
|
11680
|
-
'''
|
|
11685
|
+
'''Not currently supported by AWS CloudFormation .
|
|
11686
|
+
|
|
11681
11687
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-awsmanagedrulesacfpruleset.html#cfn-wafv2-webacl-awsmanagedrulesacfpruleset-responseinspection
|
|
11682
11688
|
'''
|
|
11683
11689
|
result = self._values.get("response_inspection")
|
|
@@ -11718,9 +11724,9 @@ class CfnWebACL(
|
|
|
11718
11724
|
This configuration is used in ``ManagedRuleGroupConfig`` .
|
|
11719
11725
|
|
|
11720
11726
|
:param login_path: The path of the login endpoint for your application. For example, for the URL ``https://example.com/web/login`` , you would provide the path ``/web/login`` . The rule group inspects only HTTP ``POST`` requests to your specified login endpoint.
|
|
11721
|
-
:param enable_regex_in_path:
|
|
11727
|
+
:param enable_regex_in_path: Not currently supported by AWS CloudFormation .
|
|
11722
11728
|
:param request_inspection: The criteria for inspecting login requests, used by the ATP rule group to validate credentials usage.
|
|
11723
|
-
:param response_inspection: The criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. The ATP rule group evaluates the responses that your protected resources send back to client login attempts, keeping count of successful and failed attempts
|
|
11729
|
+
:param response_inspection: The criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. .. epigraph:: Response inspection is available only in web ACLs that protect Amazon CloudFront distributions. The ATP rule group evaluates the responses that your protected resources send back to client login attempts, keeping count of successful and failed attempts for each IP address and client session. Using this information, the rule group labels and mitigates requests from client sessions and IP addresses that have had too many failed login attempts in a short amount of time.
|
|
11724
11730
|
|
|
11725
11731
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-awsmanagedrulesatpruleset.html
|
|
11726
11732
|
:exampleMetadata: fixture=_generated
|
|
@@ -11801,7 +11807,8 @@ class CfnWebACL(
|
|
|
11801
11807
|
def enable_regex_in_path(
|
|
11802
11808
|
self,
|
|
11803
11809
|
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
11804
|
-
'''
|
|
11810
|
+
'''Not currently supported by AWS CloudFormation .
|
|
11811
|
+
|
|
11805
11812
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-awsmanagedrulesatpruleset.html#cfn-wafv2-webacl-awsmanagedrulesatpruleset-enableregexinpath
|
|
11806
11813
|
'''
|
|
11807
11814
|
result = self._values.get("enable_regex_in_path")
|
|
@@ -11824,11 +11831,12 @@ class CfnWebACL(
|
|
|
11824
11831
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.ResponseInspectionProperty"]]:
|
|
11825
11832
|
'''The criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates.
|
|
11826
11833
|
|
|
11827
|
-
The ATP rule group evaluates the responses that your protected resources send back to client login attempts, keeping count of successful and failed attempts from each IP address and client session. Using this information, the rule group labels and mitigates requests from client sessions and IP addresses that submit too many failed login attempts in a short amount of time.
|
|
11828
11834
|
.. epigraph::
|
|
11829
11835
|
|
|
11830
11836
|
Response inspection is available only in web ACLs that protect Amazon CloudFront distributions.
|
|
11831
11837
|
|
|
11838
|
+
The ATP rule group evaluates the responses that your protected resources send back to client login attempts, keeping count of successful and failed attempts for each IP address and client session. Using this information, the rule group labels and mitigates requests from client sessions and IP addresses that have had too many failed login attempts in a short amount of time.
|
|
11839
|
+
|
|
11832
11840
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-awsmanagedrulesatpruleset.html#cfn-wafv2-webacl-awsmanagedrulesatpruleset-responseinspection
|
|
11833
11841
|
'''
|
|
11834
11842
|
result = self._values.get("response_inspection")
|
|
@@ -11852,9 +11860,11 @@ class CfnWebACL(
|
|
|
11852
11860
|
)
|
|
11853
11861
|
class AWSManagedRulesBotControlRuleSetProperty:
|
|
11854
11862
|
def __init__(self, *, inspection_level: builtins.str) -> None:
|
|
11855
|
-
'''Details for your use of the Bot Control managed rule group,
|
|
11863
|
+
'''Details for your use of the Bot Control managed rule group, ``AWSManagedRulesBotControlRuleSet`` .
|
|
11864
|
+
|
|
11865
|
+
This configuration is used in ``ManagedRuleGroupConfig`` .
|
|
11856
11866
|
|
|
11857
|
-
:param inspection_level: The inspection level to use for the Bot Control rule group. The common level is the least expensive. The targeted level includes all common level rules and adds rules with more advanced inspection criteria. For details, see `AWS WAF Bot Control rule group <https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-bot.html>`_ .
|
|
11867
|
+
:param inspection_level: The inspection level to use for the Bot Control rule group. The common level is the least expensive. The targeted level includes all common level rules and adds rules with more advanced inspection criteria. For details, see `AWS WAF Bot Control rule group <https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-bot.html>`_ in the *AWS WAF Developer Guide* .
|
|
11858
11868
|
|
|
11859
11869
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-awsmanagedrulesbotcontrolruleset.html
|
|
11860
11870
|
:exampleMetadata: fixture=_generated
|
|
@@ -11880,7 +11890,7 @@ class CfnWebACL(
|
|
|
11880
11890
|
def inspection_level(self) -> builtins.str:
|
|
11881
11891
|
'''The inspection level to use for the Bot Control rule group.
|
|
11882
11892
|
|
|
11883
|
-
The common level is the least expensive. The targeted level includes all common level rules and adds rules with more advanced inspection criteria. For details, see `AWS WAF Bot Control rule group <https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-bot.html>`_ .
|
|
11893
|
+
The common level is the least expensive. The targeted level includes all common level rules and adds rules with more advanced inspection criteria. For details, see `AWS WAF Bot Control rule group <https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-bot.html>`_ in the *AWS WAF Developer Guide* .
|
|
11884
11894
|
|
|
11885
11895
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-awsmanagedrulesbotcontrolruleset.html#cfn-wafv2-webacl-awsmanagedrulesbotcontrolruleset-inspectionlevel
|
|
11886
11896
|
'''
|
|
@@ -13490,9 +13500,11 @@ class CfnWebACL(
|
|
|
13490
13500
|
)
|
|
13491
13501
|
class FieldIdentifierProperty:
|
|
13492
13502
|
def __init__(self, *, identifier: builtins.str) -> None:
|
|
13493
|
-
'''The identifier of
|
|
13503
|
+
'''The identifier of a field in the web request payload that contains customer data.
|
|
13494
13504
|
|
|
13495
|
-
|
|
13505
|
+
This data type is used to specify fields in the ``RequestInspection`` configurations, for the managed rule group configuration ``AWSManagedRulesATPRuleSet`` .
|
|
13506
|
+
|
|
13507
|
+
:param identifier: The name of the field. When the ``PayloadType`` in the request inspection is ``JSON`` , this identifier must be in JSON pointer syntax. For example ``/form/username`` . For information about the JSON Pointer syntax, see the Internet Engineering Task Force (IETF) documentation `JavaScript Object Notation (JSON) Pointer <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6901>`_ . When the ``PayloadType`` is ``FORM_ENCODED`` , use the HTML form names. For example, ``username`` . For more information, see the descriptions for each field type in the request inspection properties.
|
|
13496
13508
|
|
|
13497
13509
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldidentifier.html
|
|
13498
13510
|
:exampleMetadata: fixture=_generated
|
|
@@ -13516,12 +13528,14 @@ class CfnWebACL(
|
|
|
13516
13528
|
|
|
13517
13529
|
@builtins.property
|
|
13518
13530
|
def identifier(self) -> builtins.str:
|
|
13519
|
-
'''The name of the
|
|
13531
|
+
'''The name of the field.
|
|
13520
13532
|
|
|
13521
|
-
When the ``PayloadType`` is ``JSON`` ,
|
|
13533
|
+
When the ``PayloadType`` in the request inspection is ``JSON`` , this identifier must be in JSON pointer syntax. For example ``/form/username`` . For information about the JSON Pointer syntax, see the Internet Engineering Task Force (IETF) documentation `JavaScript Object Notation (JSON) Pointer <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6901>`_ .
|
|
13522
13534
|
|
|
13523
13535
|
When the ``PayloadType`` is ``FORM_ENCODED`` , use the HTML form names. For example, ``username`` .
|
|
13524
13536
|
|
|
13537
|
+
For more information, see the descriptions for each field type in the request inspection properties.
|
|
13538
|
+
|
|
13525
13539
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldidentifier.html#cfn-wafv2-webacl-fieldidentifier-identifier
|
|
13526
13540
|
'''
|
|
13527
13541
|
result = self._values.get("identifier")
|
|
@@ -14898,15 +14912,18 @@ class CfnWebACL(
|
|
|
14898
14912
|
) -> None:
|
|
14899
14913
|
'''Additional information that's used by a managed rule group. Many managed rule groups don't require this.
|
|
14900
14914
|
|
|
14901
|
-
|
|
14915
|
+
The rule groups used for intelligent threat mitigation require additional configuration:
|
|
14916
|
+
|
|
14917
|
+
- Use the ``AWSManagedRulesATPRuleSet`` configuration object to configure the account takeover prevention managed rule group. The configuration includes the sign-in page of your application and the locations in the login request payload of data such as the username and password.
|
|
14918
|
+
- Use the ``AWSManagedRulesBotControlRuleSet`` configuration object to configure the protection level that you want the Bot Control rule group to use.
|
|
14902
14919
|
|
|
14903
|
-
:param aws_managed_rules_acfp_rule_set:
|
|
14920
|
+
:param aws_managed_rules_acfp_rule_set: Not currently supported by AWS CloudFormation .
|
|
14904
14921
|
:param aws_managed_rules_atp_rule_set: Additional configuration for using the account takeover prevention (ATP) managed rule group, ``AWSManagedRulesATPRuleSet`` . Use this to provide login request information to the rule group. For web ACLs that protect CloudFront distributions, use this to also provide the information about how your distribution responds to login requests. This configuration replaces the individual configuration fields in ``ManagedRuleGroupConfig`` and provides additional feature configuration. For information about using the ATP managed rule group, see `AWS WAF Fraud Control account takeover prevention (ATP) rule group <https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-atp.html>`_ and `AWS WAF Fraud Control account takeover prevention (ATP) <https://docs.aws.amazon.com/waf/latest/developerguide/waf-atp.html>`_ in the *AWS WAF Developer Guide* .
|
|
14905
14922
|
:param aws_managed_rules_bot_control_rule_set: Additional configuration for using the Bot Control managed rule group. Use this to specify the inspection level that you want to use. For information about using the Bot Control managed rule group, see `AWS WAF Bot Control rule group <https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-bot.html>`_ and `AWS WAF Bot Control <https://docs.aws.amazon.com/waf/latest/developerguide/waf-bot-control.html>`_ in the *AWS WAF Developer Guide* .
|
|
14906
14923
|
:param login_path: .. epigraph:: Instead of this setting, provide your configuration under ``AWSManagedRulesATPRuleSet`` .
|
|
14907
|
-
:param password_field: .. epigraph:: Instead of this setting, provide your configuration under ``AWSManagedRulesATPRuleSet``
|
|
14908
|
-
:param payload_type: .. epigraph:: Instead of this setting, provide your configuration under ``AWSManagedRulesATPRuleSet``
|
|
14909
|
-
:param username_field: .. epigraph:: Instead of this setting, provide your configuration under ``AWSManagedRulesATPRuleSet``
|
|
14924
|
+
:param password_field: .. epigraph:: Instead of this setting, provide your configuration under the request inspection configuration for ``AWSManagedRulesATPRuleSet`` .
|
|
14925
|
+
:param payload_type: .. epigraph:: Instead of this setting, provide your configuration under the request inspection configuration for ``AWSManagedRulesATPRuleSet`` .
|
|
14926
|
+
:param username_field: .. epigraph:: Instead of this setting, provide your configuration under the request inspection configuration for ``AWSManagedRulesATPRuleSet`` .
|
|
14910
14927
|
|
|
14911
14928
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-managedrulegroupconfig.html
|
|
14912
14929
|
:exampleMetadata: fixture=_generated
|
|
@@ -15042,7 +15059,8 @@ class CfnWebACL(
|
|
|
15042
15059
|
def aws_managed_rules_acfp_rule_set(
|
|
15043
15060
|
self,
|
|
15044
15061
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.AWSManagedRulesACFPRuleSetProperty"]]:
|
|
15045
|
-
'''
|
|
15062
|
+
'''Not currently supported by AWS CloudFormation .
|
|
15063
|
+
|
|
15046
15064
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-managedrulegroupconfig.html#cfn-wafv2-webacl-managedrulegroupconfig-awsmanagedrulesacfpruleset
|
|
15047
15065
|
'''
|
|
15048
15066
|
result = self._values.get("aws_managed_rules_acfp_rule_set")
|
|
@@ -15095,7 +15113,7 @@ class CfnWebACL(
|
|
|
15095
15113
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.FieldIdentifierProperty"]]:
|
|
15096
15114
|
'''.. epigraph::
|
|
15097
15115
|
|
|
15098
|
-
Instead of this setting, provide your configuration under ``AWSManagedRulesATPRuleSet``
|
|
15116
|
+
Instead of this setting, provide your configuration under the request inspection configuration for ``AWSManagedRulesATPRuleSet`` .
|
|
15099
15117
|
|
|
15100
15118
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-managedrulegroupconfig.html#cfn-wafv2-webacl-managedrulegroupconfig-passwordfield
|
|
15101
15119
|
'''
|
|
@@ -15106,7 +15124,7 @@ class CfnWebACL(
|
|
|
15106
15124
|
def payload_type(self) -> typing.Optional[builtins.str]:
|
|
15107
15125
|
'''.. epigraph::
|
|
15108
15126
|
|
|
15109
|
-
Instead of this setting, provide your configuration under ``AWSManagedRulesATPRuleSet``
|
|
15127
|
+
Instead of this setting, provide your configuration under the request inspection configuration for ``AWSManagedRulesATPRuleSet`` .
|
|
15110
15128
|
|
|
15111
15129
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-managedrulegroupconfig.html#cfn-wafv2-webacl-managedrulegroupconfig-payloadtype
|
|
15112
15130
|
'''
|
|
@@ -15119,7 +15137,7 @@ class CfnWebACL(
|
|
|
15119
15137
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.FieldIdentifierProperty"]]:
|
|
15120
15138
|
'''.. epigraph::
|
|
15121
15139
|
|
|
15122
|
-
Instead of this setting, provide your configuration under ``AWSManagedRulesATPRuleSet``
|
|
15140
|
+
Instead of this setting, provide your configuration under the request inspection configuration for ``AWSManagedRulesATPRuleSet`` .
|
|
15123
15141
|
|
|
15124
15142
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-managedrulegroupconfig.html#cfn-wafv2-webacl-managedrulegroupconfig-usernamefield
|
|
15125
15143
|
'''
|
|
@@ -15164,14 +15182,17 @@ class CfnWebACL(
|
|
|
15164
15182
|
) -> None:
|
|
15165
15183
|
'''A rule statement used to run the rules that are defined in a managed rule group.
|
|
15166
15184
|
|
|
15167
|
-
To use this, provide the vendor name and the name of the rule group in this statement.
|
|
15185
|
+
To use this, provide the vendor name and the name of the rule group in this statement. You can retrieve the required names through the API call ``ListAvailableManagedRuleGroups`` .
|
|
15168
15186
|
|
|
15169
15187
|
You cannot nest a ``ManagedRuleGroupStatement`` , for example for use inside a ``NotStatement`` or ``OrStatement`` . It can only be referenced as a top-level statement within a rule.
|
|
15188
|
+
.. epigraph::
|
|
15189
|
+
|
|
15190
|
+
You are charged additional fees when you use the AWS WAF Bot Control managed rule group ``AWSManagedRulesBotControlRuleSet`` or the AWS WAF Fraud Control account takeover prevention (ATP) managed rule group ``AWSManagedRulesATPRuleSet`` . For more information, see `AWS WAF Pricing <https://docs.aws.amazon.com/waf/pricing/>`_ .
|
|
15170
15191
|
|
|
15171
15192
|
:param name: The name of the managed rule group. You use this, along with the vendor name, to identify the rule group.
|
|
15172
15193
|
:param vendor_name: The name of the managed rule group vendor. You use this, along with the rule group name, to identify a rule group.
|
|
15173
15194
|
:param excluded_rules: Rules in the referenced rule group whose actions are set to ``Count`` . .. epigraph:: Instead of this option, use ``RuleActionOverrides`` . It accepts any valid action setting, including ``Count`` .
|
|
15174
|
-
:param managed_rule_group_configs: Additional information that's used by a managed rule group. Many managed rule groups don't require this. Use the ``AWSManagedRulesATPRuleSet`` configuration object
|
|
15195
|
+
:param managed_rule_group_configs: Additional information that's used by a managed rule group. Many managed rule groups don't require this. The rule groups used for intelligent threat mitigation require additional configuration: - Use the ``AWSManagedRulesATPRuleSet`` configuration object to configure the account takeover prevention managed rule group. The configuration includes the sign-in page of your application and the locations in the login request payload of data such as the username and password. - Use the ``AWSManagedRulesBotControlRuleSet`` configuration object to configure the protection level that you want the Bot Control rule group to use.
|
|
15175
15196
|
:param rule_action_overrides: Action settings to use in the place of the rule actions that are configured inside the rule group. You specify one override for each rule whose action you want to change. You can use overrides for testing, for example you can override all of rule actions to ``Count`` and then monitor the resulting count metrics to understand how the rule group would handle your web traffic. You can also permanently override some or all actions, to modify how the rule group manages your web traffic.
|
|
15176
15197
|
:param scope_down_statement: An optional nested statement that narrows the scope of the web requests that are evaluated by the managed rule group. Requests are only evaluated by the rule group if they match the scope-down statement. You can use any nestable ``Statement`` in the scope-down statement, and you can nest statements at any level, the same as you can for a rule statement.
|
|
15177
15198
|
:param version: The version of the managed rule group to use. If you specify this, the version setting is fixed until you change it. If you don't specify this, AWS WAF uses the vendor's default version, and then keeps the version at the vendor's default when the vendor updates the managed rule group settings.
|
|
@@ -15252,9 +15273,10 @@ class CfnWebACL(
|
|
|
15252
15273
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWebACL.ManagedRuleGroupConfigProperty"]]]]:
|
|
15253
15274
|
'''Additional information that's used by a managed rule group. Many managed rule groups don't require this.
|
|
15254
15275
|
|
|
15255
|
-
|
|
15276
|
+
The rule groups used for intelligent threat mitigation require additional configuration:
|
|
15256
15277
|
|
|
15257
|
-
Use the ``
|
|
15278
|
+
- Use the ``AWSManagedRulesATPRuleSet`` configuration object to configure the account takeover prevention managed rule group. The configuration includes the sign-in page of your application and the locations in the login request payload of data such as the username and password.
|
|
15279
|
+
- Use the ``AWSManagedRulesBotControlRuleSet`` configuration object to configure the protection level that you want the Bot Control rule group to use.
|
|
15258
15280
|
|
|
15259
15281
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-managedrulegroupstatement.html#cfn-wafv2-webacl-managedrulegroupstatement-managedrulegroupconfigs
|
|
15260
15282
|
'''
|
|
@@ -16776,13 +16798,14 @@ class CfnWebACL(
|
|
|
16776
16798
|
phone_number_fields: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.FieldIdentifierProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
16777
16799
|
username_field: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.FieldIdentifierProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
16778
16800
|
) -> None:
|
|
16779
|
-
'''
|
|
16780
|
-
|
|
16781
|
-
:param
|
|
16782
|
-
:param
|
|
16783
|
-
:param
|
|
16784
|
-
:param
|
|
16785
|
-
:param
|
|
16801
|
+
'''Not currently supported by AWS CloudFormation .
|
|
16802
|
+
|
|
16803
|
+
:param payload_type: Not currently supported by AWS CloudFormation .
|
|
16804
|
+
:param address_fields: Not currently supported by AWS CloudFormation .
|
|
16805
|
+
:param email_field: Not currently supported by AWS CloudFormation .
|
|
16806
|
+
:param password_field: Not currently supported by AWS CloudFormation .
|
|
16807
|
+
:param phone_number_fields: Not currently supported by AWS CloudFormation .
|
|
16808
|
+
:param username_field: Not currently supported by AWS CloudFormation .
|
|
16786
16809
|
|
|
16787
16810
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-requestinspectionacfp.html
|
|
16788
16811
|
:exampleMetadata: fixture=_generated
|
|
@@ -16838,7 +16861,8 @@ class CfnWebACL(
|
|
|
16838
16861
|
|
|
16839
16862
|
@builtins.property
|
|
16840
16863
|
def payload_type(self) -> builtins.str:
|
|
16841
|
-
'''
|
|
16864
|
+
'''Not currently supported by AWS CloudFormation .
|
|
16865
|
+
|
|
16842
16866
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-requestinspectionacfp.html#cfn-wafv2-webacl-requestinspectionacfp-payloadtype
|
|
16843
16867
|
'''
|
|
16844
16868
|
result = self._values.get("payload_type")
|
|
@@ -16849,7 +16873,8 @@ class CfnWebACL(
|
|
|
16849
16873
|
def address_fields(
|
|
16850
16874
|
self,
|
|
16851
16875
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWebACL.FieldIdentifierProperty"]]]]:
|
|
16852
|
-
'''
|
|
16876
|
+
'''Not currently supported by AWS CloudFormation .
|
|
16877
|
+
|
|
16853
16878
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-requestinspectionacfp.html#cfn-wafv2-webacl-requestinspectionacfp-addressfields
|
|
16854
16879
|
'''
|
|
16855
16880
|
result = self._values.get("address_fields")
|
|
@@ -16859,7 +16884,8 @@ class CfnWebACL(
|
|
|
16859
16884
|
def email_field(
|
|
16860
16885
|
self,
|
|
16861
16886
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.FieldIdentifierProperty"]]:
|
|
16862
|
-
'''
|
|
16887
|
+
'''Not currently supported by AWS CloudFormation .
|
|
16888
|
+
|
|
16863
16889
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-requestinspectionacfp.html#cfn-wafv2-webacl-requestinspectionacfp-emailfield
|
|
16864
16890
|
'''
|
|
16865
16891
|
result = self._values.get("email_field")
|
|
@@ -16869,7 +16895,8 @@ class CfnWebACL(
|
|
|
16869
16895
|
def password_field(
|
|
16870
16896
|
self,
|
|
16871
16897
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.FieldIdentifierProperty"]]:
|
|
16872
|
-
'''
|
|
16898
|
+
'''Not currently supported by AWS CloudFormation .
|
|
16899
|
+
|
|
16873
16900
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-requestinspectionacfp.html#cfn-wafv2-webacl-requestinspectionacfp-passwordfield
|
|
16874
16901
|
'''
|
|
16875
16902
|
result = self._values.get("password_field")
|
|
@@ -16879,7 +16906,8 @@ class CfnWebACL(
|
|
|
16879
16906
|
def phone_number_fields(
|
|
16880
16907
|
self,
|
|
16881
16908
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWebACL.FieldIdentifierProperty"]]]]:
|
|
16882
|
-
'''
|
|
16909
|
+
'''Not currently supported by AWS CloudFormation .
|
|
16910
|
+
|
|
16883
16911
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-requestinspectionacfp.html#cfn-wafv2-webacl-requestinspectionacfp-phonenumberfields
|
|
16884
16912
|
'''
|
|
16885
16913
|
result = self._values.get("phone_number_fields")
|
|
@@ -16889,7 +16917,8 @@ class CfnWebACL(
|
|
|
16889
16917
|
def username_field(
|
|
16890
16918
|
self,
|
|
16891
16919
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.FieldIdentifierProperty"]]:
|
|
16892
|
-
'''
|
|
16920
|
+
'''Not currently supported by AWS CloudFormation .
|
|
16921
|
+
|
|
16893
16922
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-requestinspectionacfp.html#cfn-wafv2-webacl-requestinspectionacfp-usernamefield
|
|
16894
16923
|
'''
|
|
16895
16924
|
result = self._values.get("username_field")
|
|
@@ -17050,8 +17079,8 @@ class CfnWebACL(
|
|
|
17050
17079
|
|
|
17051
17080
|
Response inspection is available only in web ACLs that protect Amazon CloudFront distributions.
|
|
17052
17081
|
|
|
17053
|
-
:param failure_strings: Strings in the body of the response that indicate a failed login attempt. To be counted as a
|
|
17054
|
-
:param success_strings: Strings in the body of the response that indicate a successful login attempt. To be counted as a
|
|
17082
|
+
:param failure_strings: Strings in the body of the response that indicate a failed login attempt. To be counted as a failure, the string can be anywhere in the body and must be an exact match, including case. Each string must be unique among the success and failure strings. JSON example: ``"FailureStrings": [ "Request failed" ]``
|
|
17083
|
+
:param success_strings: Strings in the body of the response that indicate a successful login attempt. To be counted as a success, the string can be anywhere in the body and must be an exact match, including case. Each string must be unique among the success and failure strings. JSON example: ``"SuccessStrings": [ "Login successful" ]``
|
|
17055
17084
|
|
|
17056
17085
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspectionbodycontains.html
|
|
17057
17086
|
:exampleMetadata: fixture=_generated
|
|
@@ -17080,9 +17109,9 @@ class CfnWebACL(
|
|
|
17080
17109
|
def failure_strings(self) -> typing.List[builtins.str]:
|
|
17081
17110
|
'''Strings in the body of the response that indicate a failed login attempt.
|
|
17082
17111
|
|
|
17083
|
-
To be counted as a
|
|
17112
|
+
To be counted as a failure, the string can be anywhere in the body and must be an exact match, including case. Each string must be unique among the success and failure strings.
|
|
17084
17113
|
|
|
17085
|
-
JSON example: ``"FailureStrings": [ "
|
|
17114
|
+
JSON example: ``"FailureStrings": [ "Request failed" ]``
|
|
17086
17115
|
|
|
17087
17116
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspectionbodycontains.html#cfn-wafv2-webacl-responseinspectionbodycontains-failurestrings
|
|
17088
17117
|
'''
|
|
@@ -17094,9 +17123,9 @@ class CfnWebACL(
|
|
|
17094
17123
|
def success_strings(self) -> typing.List[builtins.str]:
|
|
17095
17124
|
'''Strings in the body of the response that indicate a successful login attempt.
|
|
17096
17125
|
|
|
17097
|
-
To be counted as a
|
|
17126
|
+
To be counted as a success, the string can be anywhere in the body and must be an exact match, including case. Each string must be unique among the success and failure strings.
|
|
17098
17127
|
|
|
17099
|
-
JSON example: ``"SuccessStrings": [ "Login successful"
|
|
17128
|
+
JSON example: ``"SuccessStrings": [ "Login successful" ]``
|
|
17100
17129
|
|
|
17101
17130
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspectionbodycontains.html#cfn-wafv2-webacl-responseinspectionbodycontains-successstrings
|
|
17102
17131
|
'''
|
|
@@ -17138,9 +17167,9 @@ class CfnWebACL(
|
|
|
17138
17167
|
|
|
17139
17168
|
Response inspection is available only in web ACLs that protect Amazon CloudFront distributions.
|
|
17140
17169
|
|
|
17141
|
-
:param failure_values: Values in the response header with the specified name that indicate a failed login attempt. To be counted as a
|
|
17142
|
-
:param name: The name of the header to match against. The name must be an exact match, including case. JSON example: ``"Name": [ "
|
|
17143
|
-
:param success_values: Values in the response header with the specified name that indicate a successful login attempt. To be counted as a
|
|
17170
|
+
:param failure_values: Values in the response header with the specified name that indicate a failed login attempt. To be counted as a failure, the value must be an exact match, including case. Each value must be unique among the success and failure values. JSON example: ``"FailureValues": [ "LoginFailed", "Failed login" ]``
|
|
17171
|
+
:param name: The name of the header to match against. The name must be an exact match, including case. JSON example: ``"Name": [ "RequestResult" ]``
|
|
17172
|
+
:param success_values: Values in the response header with the specified name that indicate a successful login attempt. To be counted as a success, the value must be an exact match, including case. Each value must be unique among the success and failure values. JSON example: ``"SuccessValues": [ "LoginPassed", "Successful login" ]``
|
|
17144
17173
|
|
|
17145
17174
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspectionheader.html
|
|
17146
17175
|
:exampleMetadata: fixture=_generated
|
|
@@ -17172,7 +17201,7 @@ class CfnWebACL(
|
|
|
17172
17201
|
def failure_values(self) -> typing.List[builtins.str]:
|
|
17173
17202
|
'''Values in the response header with the specified name that indicate a failed login attempt.
|
|
17174
17203
|
|
|
17175
|
-
To be counted as a
|
|
17204
|
+
To be counted as a failure, the value must be an exact match, including case. Each value must be unique among the success and failure values.
|
|
17176
17205
|
|
|
17177
17206
|
JSON example: ``"FailureValues": [ "LoginFailed", "Failed login" ]``
|
|
17178
17207
|
|
|
@@ -17186,7 +17215,7 @@ class CfnWebACL(
|
|
|
17186
17215
|
def name(self) -> builtins.str:
|
|
17187
17216
|
'''The name of the header to match against. The name must be an exact match, including case.
|
|
17188
17217
|
|
|
17189
|
-
JSON example: ``"Name": [ "
|
|
17218
|
+
JSON example: ``"Name": [ "RequestResult" ]``
|
|
17190
17219
|
|
|
17191
17220
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspectionheader.html#cfn-wafv2-webacl-responseinspectionheader-name
|
|
17192
17221
|
'''
|
|
@@ -17198,7 +17227,7 @@ class CfnWebACL(
|
|
|
17198
17227
|
def success_values(self) -> typing.List[builtins.str]:
|
|
17199
17228
|
'''Values in the response header with the specified name that indicate a successful login attempt.
|
|
17200
17229
|
|
|
17201
|
-
To be counted as a
|
|
17230
|
+
To be counted as a success, the value must be an exact match, including case. Each value must be unique among the success and failure values.
|
|
17202
17231
|
|
|
17203
17232
|
JSON example: ``"SuccessValues": [ "LoginPassed", "Successful login" ]``
|
|
17204
17233
|
|
|
@@ -17243,9 +17272,9 @@ class CfnWebACL(
|
|
|
17243
17272
|
|
|
17244
17273
|
Response inspection is available only in web ACLs that protect Amazon CloudFront distributions.
|
|
17245
17274
|
|
|
17246
|
-
:param failure_values: Values for the specified identifier in the response JSON that indicate a failed login attempt. To be counted as a
|
|
17275
|
+
:param failure_values: Values for the specified identifier in the response JSON that indicate a failed login attempt. To be counted as a failure, the value must be an exact match, including case. Each value must be unique among the success and failure values. JSON example: ``"FailureValues": [ "False", "Failed" ]``
|
|
17247
17276
|
:param identifier: The identifier for the value to match against in the JSON. The identifier must be an exact match, including case. JSON example: ``"Identifier": [ "/login/success" ]``
|
|
17248
|
-
:param success_values: Values for the specified identifier in the response JSON that indicate a successful login attempt. To be counted as a
|
|
17277
|
+
:param success_values: Values for the specified identifier in the response JSON that indicate a successful login attempt. To be counted as a success, the value must be an exact match, including case. Each value must be unique among the success and failure values. JSON example: ``"SuccessValues": [ "True", "Succeeded" ]``
|
|
17249
17278
|
|
|
17250
17279
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspectionjson.html
|
|
17251
17280
|
:exampleMetadata: fixture=_generated
|
|
@@ -17277,7 +17306,7 @@ class CfnWebACL(
|
|
|
17277
17306
|
def failure_values(self) -> typing.List[builtins.str]:
|
|
17278
17307
|
'''Values for the specified identifier in the response JSON that indicate a failed login attempt.
|
|
17279
17308
|
|
|
17280
|
-
To be counted as a
|
|
17309
|
+
To be counted as a failure, the value must be an exact match, including case. Each value must be unique among the success and failure values.
|
|
17281
17310
|
|
|
17282
17311
|
JSON example: ``"FailureValues": [ "False", "Failed" ]``
|
|
17283
17312
|
|
|
@@ -17305,7 +17334,7 @@ class CfnWebACL(
|
|
|
17305
17334
|
def success_values(self) -> typing.List[builtins.str]:
|
|
17306
17335
|
'''Values for the specified identifier in the response JSON that indicate a successful login attempt.
|
|
17307
17336
|
|
|
17308
|
-
To be counted as a
|
|
17337
|
+
To be counted as a success, the value must be an exact match, including case. Each value must be unique among the success and failure values.
|
|
17309
17338
|
|
|
17310
17339
|
JSON example: ``"SuccessValues": [ "True", "Succeeded" ]``
|
|
17311
17340
|
|
|
@@ -17345,21 +17374,22 @@ class CfnWebACL(
|
|
|
17345
17374
|
json: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.ResponseInspectionJsonProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
17346
17375
|
status_code: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.ResponseInspectionStatusCodeProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
17347
17376
|
) -> None:
|
|
17348
|
-
'''The criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates.
|
|
17377
|
+
'''The criteria for inspecting responses to login requests, used by the ATP rule group to track login success and failure rates.
|
|
17349
17378
|
|
|
17350
|
-
The ATP rule group evaluates the responses that your protected resources send back to client login attempts, keeping count of successful and failed attempts from each IP address and client session. Using this information, the rule group labels and mitigates requests from client sessions and IP addresses that submit too many failed login attempts in a short amount of time.
|
|
17351
17379
|
.. epigraph::
|
|
17352
17380
|
|
|
17353
17381
|
Response inspection is available only in web ACLs that protect Amazon CloudFront distributions.
|
|
17354
17382
|
|
|
17383
|
+
The rule group evaluates the responses that your protected resources send back to client login attempts, keeping count of successful and failed attempts from each IP address and client session. Using this information, the rule group labels and mitigates requests from client sessions and IP addresses with too much suspicious activity in a short amount of time.
|
|
17384
|
+
|
|
17355
17385
|
This is part of the ``AWSManagedRulesATPRuleSet`` configuration in ``ManagedRuleGroupConfig`` .
|
|
17356
17386
|
|
|
17357
|
-
Enable
|
|
17387
|
+
Enable response inspection by configuring exactly one component of the response to inspect, for example, ``Header`` or ``StatusCode`` . You can't configure more than one component for inspection. If you don't configure any of the response inspection options, response inspection is disabled.
|
|
17358
17388
|
|
|
17359
|
-
:param body_contains: Configures inspection of the response body. AWS WAF can inspect the first 65,536 bytes (64 KB) of the response body.
|
|
17360
|
-
:param header: Configures inspection of the response header.
|
|
17361
|
-
:param json: Configures inspection of the response JSON. AWS WAF can inspect the first 65,536 bytes (64 KB) of the response JSON.
|
|
17362
|
-
:param status_code: Configures inspection of the response status code.
|
|
17389
|
+
:param body_contains: Configures inspection of the response body for success and failure indicators. AWS WAF can inspect the first 65,536 bytes (64 KB) of the response body.
|
|
17390
|
+
:param header: Configures inspection of the response header for success and failure indicators.
|
|
17391
|
+
:param json: Configures inspection of the response JSON for success and failure indicators. AWS WAF can inspect the first 65,536 bytes (64 KB) of the response JSON.
|
|
17392
|
+
:param status_code: Configures inspection of the response status code for success and failure indicators.
|
|
17363
17393
|
|
|
17364
17394
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspection.html
|
|
17365
17395
|
:exampleMetadata: fixture=_generated
|
|
@@ -17411,7 +17441,7 @@ class CfnWebACL(
|
|
|
17411
17441
|
def body_contains(
|
|
17412
17442
|
self,
|
|
17413
17443
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.ResponseInspectionBodyContainsProperty"]]:
|
|
17414
|
-
'''Configures inspection of the response body.
|
|
17444
|
+
'''Configures inspection of the response body for success and failure indicators.
|
|
17415
17445
|
|
|
17416
17446
|
AWS WAF can inspect the first 65,536 bytes (64 KB) of the response body.
|
|
17417
17447
|
|
|
@@ -17424,7 +17454,7 @@ class CfnWebACL(
|
|
|
17424
17454
|
def header(
|
|
17425
17455
|
self,
|
|
17426
17456
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.ResponseInspectionHeaderProperty"]]:
|
|
17427
|
-
'''Configures inspection of the response header.
|
|
17457
|
+
'''Configures inspection of the response header for success and failure indicators.
|
|
17428
17458
|
|
|
17429
17459
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspection.html#cfn-wafv2-webacl-responseinspection-header
|
|
17430
17460
|
'''
|
|
@@ -17435,7 +17465,7 @@ class CfnWebACL(
|
|
|
17435
17465
|
def json(
|
|
17436
17466
|
self,
|
|
17437
17467
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.ResponseInspectionJsonProperty"]]:
|
|
17438
|
-
'''Configures inspection of the response JSON.
|
|
17468
|
+
'''Configures inspection of the response JSON for success and failure indicators.
|
|
17439
17469
|
|
|
17440
17470
|
AWS WAF can inspect the first 65,536 bytes (64 KB) of the response JSON.
|
|
17441
17471
|
|
|
@@ -17448,7 +17478,7 @@ class CfnWebACL(
|
|
|
17448
17478
|
def status_code(
|
|
17449
17479
|
self,
|
|
17450
17480
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.ResponseInspectionStatusCodeProperty"]]:
|
|
17451
|
-
'''Configures inspection of the response status code.
|
|
17481
|
+
'''Configures inspection of the response status code for success and failure indicators.
|
|
17452
17482
|
|
|
17453
17483
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspection.html#cfn-wafv2-webacl-responseinspection-statuscode
|
|
17454
17484
|
'''
|
|
@@ -17481,14 +17511,15 @@ class CfnWebACL(
|
|
|
17481
17511
|
failure_codes: typing.Union[typing.Sequence[jsii.Number], _IResolvable_da3f097b],
|
|
17482
17512
|
success_codes: typing.Union[typing.Sequence[jsii.Number], _IResolvable_da3f097b],
|
|
17483
17513
|
) -> None:
|
|
17484
|
-
'''Configures inspection of the response status code
|
|
17514
|
+
'''Configures inspection of the response status code for success and failure indicators.
|
|
17485
17515
|
|
|
17516
|
+
This is part of the ``ResponseInspection`` configuration for ``AWSManagedRulesATPRuleSet`` .
|
|
17486
17517
|
.. epigraph::
|
|
17487
17518
|
|
|
17488
17519
|
Response inspection is available only in web ACLs that protect Amazon CloudFront distributions.
|
|
17489
17520
|
|
|
17490
|
-
:param failure_codes: Status codes in the response that indicate a failed login attempt. To be counted as a
|
|
17491
|
-
:param success_codes: Status codes in the response that indicate a successful login attempt. To be counted as a
|
|
17521
|
+
:param failure_codes: Status codes in the response that indicate a failed login or account creation attempt. To be counted as a failure, the response status code must match one of these. Each code must be unique among the success and failure status codes. JSON example: ``"FailureCodes": [ 400, 404 ]``
|
|
17522
|
+
:param success_codes: Status codes in the response that indicate a successful login or account creation attempt. To be counted as a success, the response status code must match one of these. Each code must be unique among the success and failure status codes. JSON example: ``"SuccessCodes": [ 200, 201 ]``
|
|
17492
17523
|
|
|
17493
17524
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-responseinspectionstatuscode.html
|
|
17494
17525
|
:exampleMetadata: fixture=_generated
|
|
@@ -17517,9 +17548,9 @@ class CfnWebACL(
|
|
|
17517
17548
|
def failure_codes(
|
|
17518
17549
|
self,
|
|
17519
17550
|
) -> typing.Union[typing.List[jsii.Number], _IResolvable_da3f097b]:
|
|
17520
|
-
'''Status codes in the response that indicate a failed login attempt.
|
|
17551
|
+
'''Status codes in the response that indicate a failed login or account creation attempt.
|
|
17521
17552
|
|
|
17522
|
-
To be counted as a
|
|
17553
|
+
To be counted as a failure, the response status code must match one of these. Each code must be unique among the success and failure status codes.
|
|
17523
17554
|
|
|
17524
17555
|
JSON example: ``"FailureCodes": [ 400, 404 ]``
|
|
17525
17556
|
|
|
@@ -17533,9 +17564,9 @@ class CfnWebACL(
|
|
|
17533
17564
|
def success_codes(
|
|
17534
17565
|
self,
|
|
17535
17566
|
) -> typing.Union[typing.List[jsii.Number], _IResolvable_da3f097b]:
|
|
17536
|
-
'''Status codes in the response that indicate a successful login attempt.
|
|
17567
|
+
'''Status codes in the response that indicate a successful login or account creation attempt.
|
|
17537
17568
|
|
|
17538
|
-
To be counted as a
|
|
17569
|
+
To be counted as a success, the response status code must match one of these. Each code must be unique among the success and failure status codes.
|
|
17539
17570
|
|
|
17540
17571
|
JSON example: ``"SuccessCodes": [ 200, 201 ]``
|
|
17541
17572
|
|
|
@@ -18740,7 +18771,7 @@ class CfnWebACL(
|
|
|
18740
18771
|
:param geo_match_statement: A rule statement that labels web requests by country and region and that matches against web requests based on country code. A geo match rule labels every request that it inspects regardless of whether it finds a match. - To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the ``CountryCodes`` array. - Otherwise, configure your geo match rule with Count action so that it only labels requests. Then, add one or more label match rules to run after the geo match rule and configure them to match against the geographic labels and handle the requests as needed. AWS WAF labels requests using the alpha-2 country and region codes from the International Organization for Standardization (ISO) 3166 standard. AWS WAF determines the codes using either the IP address in the web request origin or, if you specify it, the address in the geo match ``ForwardedIPConfig`` . If you use the web request origin, the label formats are ``awswaf:clientip:geo:region:<ISO country code>-<ISO region code>`` and ``awswaf:clientip:geo:country:<ISO country code>`` . If you use a forwarded IP address, the label formats are ``awswaf:forwardedip:geo:region:<ISO country code>-<ISO region code>`` and ``awswaf:forwardedip:geo:country:<ISO country code>`` . For additional details, see `Geographic match rule statement <https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-statement-type-geo-match.html>`_ in the `AWS WAF Developer Guide <https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html>`_ .
|
|
18741
18772
|
:param ip_set_reference_statement: A rule statement used to detect web requests coming from particular IP addresses or address ranges. To use this, create an ``IPSet`` that specifies the addresses you want to detect, then use the ARN of that set in this statement. Each IP set rule statement references an IP set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
|
|
18742
18773
|
:param label_match_statement: A rule statement to match against labels that have been added to the web request by rules that have already run in the web ACL. The label match statement provides the label or namespace string to search for. The label string can represent a part or all of the fully qualified label name that had been added to the web request. Fully qualified labels have a prefix, optional namespaces, and label name. The prefix identifies the rule group or web ACL context of the rule that added the label. If you do not provide the fully qualified name in your label match string, AWS WAF performs the search for labels that were added in the same context as the label match statement.
|
|
18743
|
-
:param managed_rule_group_statement: A rule statement used to run the rules that are defined in a managed rule group. To use this, provide the vendor name and the name of the rule group in this statement. You cannot nest a ``ManagedRuleGroupStatement`` , for example for use inside a ``NotStatement`` or ``OrStatement`` . It can only be referenced as a top-level statement within a rule.
|
|
18774
|
+
:param managed_rule_group_statement: A rule statement used to run the rules that are defined in a managed rule group. To use this, provide the vendor name and the name of the rule group in this statement. You can retrieve the required names through the API call ``ListAvailableManagedRuleGroups`` . You cannot nest a ``ManagedRuleGroupStatement`` , for example for use inside a ``NotStatement`` or ``OrStatement`` . It can only be referenced as a top-level statement within a rule. .. epigraph:: You are charged additional fees when you use the AWS WAF Bot Control managed rule group ``AWSManagedRulesBotControlRuleSet`` or the AWS WAF Fraud Control account takeover prevention (ATP) managed rule group ``AWSManagedRulesATPRuleSet`` . For more information, see `AWS WAF Pricing <https://docs.aws.amazon.com/waf/pricing/>`_ .
|
|
18744
18775
|
:param not_statement: A logical rule statement used to negate the results of another rule statement. You provide one ``Statement`` within the ``NotStatement`` .
|
|
18745
18776
|
:param or_statement: A logical rule statement used to combine other rule statements with OR logic. You provide more than one ``Statement`` within the ``OrStatement`` .
|
|
18746
18777
|
:param rate_based_statement: A rate-based rule counts incoming requests and rate limits requests when they are coming at too fast a rate. The rule categorizes requests according to your aggregation criteria, collects them into aggregation instances, and counts and rate limits the requests for each instance. You can specify individual aggregation keys, like IP address or HTTP method. You can also specify aggregation key combinations, like IP address and HTTP method, or HTTP method, query argument, and cookie. Each unique set of values for the aggregation keys that you specify is a separate aggregation instance, with the value from each key contributing to the aggregation instance definition. For example, assume the rule evaluates web requests with the following IP address and HTTP method values: - IP address 10.1.1.1, HTTP method POST - IP address 10.1.1.1, HTTP method GET - IP address 127.0.0.0, HTTP method POST - IP address 10.1.1.1, HTTP method GET The rule would create different aggregation instances according to your aggregation criteria, for example: - If the aggregation criteria is just the IP address, then each individual address is an aggregation instance, and AWS WAF counts requests separately for each. The aggregation instances and request counts for our example would be the following: - IP address 10.1.1.1: count 3 - IP address 127.0.0.0: count 1 - If the aggregation criteria is HTTP method, then each individual HTTP method is an aggregation instance. The aggregation instances and request counts for our example would be the following: - HTTP method POST: count 2 - HTTP method GET: count 2 - If the aggregation criteria is IP address and HTTP method, then each IP address and each HTTP method would contribute to the combined aggregation instance. The aggregation instances and request counts for our example would be the following: - IP address 10.1.1.1, HTTP method POST: count 1 - IP address 10.1.1.1, HTTP method GET: count 2 - IP address 127.0.0.0, HTTP method POST: count 1 For any n-tuple of aggregation keys, each unique combination of values for the keys defines a separate aggregation instance, which AWS WAF counts and rate-limits individually. You can optionally nest another statement inside the rate-based statement, to narrow the scope of the rule so that it only counts and rate limits requests that match the nested statement. You can use this nested scope-down statement in conjunction with your aggregation key specifications or you can just count and rate limit all requests that match the scope-down statement, without additional aggregation. When you choose to just manage all requests that match a scope-down statement, the aggregation instance is singular for the rule. You cannot nest a ``RateBasedStatement`` inside another statement, for example inside a ``NotStatement`` or ``OrStatement`` . You can define a ``RateBasedStatement`` inside a web ACL and inside a rule group. For additional information about the options, see `Rate limiting web requests using rate-based rules <https://docs.aws.amazon.com/waf/latest/developerguide/waf-rate-based-rules.html>`_ in the *AWS WAF Developer Guide* . If you only aggregate on the individual IP address or forwarded IP address, you can retrieve the list of IP addresses that AWS WAF is currently rate limiting for a rule through the API call ``GetRateBasedStatementManagedKeys`` . This option is not available for other aggregation configurations. AWS WAF tracks and manages web requests separately for each instance of a rate-based rule that you use. For example, if you provide the same rate-based rule settings in two web ACLs, each of the two rule statements represents a separate instance of the rate-based rule and gets its own tracking and management by AWS WAF . If you define a rate-based rule inside a rule group, and then use that rule group in multiple places, each use creates a separate instance of the rate-based rule that gets its own tracking and management by AWS WAF .
|
|
@@ -18891,9 +18922,12 @@ class CfnWebACL(
|
|
|
18891
18922
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.ManagedRuleGroupStatementProperty"]]:
|
|
18892
18923
|
'''A rule statement used to run the rules that are defined in a managed rule group.
|
|
18893
18924
|
|
|
18894
|
-
To use this, provide the vendor name and the name of the rule group in this statement.
|
|
18925
|
+
To use this, provide the vendor name and the name of the rule group in this statement. You can retrieve the required names through the API call ``ListAvailableManagedRuleGroups`` .
|
|
18895
18926
|
|
|
18896
18927
|
You cannot nest a ``ManagedRuleGroupStatement`` , for example for use inside a ``NotStatement`` or ``OrStatement`` . It can only be referenced as a top-level statement within a rule.
|
|
18928
|
+
.. epigraph::
|
|
18929
|
+
|
|
18930
|
+
You are charged additional fees when you use the AWS WAF Bot Control managed rule group ``AWSManagedRulesBotControlRuleSet`` or the AWS WAF Fraud Control account takeover prevention (ATP) managed rule group ``AWSManagedRulesATPRuleSet`` . For more information, see `AWS WAF Pricing <https://docs.aws.amazon.com/waf/pricing/>`_ .
|
|
18897
18931
|
|
|
18898
18932
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-statement.html#cfn-wafv2-webacl-statement-managedrulegroupstatement
|
|
18899
18933
|
'''
|