aws-sdk-wafv2 1.26.0 → 1.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -285,6 +285,15 @@ module Aws::WAFV2
285
285
  # ** Please note ** When response stubbing is enabled, no HTTP
286
286
  # requests are made, and retries are disabled.
287
287
  #
288
+ # @option options [Boolean] :use_dualstack_endpoint
289
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
290
+ # will be used if available.
291
+ #
292
+ # @option options [Boolean] :use_fips_endpoint
293
+ # When set to `true`, fips compatible endpoints will be used if available.
294
+ # When a `fips` region is used, the region is normalized and this config
295
+ # is set to `true`.
296
+ #
288
297
  # @option options [Boolean] :validate_params (true)
289
298
  # When `true`, request parameters are validated before
290
299
  # sending the request.
@@ -683,6 +692,42 @@ module Aws::WAFV2
683
692
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
684
693
  # key: "LabelMatchKey", # required
685
694
  # },
695
+ # regex_match_statement: {
696
+ # regex_string: "RegexPatternString", # required
697
+ # field_to_match: { # required
698
+ # single_header: {
699
+ # name: "FieldToMatchData", # required
700
+ # },
701
+ # single_query_argument: {
702
+ # name: "FieldToMatchData", # required
703
+ # },
704
+ # all_query_arguments: {
705
+ # },
706
+ # uri_path: {
707
+ # },
708
+ # query_string: {
709
+ # },
710
+ # body: {
711
+ # },
712
+ # method: {
713
+ # },
714
+ # json_body: {
715
+ # match_pattern: { # required
716
+ # all: {
717
+ # },
718
+ # included_paths: ["JsonPointerPath"],
719
+ # },
720
+ # match_scope: "ALL", # required, accepts ALL, KEY, VALUE
721
+ # invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
722
+ # },
723
+ # },
724
+ # text_transformations: [ # required
725
+ # {
726
+ # priority: 1, # required
727
+ # type: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE, BASE64_DECODE, HEX_DECODE, MD5, REPLACE_COMMENTS, ESCAPE_SEQ_DECODE, SQL_HEX_DECODE, CSS_DECODE, JS_DECODE, NORMALIZE_PATH, NORMALIZE_PATH_WIN, REMOVE_NULLS, REPLACE_NULLS, BASE64_DECODE_EXT, URL_DECODE_UNI, UTF8_TO_UNICODE
728
+ # },
729
+ # ],
730
+ # },
686
731
  # },
687
732
  # action: {
688
733
  # block: {
@@ -717,6 +762,16 @@ module Aws::WAFV2
717
762
  # ],
718
763
  # },
719
764
  # },
765
+ # captcha: {
766
+ # custom_request_handling: {
767
+ # insert_headers: [ # required
768
+ # {
769
+ # name: "CustomHTTPHeaderName", # required
770
+ # value: "CustomHTTPHeaderValue", # required
771
+ # },
772
+ # ],
773
+ # },
774
+ # },
720
775
  # },
721
776
  # override_action: {
722
777
  # count: {
@@ -742,6 +797,11 @@ module Aws::WAFV2
742
797
  # cloud_watch_metrics_enabled: false, # required
743
798
  # metric_name: "MetricName", # required
744
799
  # },
800
+ # captcha_config: {
801
+ # immunity_time_property: {
802
+ # immunity_time: 1, # required
803
+ # },
804
+ # },
745
805
  # },
746
806
  # ],
747
807
  # })
@@ -1274,6 +1334,42 @@ module Aws::WAFV2
1274
1334
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
1275
1335
  # key: "LabelMatchKey", # required
1276
1336
  # },
1337
+ # regex_match_statement: {
1338
+ # regex_string: "RegexPatternString", # required
1339
+ # field_to_match: { # required
1340
+ # single_header: {
1341
+ # name: "FieldToMatchData", # required
1342
+ # },
1343
+ # single_query_argument: {
1344
+ # name: "FieldToMatchData", # required
1345
+ # },
1346
+ # all_query_arguments: {
1347
+ # },
1348
+ # uri_path: {
1349
+ # },
1350
+ # query_string: {
1351
+ # },
1352
+ # body: {
1353
+ # },
1354
+ # method: {
1355
+ # },
1356
+ # json_body: {
1357
+ # match_pattern: { # required
1358
+ # all: {
1359
+ # },
1360
+ # included_paths: ["JsonPointerPath"],
1361
+ # },
1362
+ # match_scope: "ALL", # required, accepts ALL, KEY, VALUE
1363
+ # invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
1364
+ # },
1365
+ # },
1366
+ # text_transformations: [ # required
1367
+ # {
1368
+ # priority: 1, # required
1369
+ # type: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE, BASE64_DECODE, HEX_DECODE, MD5, REPLACE_COMMENTS, ESCAPE_SEQ_DECODE, SQL_HEX_DECODE, CSS_DECODE, JS_DECODE, NORMALIZE_PATH, NORMALIZE_PATH_WIN, REMOVE_NULLS, REPLACE_NULLS, BASE64_DECODE_EXT, URL_DECODE_UNI, UTF8_TO_UNICODE
1370
+ # },
1371
+ # ],
1372
+ # },
1277
1373
  # },
1278
1374
  # action: {
1279
1375
  # block: {
@@ -1308,6 +1404,16 @@ module Aws::WAFV2
1308
1404
  # ],
1309
1405
  # },
1310
1406
  # },
