aws-sdk-wafv2 1.26.0 → 1.30.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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