1407
+ # captcha: {
1408
+ # custom_request_handling: {
1409
+ # insert_headers: [ # required
1410
+ # {
1411
+ # name: "CustomHTTPHeaderName", # required
1412
+ # value: "CustomHTTPHeaderValue", # required
1413
+ # },
1414
+ # ],
1415
+ # },
1416
+ # },
1311
1417
  # },
1312
1418
  # override_action: {
1313
1419
  # count: {
@@ -1333,6 +1439,11 @@ module Aws::WAFV2
1333
1439
  # cloud_watch_metrics_enabled: false, # required
1334
1440
  # metric_name: "MetricName", # required
1335
1441
  # },
1442
+ # captcha_config: {
1443
+ # immunity_time_property: {
1444
+ # immunity_time: 1, # required
1445
+ # },
1446
+ # },
1336
1447
  # },
1337
1448
  # ],
1338
1449
  # visibility_config: { # required
@@ -1442,6 +1553,11 @@ module Aws::WAFV2
1442
1553
  # [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
1443
1554
  # [3]: https://docs.aws.amazon.com/waf/latest/developerguide/limits.html
1444
1555
  #
1556
+ # @option params [Types::CaptchaConfig] :captcha_config
1557
+ # Specifies how WAF should handle `CAPTCHA` evaluations for rules that
1558
+ # don't have their own `CaptchaConfig` settings. If you don't specify
1559
+ # this, WAF uses its default settings for `CaptchaConfig`.
1560
+ #
1445
1561
  # @return [Types::CreateWebACLResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1446
1562
  #
1447
1563
  # * {Types::CreateWebACLResponse#summary #summary} => Types::WebACLSummary
@@ -1731,6 +1847,42 @@ module Aws::WAFV2
1731
1847
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
1732
1848
  # key: "LabelMatchKey", # required
1733
1849
  # },
1850
+ # regex_match_statement: {
1851
+ # regex_string: "RegexPatternString", # required
1852
+ # field_to_match: { # required
1853
+ # single_header: {
1854
+ # name: "FieldToMatchData", # required
1855
+ # },
1856
+ # single_query_argument: {
1857
+ # name: "FieldToMatchData", # required
1858
+ # },
1859
+ # all_query_arguments: {
1860
+ # },
1861
+ # uri_path: {
1862
+ # },
1863
+ # query_string: {
1864
+ # },
1865
+ # body: {
1866
+ # },
1867
+ # method: {
1868
+ # },
1869
+ # json_body: {
1870
+ # match_pattern: { # required
1871
+ # all: {
1872
+ # },
1873
+ # included_paths: ["JsonPointerPath"],
1874
+ # },
1875
+ # match_scope: "ALL", # required, accepts ALL, KEY, VALUE
1876
+ # invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
1877
+ # },
1878
+ # },
1879
+ # text_transformations: [ # required
1880
+ # {
1881
+ # priority: 1, # required
1882
+ # type: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE, BASE64_DECODE, HEX_DECODE, MD5, REPLACE_COMMENTS, ESCAPE_SEQ_DECODE, SQL_HEX_DECODE, CSS_DECODE, JS_DECODE, NORMALIZE_PATH, NORMALIZE_PATH_WIN, REMOVE_NULLS, REPLACE_NULLS, BASE64_DECODE_EXT, URL_DECODE_UNI, UTF8_TO_UNICODE
1883
+ # },
1884
+ # ],
1885
+ # },
1734
1886
  # },
1735
1887
  # action: {
1736
1888
  # block: {
@@ -1765,6 +1917,16 @@ module Aws::WAFV2
1765
1917
  # ],
1766
1918
  # },
1767
1919
  # },
1920
+ # captcha: {
1921
+ # custom_request_handling: {
1922
+ # insert_headers: [ # required
1923
+ # {
1924
+ # name: "CustomHTTPHeaderName", # required
1925
+ # value: "CustomHTTPHeaderValue", # required
1926
+ # },
1927
+ # ],
1928
+ # },
1929
+ # },
1768
1930
  # },
1769
1931
  # override_action: {
1770
1932
  # count: {
@@ -1790,6 +1952,11 @@ module Aws::WAFV2
1790
1952
  # cloud_watch_metrics_enabled: false, # required
1791
1953
  # metric_name: "MetricName", # required
1792
1954
  # },
1955
+ # captcha_config: {
1956
+ # immunity_time_property: {
1957
+ # immunity_time: 1, # required
1958
+ # },
1959
+ # },
1793
1960
  # },
1794
1961
  # ],
1795
1962
  # visibility_config: { # required
@@ -1809,6 +1976,11 @@ module Aws::WAFV2
1809
1976
  # content: "ResponseContent", # required
1810
1977
  # },
1811
1978
  # },
1979
+ # captcha_config: {
1980
+ # immunity_time_property: {
1981
+ # immunity_time: 1, # required
1982
+ # },
1983
+ # },
1812
1984
  # })
1813
1985
  #
1814
1986
  # @example Response structure
@@ -2211,6 +2383,9 @@ module Aws::WAFV2
2211
2383
  # resp.rules[0].action.count.custom_request_handling.insert_headers #=> Array
2212
2384
  # resp.rules[0].action.count.custom_request_handling.insert_headers[0].name #=> String
2213
2385
  # resp.rules[0].action.count.custom_request_handling.insert_headers[0].value #=> String
2386
+ # resp.rules[0].action.captcha.custom_request_handling.insert_headers #=> Array
2387
+ # resp.rules[0].action.captcha.custom_request_handling.insert_headers[0].name #=> String
2388
+ # resp.rules[0].action.captcha.custom_request_handling.insert_headers[0].value #=> String
2214
2389
  # resp.label_namespace #=> String
2215
2390
  # resp.available_labels #=> Array
2216
2391
  # resp.available_labels[0].name #=> String
@@ -2363,7 +2538,7 @@ module Aws::WAFV2
2363
2538
  # resp.logging_configuration.logging_filter.filters[0].behavior #=> String, one of "KEEP", "DROP"
2364
2539
  # resp.logging_configuration.logging_filter.filters[0].requirement #=> String, one of "MEETS_ALL", "MEETS_ANY"
2365
2540
  # resp.logging_configuration.logging_filter.filters[0].conditions #=> Array
2366
- # resp.logging_configuration.logging_filter.filters[0].conditions[0].action_condition.action #=> String, one of "ALLOW", "BLOCK", "COUNT"
2541
+ # resp.logging_configuration.logging_filter.filters[0].conditions[0].action_condition.action #=> String, one of "ALLOW", "BLOCK", "COUNT", "CAPTCHA", "EXCLUDED_AS_COUNT"
2367
2542
  # resp.logging_configuration.logging_filter.filters[0].conditions[0].label_name_condition.label_name #=> String
2368
2543
  # resp.logging_configuration.logging_filter.default_behavior #=> String, one of "KEEP", "DROP"
2369
2544
  #
@@ -2759,6 +2934,16 @@ module Aws::WAFV2
2759
2934
  # resp.rule_group.rules[0].statement.managed_rule_group_statement.scope_down_statement #=> Types::Statement
2760
2935
  # resp.rule_group.rules[0].statement.label_match_statement.scope #=> String, one of "LABEL", "NAMESPACE"
2761
2936
  # resp.rule_group.rules[0].statement.label_match_statement.key #=> String
2937
+ # resp.rule_group.rules[0].statement.regex_match_statement.regex_string #=> String
2938
+ # resp.rule_group.rules[0].statement.regex_match_statement.field_to_match.single_header.name #=> String
2939
+ # resp.rule_group.rules[0].statement.regex_match_statement.field_to_match.single_query_argument.name #=> String
2940
+ # resp.rule_group.rules[0].statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths #=> Array
2941
+ # resp.rule_group.rules[0].statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths[0] #=> String
2942
+ # resp.rule_group.rules[0].statement.regex_match_statement.field_to_match.json_body.match_scope #=> String, one of "ALL", "KEY", "VALUE"
2943
+ # resp.rule_group.rules[0].statement.regex_match_statement.field_to_match.json_body.invalid_fallback_behavior #=> String, one of "MATCH", "NO_MATCH", "EVALUATE_AS_STRING"
2944
+ # resp.rule_group.rules[0].statement.regex_match_statement.text_transformations #=> Array
2945
+ # resp.rule_group.rules[0].statement.regex_match_statement.text_transformations[0].priority #=> Integer
2946
+ # resp.rule_group.rules[0].statement.regex_match_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE", "BASE64_DECODE", "HEX_DECODE", "MD5", "REPLACE_COMMENTS", "ESCAPE_SEQ_DECODE", "SQL_HEX_DECODE", "CSS_DECODE", "JS_DECODE", "NORMALIZE_PATH", "NORMALIZE_PATH_WIN", "REMOVE_NULLS", "REPLACE_NULLS", "BASE64_DECODE_EXT", "URL_DECODE_UNI", "UTF8_TO_UNICODE"
2762
2947
  # resp.rule_group.rules[0].action.block.custom_response.response_code #=> Integer
2763
2948
  # resp.rule_group.rules[0].action.block.custom_response.custom_response_body_key #=> String
2764
2949
  # resp.rule_group.rules[0].action.block.custom_response.response_headers #=> Array
@@ -2770,6 +2955,9 @@ module Aws::WAFV2
2770
2955
  # resp.rule_group.rules[0].action.count.custom_request_handling.insert_headers #=> Array
2771
2956
  # resp.rule_group.rules[0].action.count.custom_request_handling.insert_headers[0].name #=> String
2772
2957
  # resp.rule_group.rules[0].action.count.custom_request_handling.insert_headers[0].value #=> String
2958
+ # resp.rule_group.rules[0].action.captcha.custom_request_handling.insert_headers #=> Array
2959
+ # resp.rule_group.rules[0].action.captcha.custom_request_handling.insert_headers[0].name #=> String
2960
+ # resp.rule_group.rules[0].action.captcha.custom_request_handling.insert_headers[0].value #=> String
2773
2961
  # resp.rule_group.rules[0].override_action.count.custom_request_handling.insert_headers #=> Array
2774
2962
  # resp.rule_group.rules[0].override_action.count.custom_request_handling.insert_headers[0].name #=> String
2775
2963
  # resp.rule_group.rules[0].override_action.count.custom_request_handling.insert_headers[0].value #=> String
@@ -2778,6 +2966,7 @@ module Aws::WAFV2
2778
2966
  # resp.rule_group.rules[0].visibility_config.sampled_requests_enabled #=> Boolean
2779
2967
  # resp.rule_group.rules[0].visibility_config.cloud_watch_metrics_enabled #=> Boolean
2780
2968
  # resp.rule_group.rules[0].visibility_config.metric_name #=> String
2969
+ # resp.rule_group.rules[0].captcha_config.immunity_time_property.immunity_time #=> Integer
2781
2970
  # resp.rule_group.visibility_config.sampled_requests_enabled #=> Boolean
2782
2971
  # resp.rule_group.visibility_config.cloud_watch_metrics_enabled #=> Boolean
2783
2972
  # resp.rule_group.visibility_config.metric_name #=> String
@@ -2891,6 +3080,9 @@ module Aws::WAFV2
2891
3080
  # resp.sampled_requests[0].response_code_sent #=> Integer
2892
3081
  # resp.sampled_requests[0].labels #=> Array
2893
3082
  # resp.sampled_requests[0].labels[0].name #=> String
3083
+ # resp.sampled_requests[0].captcha_response.response_code #=> Integer
3084
+ # resp.sampled_requests[0].captcha_response.solve_timestamp #=> Integer
3085
+ # resp.sampled_requests[0].captcha_response.failure_reason #=> String, one of "TOKEN_MISSING", "TOKEN_EXPIRED"
2894
3086
  # resp.population_size #=> Integer
2895
3087
  # resp.time_window.start_time #=> Time
2896
3088
  # resp.time_window.end_time #=> Time
@@ -3038,6 +3230,16 @@ module Aws::WAFV2
3038
3230
  # resp.web_acl.rules[0].statement.managed_rule_group_statement.scope_down_statement #=> Types::Statement
3039
3231
  # resp.web_acl.rules[0].statement.label_match_statement.scope #=> String, one of "LABEL", "NAMESPACE"
3040
3232
  # resp.web_acl.rules[0].statement.label_match_statement.key #=> String
3233
+ # resp.web_acl.rules[0].statement.regex_match_statement.regex_string #=> String
3234
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.single_header.name #=> String
3235
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.single_query_argument.name #=> String
3236
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths #=> Array
3237
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths[0] #=> String
3238
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.json_body.match_scope #=> String, one of "ALL", "KEY", "VALUE"
3239
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.json_body.invalid_fallback_behavior #=> String, one of "MATCH", "NO_MATCH", "EVALUATE_AS_STRING"
3240
+ # resp.web_acl.rules[0].statement.regex_match_statement.text_transformations #=> Array
3241
+ # resp.web_acl.rules[0].statement.regex_match_statement.text_transformations[0].priority #=> Integer
3242
+ # resp.web_acl.rules[0].statement.regex_match_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE", "BASE64_DECODE", "HEX_DECODE", "MD5", "REPLACE_COMMENTS", "ESCAPE_SEQ_DECODE", "SQL_HEX_DECODE", "CSS_DECODE", "JS_DECODE", "NORMALIZE_PATH", "NORMALIZE_PATH_WIN", "REMOVE_NULLS", "REPLACE_NULLS", "BASE64_DECODE_EXT", "URL_DECODE_UNI", "UTF8_TO_UNICODE"
3041
3243
  # resp.web_acl.rules[0].action.block.custom_response.response_code #=> Integer
3042
3244
  # resp.web_acl.rules[0].action.block.custom_response.custom_response_body_key #=> String
3043
3245
  # resp.web_acl.rules[0].action.block.custom_response.response_headers #=> Array
@@ -3049,6 +3251,9 @@ module Aws::WAFV2
3049
3251
  # resp.web_acl.rules[0].action.count.custom_request_handling.insert_headers #=> Array
3050
3252
  # resp.web_acl.rules[0].action.count.custom_request_handling.insert_headers[0].name #=> String
3051
3253
  # resp.web_acl.rules[0].action.count.custom_request_handling.insert_headers[0].value #=> String
3254
+ # resp.web_acl.rules[0].action.captcha.custom_request_handling.insert_headers #=> Array
3255
+ # resp.web_acl.rules[0].action.captcha.custom_request_handling.insert_headers[0].name #=> String
3256
+ # resp.web_acl.rules[0].action.captcha.custom_request_handling.insert_headers[0].value #=> String
3052
3257
  # resp.web_acl.rules[0].override_action.count.custom_request_handling.insert_headers #=> Array
3053
3258
  # resp.web_acl.rules[0].override_action.count.custom_request_handling.insert_headers[0].name #=> String
3054
3259
  # resp.web_acl.rules[0].override_action.count.custom_request_handling.insert_headers[0].value #=> String
@@ -3057,6 +3262,7 @@ module Aws::WAFV2
3057
3262
  # resp.web_acl.rules[0].visibility_config.sampled_requests_enabled #=> Boolean
3058
3263
  # resp.web_acl.rules[0].visibility_config.cloud_watch_metrics_enabled #=> Boolean
3059
3264
  # resp.web_acl.rules[0].visibility_config.metric_name #=> String
3265
+ # resp.web_acl.rules[0].captcha_config.immunity_time_property.immunity_time #=> Integer
3060
3266
  # resp.web_acl.visibility_config.sampled_requests_enabled #=> Boolean
3061
3267
  # resp.web_acl.visibility_config.cloud_watch_metrics_enabled #=> Boolean
3062
3268
  # resp.web_acl.visibility_config.metric_name #=> String
@@ -3143,6 +3349,16 @@ module Aws::WAFV2
3143
3349
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.managed_rule_group_statement #=> Types::ManagedRuleGroupStatement
3144
3350
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.label_match_statement.scope #=> String, one of "LABEL", "NAMESPACE"
3145
3351
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.label_match_statement.key #=> String
3352
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.regex_string #=> String
3353
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.single_header.name #=> String
3354
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.single_query_argument.name #=> String
3355
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths #=> Array
3356
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths[0] #=> String
3357
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_scope #=> String, one of "ALL", "KEY", "VALUE"
3358
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.invalid_fallback_behavior #=> String, one of "MATCH", "NO_MATCH", "EVALUATE_AS_STRING"
3359
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations #=> Array
3360
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations[0].priority #=> Integer
3361
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE", "BASE64_DECODE", "HEX_DECODE", "MD5", "REPLACE_COMMENTS", "ESCAPE_SEQ_DECODE", "SQL_HEX_DECODE", "CSS_DECODE", "JS_DECODE", "NORMALIZE_PATH", "NORMALIZE_PATH_WIN", "REMOVE_NULLS", "REPLACE_NULLS", "BASE64_DECODE_EXT", "URL_DECODE_UNI", "UTF8_TO_UNICODE"
3146
3362
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.arn #=> String
3147
3363
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.excluded_rules #=> Array
3148
3364
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.excluded_rules[0].name #=> String
@@ -3234,6 +3450,16 @@ module Aws::WAFV2
3234
3450
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.managed_rule_group_statement #=> Types::ManagedRuleGroupStatement
3235
3451
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.label_match_statement.scope #=> String, one of "LABEL", "NAMESPACE"
3236
3452
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.label_match_statement.key #=> String
3453
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.regex_string #=> String
3454
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.single_header.name #=> String
3455
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.single_query_argument.name #=> String
3456
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths #=> Array
3457
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths[0] #=> String
3458
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_scope #=> String, one of "ALL", "KEY", "VALUE"
3459
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.invalid_fallback_behavior #=> String, one of "MATCH", "NO_MATCH", "EVALUATE_AS_STRING"
3460
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations #=> Array
3461
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations[0].priority #=> Integer
3462
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE", "BASE64_DECODE", "HEX_DECODE", "MD5", "REPLACE_COMMENTS", "ESCAPE_SEQ_DECODE", "SQL_HEX_DECODE", "CSS_DECODE", "JS_DECODE", "NORMALIZE_PATH", "NORMALIZE_PATH_WIN", "REMOVE_NULLS", "REPLACE_NULLS", "BASE64_DECODE_EXT", "URL_DECODE_UNI", "UTF8_TO_UNICODE"
3237
3463
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.arn #=> String
3238
3464
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.excluded_rules #=> Array
3239
3465
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.excluded_rules[0].name #=> String
@@ -3248,6 +3474,7 @@ module Aws::WAFV2
3248
3474
  # resp.web_acl.custom_response_bodies #=> Hash
3249
3475
  # resp.web_acl.custom_response_bodies["EntityName"].content_type #=> String, one of "TEXT_PLAIN", "TEXT_HTML", "APPLICATION_JSON"
3250
3476
  # resp.web_acl.custom_response_bodies["EntityName"].content #=> String
3477
+ # resp.web_acl.captcha_config.immunity_time_property.immunity_time #=> Integer
3251
3478
  # resp.lock_token #=> String
3252
3479
  #
3253
3480
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/GetWebACL AWS API Documentation
@@ -3370,6 +3597,16 @@ module Aws::WAFV2
3370
3597
  # resp.web_acl.rules[0].statement.managed_rule_group_statement.scope_down_statement #=> Types::Statement
3371
3598
  # resp.web_acl.rules[0].statement.label_match_statement.scope #=> String, one of "LABEL", "NAMESPACE"
3372
3599
  # resp.web_acl.rules[0].statement.label_match_statement.key #=> String
3600
+ # resp.web_acl.rules[0].statement.regex_match_statement.regex_string #=> String
3601
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.single_header.name #=> String
3602
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.single_query_argument.name #=> String
3603
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths #=> Array
3604
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths[0] #=> String
3605
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.json_body.match_scope #=> String, one of "ALL", "KEY", "VALUE"
3606
+ # resp.web_acl.rules[0].statement.regex_match_statement.field_to_match.json_body.invalid_fallback_behavior #=> String, one of "MATCH", "NO_MATCH", "EVALUATE_AS_STRING"
3607
+ # resp.web_acl.rules[0].statement.regex_match_statement.text_transformations #=> Array
3608
+ # resp.web_acl.rules[0].statement.regex_match_statement.text_transformations[0].priority #=> Integer
3609
+ # resp.web_acl.rules[0].statement.regex_match_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE", "BASE64_DECODE", "HEX_DECODE", "MD5", "REPLACE_COMMENTS", "ESCAPE_SEQ_DECODE", "SQL_HEX_DECODE", "CSS_DECODE", "JS_DECODE", "NORMALIZE_PATH", "NORMALIZE_PATH_WIN", "REMOVE_NULLS", "REPLACE_NULLS", "BASE64_DECODE_EXT", "URL_DECODE_UNI", "UTF8_TO_UNICODE"
3373
3610
  # resp.web_acl.rules[0].action.block.custom_response.response_code #=> Integer
3374
3611
  # resp.web_acl.rules[0].action.block.custom_response.custom_response_body_key #=> String
3375
3612
  # resp.web_acl.rules[0].action.block.custom_response.response_headers #=> Array
@@ -3381,6 +3618,9 @@ module Aws::WAFV2
3381
3618
  # resp.web_acl.rules[0].action.count.custom_request_handling.insert_headers #=> Array
3382
3619
  # resp.web_acl.rules[0].action.count.custom_request_handling.insert_headers[0].name #=> String
3383
3620
  # resp.web_acl.rules[0].action.count.custom_request_handling.insert_headers[0].value #=> String
3621
+ # resp.web_acl.rules[0].action.captcha.custom_request_handling.insert_headers #=> Array
3622
+ # resp.web_acl.rules[0].action.captcha.custom_request_handling.insert_headers[0].name #=> String
3623
+ # resp.web_acl.rules[0].action.captcha.custom_request_handling.insert_headers[0].value #=> String
3384
3624
  # resp.web_acl.rules[0].override_action.count.custom_request_handling.insert_headers #=> Array
3385
3625
  # resp.web_acl.rules[0].override_action.count.custom_request_handling.insert_headers[0].name #=> String
3386
3626
  # resp.web_acl.rules[0].override_action.count.custom_request_handling.insert_headers[0].value #=> String
@@ -3389,6 +3629,7 @@ module Aws::WAFV2
3389
3629
  # resp.web_acl.rules[0].visibility_config.sampled_requests_enabled #=> Boolean
3390
3630
  # resp.web_acl.rules[0].visibility_config.cloud_watch_metrics_enabled #=> Boolean
3391
3631
  # resp.web_acl.rules[0].visibility_config.metric_name #=> String
3632
+ # resp.web_acl.rules[0].captcha_config.immunity_time_property.immunity_time #=> Integer
3392
3633
  # resp.web_acl.visibility_config.sampled_requests_enabled #=> Boolean
3393
3634
  # resp.web_acl.visibility_config.cloud_watch_metrics_enabled #=> Boolean
3394
3635
  # resp.web_acl.visibility_config.metric_name #=> String
@@ -3475,6 +3716,16 @@ module Aws::WAFV2
3475
3716
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.managed_rule_group_statement #=> Types::ManagedRuleGroupStatement
3476
3717
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.label_match_statement.scope #=> String, one of "LABEL", "NAMESPACE"
3477
3718
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.label_match_statement.key #=> String
3719
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.regex_string #=> String
3720
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.single_header.name #=> String
3721
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.single_query_argument.name #=> String
3722
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths #=> Array
3723
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths[0] #=> String
3724
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_scope #=> String, one of "ALL", "KEY", "VALUE"
3725
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.invalid_fallback_behavior #=> String, one of "MATCH", "NO_MATCH", "EVALUATE_AS_STRING"
3726
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations #=> Array
3727
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations[0].priority #=> Integer
3728
+ # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE", "BASE64_DECODE", "HEX_DECODE", "MD5", "REPLACE_COMMENTS", "ESCAPE_SEQ_DECODE", "SQL_HEX_DECODE", "CSS_DECODE", "JS_DECODE", "NORMALIZE_PATH", "NORMALIZE_PATH_WIN", "REMOVE_NULLS", "REPLACE_NULLS", "BASE64_DECODE_EXT", "URL_DECODE_UNI", "UTF8_TO_UNICODE"
3478
3729
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.arn #=> String
3479
3730
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.excluded_rules #=> Array
3480
3731
  # resp.web_acl.pre_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.excluded_rules[0].name #=> String
@@ -3566,6 +3817,16 @@ module Aws::WAFV2
3566
3817
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.managed_rule_group_statement #=> Types::ManagedRuleGroupStatement
3567
3818
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.label_match_statement.scope #=> String, one of "LABEL", "NAMESPACE"
3568
3819
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.label_match_statement.key #=> String
3820
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.regex_string #=> String
3821
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.single_header.name #=> String
3822
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.single_query_argument.name #=> String
3823
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths #=> Array
3824
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_pattern.included_paths[0] #=> String
3825
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.match_scope #=> String, one of "ALL", "KEY", "VALUE"
3826
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.field_to_match.json_body.invalid_fallback_behavior #=> String, one of "MATCH", "NO_MATCH", "EVALUATE_AS_STRING"
3827
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations #=> Array
3828
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations[0].priority #=> Integer
3829
+ # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.managed_rule_group_statement.scope_down_statement.regex_match_statement.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE", "BASE64_DECODE", "HEX_DECODE", "MD5", "REPLACE_COMMENTS", "ESCAPE_SEQ_DECODE", "SQL_HEX_DECODE", "CSS_DECODE", "JS_DECODE", "NORMALIZE_PATH", "NORMALIZE_PATH_WIN", "REMOVE_NULLS", "REPLACE_NULLS", "BASE64_DECODE_EXT", "URL_DECODE_UNI", "UTF8_TO_UNICODE"
3569
3830
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.arn #=> String
3570
3831
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.excluded_rules #=> Array
3571
3832
  # resp.web_acl.post_process_firewall_manager_rule_groups[0].firewall_manager_statement.rule_group_reference_statement.excluded_rules[0].name #=> String
@@ -3580,6 +3841,7 @@ module Aws::WAFV2
3580
3841
  # resp.web_acl.custom_response_bodies #=> Hash
3581
3842
  # resp.web_acl.custom_response_bodies["EntityName"].content_type #=> String, one of "TEXT_PLAIN", "TEXT_HTML", "APPLICATION_JSON"
3582
3843
  # resp.web_acl.custom_response_bodies["EntityName"].content #=> String
3844
+ # resp.web_acl.captcha_config.immunity_time_property.immunity_time #=> Integer
3583
3845
  #
3584
3846
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/GetWebACLForResource AWS API Documentation
3585
3847
  #
@@ -3785,7 +4047,7 @@ module Aws::WAFV2
3785
4047
 
3786
4048
  # Retrieves an array of your LoggingConfiguration objects.
3787
4049
  #
3788
- # @option params [String] :scope
4050
+ # @option params [required, String] :scope
3789
4051
  # Specifies whether this is for an Amazon CloudFront distribution or for
3790
4052
  # a regional application. A regional application can be an Application
3791
4053
  # Load Balancer (ALB), an Amazon API Gateway REST API, or an AppSync
@@ -3820,7 +4082,7 @@ module Aws::WAFV2
3820
4082
  # @example Request syntax with placeholder values
3821
4083
  #
3822
4084
  # resp = client.list_logging_configurations({
3823
- # scope: "CLOUDFRONT", # accepts CLOUDFRONT, REGIONAL
4085
+ # scope: "CLOUDFRONT", # required, accepts CLOUDFRONT, REGIONAL
3824
4086
  # next_marker: "NextMarker",
3825
4087
  # limit: 1,
3826
4088
  # })
@@ -3843,7 +4105,7 @@ module Aws::WAFV2
3843
4105
  # resp.logging_configurations[0].logging_filter.filters[0].behavior #=> String, one of "KEEP", "DROP"
3844
4106
  # resp.logging_configurations[0].logging_filter.filters[0].requirement #=> String, one of "MEETS_ALL", "MEETS_ANY"
3845
4107
  # resp.logging_configurations[0].logging_filter.filters[0].conditions #=> Array
3846
- # resp.logging_configurations[0].logging_filter.filters[0].conditions[0].action_condition.action #=> String, one of "ALLOW", "BLOCK", "COUNT"
4108
+ # resp.logging_configurations[0].logging_filter.filters[0].conditions[0].action_condition.action #=> String, one of "ALLOW", "BLOCK", "COUNT", "CAPTCHA", "EXCLUDED_AS_COUNT"
3847
4109
  # resp.logging_configurations[0].logging_filter.filters[0].conditions[0].label_name_condition.label_name #=> String
3848
4110
  # resp.logging_configurations[0].logging_filter.default_behavior #=> String, one of "KEEP", "DROP"
3849
4111
  # resp.next_marker #=> String
@@ -4303,7 +4565,7 @@ module Aws::WAFV2
4303
4565
  # conditions: [ # required
4304
4566
  # {
4305
4567
  # action_condition: {
4306
- # action: "ALLOW", # required, accepts ALLOW, BLOCK, COUNT
4568
+ # action: "ALLOW", # required, accepts ALLOW, BLOCK, COUNT, CAPTCHA, EXCLUDED_AS_COUNT
4307
4569
  # },
4308
4570
  # label_name_condition: {
4309
4571
  # label_name: "LabelName", # required
@@ -4334,7 +4596,7 @@ module Aws::WAFV2
4334
4596
  # resp.logging_configuration.logging_filter.filters[0].behavior #=> String, one of "KEEP", "DROP"
4335
4597
  # resp.logging_configuration.logging_filter.filters[0].requirement #=> String, one of "MEETS_ALL", "MEETS_ANY"
4336
4598
  # resp.logging_configuration.logging_filter.filters[0].conditions #=> Array
4337
- # resp.logging_configuration.logging_filter.filters[0].conditions[0].action_condition.action #=> String, one of "ALLOW", "BLOCK", "COUNT"
4599
+ # resp.logging_configuration.logging_filter.filters[0].conditions[0].action_condition.action #=> String, one of "ALLOW", "BLOCK", "COUNT", "CAPTCHA", "EXCLUDED_AS_COUNT"
4338
4600
  # resp.logging_configuration.logging_filter.filters[0].conditions[0].label_name_condition.label_name #=> String
4339
4601
  # resp.logging_configuration.logging_filter.default_behavior #=> String, one of "KEEP", "DROP"
4340
4602
  #
@@ -5212,6 +5474,42 @@ module Aws::WAFV2
5212
5474
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
5213
5475
  # key: "LabelMatchKey", # required
5214
5476
  # },
5477
+ # regex_match_statement: {
5478
+ # regex_string: "RegexPatternString", # required
5479
+ # field_to_match: { # required
5480
+ # single_header: {
5481
+ # name: "FieldToMatchData", # required
5482
+ # },
5483
+ # single_query_argument: {
5484
+ # name: "FieldToMatchData", # required
5485
+ # },
5486
+ # all_query_arguments: {
5487
+ # },
5488
+ # uri_path: {
5489
+ # },
5490
+ # query_string: {
5491
+ # },
5492
+ # body: {
5493
+ # },
5494
+ # method: {
5495
+ # },
5496
+ # json_body: {
5497
+ # match_pattern: { # required
5498
+ # all: {
5499
+ # },
5500
+ # included_paths: ["JsonPointerPath"],
5501
+ # },
5502
+ # match_scope: "ALL", # required, accepts ALL, KEY, VALUE
5503
+ # invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
5504
+ # },
5505
+ # },
5506
+ # text_transformations: [ # required
5507
+ # {
5508
+ # priority: 1, # required
5509
+ # type: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE, BASE64_DECODE, HEX_DECODE, MD5, REPLACE_COMMENTS, ESCAPE_SEQ_DECODE, SQL_HEX_DECODE, CSS_DECODE, JS_DECODE, NORMALIZE_PATH, NORMALIZE_PATH_WIN, REMOVE_NULLS, REPLACE_NULLS, BASE64_DECODE_EXT, URL_DECODE_UNI, UTF8_TO_UNICODE
5510
+ # },
5511
+ # ],
5512
+ # },
5215
5513
  # },
5216
5514
  # action: {
5217
5515
  # block: {
@@ -5246,6 +5544,16 @@ module Aws::WAFV2
5246
5544
  # ],
5247
5545
  # },
5248
5546
  # },
5547
+ # captcha: {
5548
+ # custom_request_handling: {
5549
+ # insert_headers: [ # required
5550
+ # {
5551
+ # name: "CustomHTTPHeaderName", # required
5552
+ # value: "CustomHTTPHeaderValue", # required
5553
+ # },
5554
+ # ],
5555
+ # },
5556
+ # },
5249
5557
  # },
5250
5558
  # override_action: {
5251
5559
  # count: {
@@ -5271,6 +5579,11 @@ module Aws::WAFV2
5271
5579
  # cloud_watch_metrics_enabled: false, # required
5272
5580
  # metric_name: "MetricName", # required
5273
5581
  # },
5582
+ # captcha_config: {
5583
+ # immunity_time_property: {
5584
+ # immunity_time: 1, # required
5585
+ # },
5586
+ # },
5274
5587
  # },
5275
5588
  # ],
5276
5589
  # visibility_config: { # required
@@ -5391,6 +5704,11 @@ module Aws::WAFV2
5391
5704
  # [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
5392
5705
  # [3]: https://docs.aws.amazon.com/waf/latest/developerguide/limits.html
5393
5706
  #
5707
+ # @option params [Types::CaptchaConfig] :captcha_config
5708
+ # Specifies how WAF should handle `CAPTCHA` evaluations for rules that
5709
+ # don't have their own `CaptchaConfig` settings. If you don't specify
5710
+ # this, WAF uses its default settings for `CaptchaConfig`.
5711
+ #
5394
5712
  # @return [Types::UpdateWebACLResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5395
5713
  #
5396
5714
  # * {Types::UpdateWebACLResponse#next_lock_token #next_lock_token} => String
@@ -5681,6 +5999,42 @@ module Aws::WAFV2
5681
5999
  # scope: "LABEL", # required, accepts LABEL, NAMESPACE
5682
6000
  # key: "LabelMatchKey", # required
5683
6001
  # },
6002
+ # regex_match_statement: {
6003
+ # regex_string: "RegexPatternString", # required
6004
+ # field_to_match: { # required
6005
+ # single_header: {
6006
+ # name: "FieldToMatchData", # required
6007
+ # },
6008
+ # single_query_argument: {
6009
+ # name: "FieldToMatchData", # required
6010
+ # },
6011
+ # all_query_arguments: {
6012
+ # },
6013
+ # uri_path: {
6014
+ # },
6015
+ # query_string: {
6016
+ # },
6017
+ # body: {
6018
+ # },
6019
+ # method: {
6020
+ # },
6021
+ # json_body: {
6022
+ # match_pattern: { # required
6023
+ # all: {
6024
+ # },
6025
+ # included_paths: ["JsonPointerPath"],
6026
+ # },
6027
+ # match_scope: "ALL", # required, accepts ALL, KEY, VALUE
6028
+ # invalid_fallback_behavior: "MATCH", # accepts MATCH, NO_MATCH, EVALUATE_AS_STRING
6029
+ # },
6030
+ # },
6031
+ # text_transformations: [ # required
6032
+ # {
6033
+ # priority: 1, # required
6034
+ # type: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE, BASE64_DECODE, HEX_DECODE, MD5, REPLACE_COMMENTS, ESCAPE_SEQ_DECODE, SQL_HEX_DECODE, CSS_DECODE, JS_DECODE, NORMALIZE_PATH, NORMALIZE_PATH_WIN, REMOVE_NULLS, REPLACE_NULLS, BASE64_DECODE_EXT, URL_DECODE_UNI, UTF8_TO_UNICODE
6035
+ # },
6036
+ # ],
6037
+ # },
5684
6038
  # },
5685
6039
  # action: {
5686
6040
  # block: {
@@ -5715,6 +6069,16 @@ module Aws::WAFV2
5715
6069
  # ],
5716
6070
  # },
5717
6071
  # },
6072
+ # captcha: {
6073
+ # custom_request_handling: {
6074
+ # insert_headers: [ # required
6075
+ # {
6076
+ # name: "CustomHTTPHeaderName", # required
6077
+ # value: "CustomHTTPHeaderValue", # required
6078
+ # },
6079
+ # ],
6080
+ # },
6081
+ # },
5718
6082
  # },
5719
6083
  # override_action: {
5720
6084
  # count: {
@@ -5740,6 +6104,11 @@ module Aws::WAFV2
5740
6104
  # cloud_watch_metrics_enabled: false, # required
5741
6105
  # metric_name: "MetricName", # required
5742
6106
  # },
6107
+ # captcha_config: {
6108
+ # immunity_time_property: {
6109
+ # immunity_time: 1, # required
6110
+ # },
6111
+ # },
5743
6112
  # },
5744
6113
  # ],
5745
6114
  # visibility_config: { # required
@@ -5754,6 +6123,11 @@ module Aws::WAFV2
5754
6123
  # content: "ResponseContent", # required
5755
6124
  # },
5756
6125
  # },
6126
+ # captcha_config: {
6127
+ # immunity_time_property: {
6128
+ # immunity_time: 1, # required
6129
+ # },
6130
+ # },
5757
6131
  # })
5758
6132
  #
5759
6133
  # @example Response structure
@@ -5782,7 +6156,7 @@ module Aws::WAFV2
5782
6156
  params: params,
5783
6157
  config: config)
5784
6158
  context[:gem_name] = 'aws-sdk-wafv2'
5785
- context[:gem_version] = '1.26.0'
6159
+ context[:gem_version] = '1.30.0'
5786
6160
  Seahorse::Client::Request.new(handlers, context)
5787
6161
  end
5788
6162