aws-sdk-wafv2 1.103.0 → 1.104.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b981d0b3efef30a7c8f8f75e1dd8e3da86e88921d0acc1e70abdbd8ad05050ac
4
- data.tar.gz: 138636c9ad2b2269c7c9f705524a5773916a58d8d9ff4e5090dbadfcac379b3c
3
+ metadata.gz: 551eecc4e65e527c7ab3ff27e76559512c3328dad9500c04b7f5501164ba4f4a
4
+ data.tar.gz: aeffaa2ce887e1ee04f5c5797b2516a07386a779a1be6b4c7b3e510d54e07b5a
5
5
  SHA512:
6
- metadata.gz: 6a2c7c02cdfeedd7db062b4ab6ff54438a2aa040c627a2f17c638011a8bc61e868142740a6e0469096718e62b17b622506740d88ac54a9eeb2f1ce7cda25c20b
7
- data.tar.gz: 6461e09f4d92b3744f5dd1a613eacf22c4da735c28130658b43ce6c06fdc4544888749eda637af2315ae24117da4b9133f25d5caa323f8afa142ed54d8690fca
6
+ metadata.gz: 7b3e8746a08bc90c7ebb0766c3b1692584de32534dafacf59a6943eb069f26fda67d4e7ad1fed965a24be3f8e9b23e46e846bc6b8155a9aa51168e236177344f
7
+ data.tar.gz: 3be19af831a7bd19242e3b754d98e922a5b89dbb644b024be16a1bbd5739df416da627ae9549d4b20a68df3d2b4b43a5e00aca98a46d9031fce9ef8b98626a2b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.104.0 (2025-03-06)
5
+ ------------------
6
+
7
+ * Feature - You can now perform an exact match or rate limit aggregation against the web request's JA4 fingerprint.
8
+
4
9
  1.103.0 (2025-02-18)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.103.0
1
+ 1.104.0
@@ -673,6 +673,9 @@ module Aws::WAFV2
673
673
  # ja3_fingerprint: {
674
674
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
675
675
  # },
676
+ # ja4_fingerprint: {
677
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
678
+ # },
676
679
  # },
677
680
  # text_transformations: [ # required
678
681
  # {
@@ -737,6 +740,9 @@ module Aws::WAFV2
737
740
  # ja3_fingerprint: {
738
741
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
739
742
  # },
743
+ # ja4_fingerprint: {
744
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
745
+ # },
740
746
  # },
741
747
  # text_transformations: [ # required
742
748
  # {
@@ -801,6 +807,9 @@ module Aws::WAFV2
801
807
  # ja3_fingerprint: {
802
808
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
803
809
  # },
810
+ # ja4_fingerprint: {
811
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
812
+ # },
804
813
  # },
805
814
  # text_transformations: [ # required
806
815
  # {
@@ -864,6 +873,9 @@ module Aws::WAFV2
864
873
  # ja3_fingerprint: {
865
874
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
866
875
  # },
876
+ # ja4_fingerprint: {
877
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
878
+ # },
867
879
  # },
868
880
  # comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
869
881
  # size: 1, # required
@@ -1012,6 +1024,9 @@ module Aws::WAFV2
1012
1024
  # ja3_fingerprint: {
1013
1025
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1014
1026
  # },
1027
+ # ja4_fingerprint: {
1028
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1029
+ # },
1015
1030
  # },
1016
1031
  # text_transformations: [ # required
1017
1032
  # {
@@ -1085,6 +1100,12 @@ module Aws::WAFV2
1085
1100
  # },
1086
1101
  # ],
1087
1102
  # },
1103
+ # ja3_fingerprint: {
1104
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1105
+ # },
1106
+ # ja4_fingerprint: {
1107
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1108
+ # },
1088
1109
  # },
1089
1110
  # ],
1090
1111
  # },
@@ -1335,6 +1356,9 @@ module Aws::WAFV2
1335
1356
  # ja3_fingerprint: {
1336
1357
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1337
1358
  # },
1359
+ # ja4_fingerprint: {
1360
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1361
+ # },
1338
1362
  # },
1339
1363
  # text_transformations: [ # required
1340
1364
  # {
@@ -1840,6 +1864,9 @@ module Aws::WAFV2
1840
1864
  # ja3_fingerprint: {
1841
1865
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1842
1866
  # },
1867
+ # ja4_fingerprint: {
1868
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1869
+ # },
1843
1870
  # },
1844
1871
  # text_transformations: [ # required
1845
1872
  # {
@@ -1904,6 +1931,9 @@ module Aws::WAFV2
1904
1931
  # ja3_fingerprint: {
1905
1932
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1906
1933
  # },
1934
+ # ja4_fingerprint: {
1935
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1936
+ # },
1907
1937
  # },
1908
1938
  # text_transformations: [ # required
1909
1939
  # {
@@ -1968,6 +1998,9 @@ module Aws::WAFV2
1968
1998
  # ja3_fingerprint: {
1969
1999
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
1970
2000
  # },
2001
+ # ja4_fingerprint: {
2002
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2003
+ # },
1971
2004
  # },
1972
2005
  # text_transformations: [ # required
1973
2006
  # {
@@ -2031,6 +2064,9 @@ module Aws::WAFV2
2031
2064
  # ja3_fingerprint: {
2032
2065
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2033
2066
  # },
2067
+ # ja4_fingerprint: {
2068
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2069
+ # },
2034
2070
  # },
2035
2071
  # comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
2036
2072
  # size: 1, # required
@@ -2179,6 +2215,9 @@ module Aws::WAFV2
2179
2215
  # ja3_fingerprint: {
2180
2216
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2181
2217
  # },
2218
+ # ja4_fingerprint: {
2219
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2220
+ # },
2182
2221
  # },
2183
2222
  # text_transformations: [ # required
2184
2223
  # {
@@ -2252,6 +2291,12 @@ module Aws::WAFV2
2252
2291
  # },
2253
2292
  # ],
2254
2293
  # },
2294
+ # ja3_fingerprint: {
2295
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2296
+ # },
2297
+ # ja4_fingerprint: {
2298
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2299
+ # },
2255
2300
  # },
2256
2301
  # ],
2257
2302
  # },
@@ -2502,6 +2547,9 @@ module Aws::WAFV2
2502
2547
  # ja3_fingerprint: {
2503
2548
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2504
2549
  # },
2550
+ # ja4_fingerprint: {
2551
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2552
+ # },
2505
2553
  # },
2506
2554
  # text_transformations: [ # required
2507
2555
  # {
@@ -2686,16 +2734,15 @@ module Aws::WAFV2
2686
2734
  # collection.
2687
2735
  #
2688
2736
  # @option params [Types::DataProtectionConfig] :data_protection_config
2689
- # Specifies data protection to apply to the web request data that WAF
2690
- # stores for the web ACL. This is a web ACL level data protection
2691
- # option.
2737
+ # Specifies data protection to apply to the web request data for the web
2738
+ # ACL. This is a web ACL level data protection option.
2692
2739
  #
2693
2740
  # The data protection that you configure for the web ACL alters the data
2694
2741
  # that's available for any other data collection activity, including
2695
- # WAF logging, web ACL request sampling, Amazon Web Services Managed
2696
- # Rules, and Amazon Security Lake data collection and management. Your
2697
- # other option for data protection is in the logging configuration,
2698
- # which only affects logging.
2742
+ # your WAF logging destinations, web ACL request sampling, and Amazon
2743
+ # Security Lake data collection and management. Your other option for
2744
+ # data protection is in the logging configuration, which only affects
2745
+ # logging.
2699
2746
  #
2700
2747
  # @option params [Array<Types::Tag>] :tags
2701
2748
  # An array of key:value pairs to associate with the resource.
@@ -2863,6 +2910,9 @@ module Aws::WAFV2
2863
2910
  # ja3_fingerprint: {
2864
2911
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2865
2912
  # },
2913
+ # ja4_fingerprint: {
2914
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2915
+ # },
2866
2916
  # },
2867
2917
  # text_transformations: [ # required
2868
2918
  # {
@@ -2927,6 +2977,9 @@ module Aws::WAFV2
2927
2977
  # ja3_fingerprint: {
2928
2978
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2929
2979
  # },
2980
+ # ja4_fingerprint: {
2981
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2982
+ # },
2930
2983
  # },
2931
2984
  # text_transformations: [ # required
2932
2985
  # {
@@ -2991,6 +3044,9 @@ module Aws::WAFV2
2991
3044
  # ja3_fingerprint: {
2992
3045
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
2993
3046
  # },
3047
+ # ja4_fingerprint: {
3048
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
3049
+ # },
2994
3050
  # },
2995
3051
  # text_transformations: [ # required
2996
3052
  # {
@@ -3054,6 +3110,9 @@ module Aws::WAFV2
3054
3110
  # ja3_fingerprint: {
3055
3111
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
3056
3112
  # },
3113
+ # ja4_fingerprint: {
3114
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
3115
+ # },
3057
3116
  # },
3058
3117
  # comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
3059
3118
  # size: 1, # required
@@ -3202,6 +3261,9 @@ module Aws::WAFV2
3202
3261
  # ja3_fingerprint: {
3203
3262
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
3204
3263
  # },
3264
+ # ja4_fingerprint: {
3265
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
3266
+ # },
3205
3267
  # },
3206
3268
  # text_transformations: [ # required
3207
3269
  # {
@@ -3275,6 +3337,12 @@ module Aws::WAFV2
3275
3337
  # },
3276
3338
  # ],
3277
3339
  # },
3340
+ # ja3_fingerprint: {
3341
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
3342
+ # },
3343
+ # ja4_fingerprint: {
3344
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
3345
+ # },
3278
3346
  # },
3279
3347
  # ],
3280
3348
  # },
@@ -3525,6 +3593,9 @@ module Aws::WAFV2
3525
3593
  # ja3_fingerprint: {
3526
3594
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
3527
3595
  # },
3596
+ # ja4_fingerprint: {
3597
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
3598
+ # },
3528
3599
  # },
3529
3600
  # text_transformations: [ # required
3530
3601
  # {
@@ -4563,6 +4634,7 @@ module Aws::WAFV2
4563
4634
  # resp.logging_configuration.redacted_fields[0].cookies.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
4564
4635
  # resp.logging_configuration.redacted_fields[0].header_order.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
4565
4636
  # resp.logging_configuration.redacted_fields[0].ja3_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
4637
+ # resp.logging_configuration.redacted_fields[0].ja4_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
4566
4638
  # resp.logging_configuration.managed_by_firewall_manager #=> Boolean
4567
4639
  # resp.logging_configuration.logging_filter.filters #=> Array
4568
4640
  # resp.logging_configuration.logging_filter.filters[0].behavior #=> String, one of "KEEP", "DROP"
@@ -4953,6 +5025,7 @@ module Aws::WAFV2
4953
5025
  # resp.rule_group.rules[0].statement.byte_match_statement.field_to_match.cookies.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
4954
5026
  # resp.rule_group.rules[0].statement.byte_match_statement.field_to_match.header_order.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
4955
5027
  # resp.rule_group.rules[0].statement.byte_match_statement.field_to_match.ja3_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5028
+ # resp.rule_group.rules[0].statement.byte_match_statement.field_to_match.ja4_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
4956
5029
  # resp.rule_group.rules[0].statement.byte_match_statement.text_transformations #=> Array
4957
5030
  # resp.rule_group.rules[0].statement.byte_match_statement.text_transformations[0].priority #=> Integer
4958
5031
  # resp.rule_group.rules[0].statement.byte_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"
@@ -4979,6 +5052,7 @@ module Aws::WAFV2
4979
5052
  # resp.rule_group.rules[0].statement.sqli_match_statement.field_to_match.cookies.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
4980
5053
  # resp.rule_group.rules[0].statement.sqli_match_statement.field_to_match.header_order.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
4981
5054
  # resp.rule_group.rules[0].statement.sqli_match_statement.field_to_match.ja3_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5055
+ # resp.rule_group.rules[0].statement.sqli_match_statement.field_to_match.ja4_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
4982
5056
  # resp.rule_group.rules[0].statement.sqli_match_statement.text_transformations #=> Array
4983
5057
  # resp.rule_group.rules[0].statement.sqli_match_statement.text_transformations[0].priority #=> Integer
4984
5058
  # resp.rule_group.rules[0].statement.sqli_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"
@@ -5005,6 +5079,7 @@ module Aws::WAFV2
5005
5079
  # resp.rule_group.rules[0].statement.xss_match_statement.field_to_match.cookies.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
5006
5080
  # resp.rule_group.rules[0].statement.xss_match_statement.field_to_match.header_order.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
5007
5081
  # resp.rule_group.rules[0].statement.xss_match_statement.field_to_match.ja3_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5082
+ # resp.rule_group.rules[0].statement.xss_match_statement.field_to_match.ja4_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5008
5083
  # resp.rule_group.rules[0].statement.xss_match_statement.text_transformations #=> Array
5009
5084
  # resp.rule_group.rules[0].statement.xss_match_statement.text_transformations[0].priority #=> Integer
5010
5085
  # resp.rule_group.rules[0].statement.xss_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"
@@ -5030,6 +5105,7 @@ module Aws::WAFV2
5030
5105
  # resp.rule_group.rules[0].statement.size_constraint_statement.field_to_match.cookies.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
5031
5106
  # resp.rule_group.rules[0].statement.size_constraint_statement.field_to_match.header_order.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
5032
5107
  # resp.rule_group.rules[0].statement.size_constraint_statement.field_to_match.ja3_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5108
+ # resp.rule_group.rules[0].statement.size_constraint_statement.field_to_match.ja4_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5033
5109
  # resp.rule_group.rules[0].statement.size_constraint_statement.comparison_operator #=> String, one of "EQ", "NE", "LE", "LT", "GE", "GT"
5034
5110
  # resp.rule_group.rules[0].statement.size_constraint_statement.size #=> Integer
5035
5111
  # resp.rule_group.rules[0].statement.size_constraint_statement.text_transformations #=> Array
@@ -5088,6 +5164,7 @@ module Aws::WAFV2
5088
5164
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.cookies.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
5089
5165
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.header_order.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
5090
5166
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.ja3_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5167
+ # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.field_to_match.ja4_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5091
5168
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.text_transformations #=> Array
5092
5169
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_statement.text_transformations[0].priority #=> Integer
5093
5170
  # resp.rule_group.rules[0].statement.regex_pattern_set_reference_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"
@@ -5117,6 +5194,8 @@ module Aws::WAFV2
5117
5194
  # resp.rule_group.rules[0].statement.rate_based_statement.custom_keys[0].uri_path.text_transformations #=> Array
5118
5195
  # resp.rule_group.rules[0].statement.rate_based_statement.custom_keys[0].uri_path.text_transformations[0].priority #=> Integer
5119
5196
  # resp.rule_group.rules[0].statement.rate_based_statement.custom_keys[0].uri_path.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"
5197
+ # resp.rule_group.rules[0].statement.rate_based_statement.custom_keys[0].ja3_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5198
+ # resp.rule_group.rules[0].statement.rate_based_statement.custom_keys[0].ja4_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5120
5199
  # resp.rule_group.rules[0].statement.and_statement.statements #=> Array
5121
5200
  # resp.rule_group.rules[0].statement.and_statement.statements[0] #=> Types::Statement
5122
5201
  # resp.rule_group.rules[0].statement.or_statement.statements #=> Array
@@ -5231,6 +5310,7 @@ module Aws::WAFV2
5231
5310
  # resp.rule_group.rules[0].statement.regex_match_statement.field_to_match.cookies.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
5232
5311
  # resp.rule_group.rules[0].statement.regex_match_statement.field_to_match.header_order.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
5233
5312
  # resp.rule_group.rules[0].statement.regex_match_statement.field_to_match.ja3_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5313
+ # resp.rule_group.rules[0].statement.regex_match_statement.field_to_match.ja4_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5234
5314
  # resp.rule_group.rules[0].statement.regex_match_statement.text_transformations #=> Array
5235
5315
  # resp.rule_group.rules[0].statement.regex_match_statement.text_transformations[0].priority #=> Integer
5236
5316
  # 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"
@@ -5858,6 +5938,7 @@ module Aws::WAFV2
5858
5938
  # resp.logging_configurations[0].redacted_fields[0].cookies.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
5859
5939
  # resp.logging_configurations[0].redacted_fields[0].header_order.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
5860
5940
  # resp.logging_configurations[0].redacted_fields[0].ja3_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5941
+ # resp.logging_configurations[0].redacted_fields[0].ja4_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
5861
5942
  # resp.logging_configurations[0].managed_by_firewall_manager #=> Boolean
5862
5943
  # resp.logging_configurations[0].logging_filter.filters #=> Array
5863
5944
  # resp.logging_configurations[0].logging_filter.filters[0].behavior #=> String, one of "KEEP", "DROP"
@@ -6435,6 +6516,9 @@ module Aws::WAFV2
6435
6516
  # ja3_fingerprint: {
6436
6517
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
6437
6518
  # },
6519
+ # ja4_fingerprint: {
6520
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
6521
+ # },
6438
6522
  # },
6439
6523
  # ],
6440
6524
  # managed_by_firewall_manager: false,
@@ -6490,6 +6574,7 @@ module Aws::WAFV2
6490
6574
  # resp.logging_configuration.redacted_fields[0].cookies.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
6491
6575
  # resp.logging_configuration.redacted_fields[0].header_order.oversize_handling #=> String, one of "CONTINUE", "MATCH", "NO_MATCH"
6492
6576
  # resp.logging_configuration.redacted_fields[0].ja3_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
6577
+ # resp.logging_configuration.redacted_fields[0].ja4_fingerprint.fallback_behavior #=> String, one of "MATCH", "NO_MATCH"
6493
6578
  # resp.logging_configuration.managed_by_firewall_manager #=> Boolean
6494
6579
  # resp.logging_configuration.logging_filter.filters #=> Array
6495
6580
  # resp.logging_configuration.logging_filter.filters[0].behavior #=> String, one of "KEEP", "DROP"
@@ -7280,6 +7365,9 @@ module Aws::WAFV2
7280
7365
  # ja3_fingerprint: {
7281
7366
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7282
7367
  # },
7368
+ # ja4_fingerprint: {
7369
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7370
+ # },
7283
7371
  # },
7284
7372
  # text_transformations: [ # required
7285
7373
  # {
@@ -7344,6 +7432,9 @@ module Aws::WAFV2
7344
7432
  # ja3_fingerprint: {
7345
7433
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7346
7434
  # },
7435
+ # ja4_fingerprint: {
7436
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7437
+ # },
7347
7438
  # },
7348
7439
  # text_transformations: [ # required
7349
7440
  # {
@@ -7408,6 +7499,9 @@ module Aws::WAFV2
7408
7499
  # ja3_fingerprint: {
7409
7500
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7410
7501
  # },
7502
+ # ja4_fingerprint: {
7503
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7504
+ # },
7411
7505
  # },
7412
7506
  # text_transformations: [ # required
7413
7507
  # {
@@ -7471,6 +7565,9 @@ module Aws::WAFV2
7471
7565
  # ja3_fingerprint: {
7472
7566
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7473
7567
  # },
7568
+ # ja4_fingerprint: {
7569
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7570
+ # },
7474
7571
  # },
7475
7572
  # comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
7476
7573
  # size: 1, # required
@@ -7619,6 +7716,9 @@ module Aws::WAFV2
7619
7716
  # ja3_fingerprint: {
7620
7717
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7621
7718
  # },
7719
+ # ja4_fingerprint: {
7720
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7721
+ # },
7622
7722
  # },
7623
7723
  # text_transformations: [ # required
7624
7724
  # {
@@ -7692,6 +7792,12 @@ module Aws::WAFV2
7692
7792
  # },
7693
7793
  # ],
7694
7794
  # },
7795
+ # ja3_fingerprint: {
7796
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7797
+ # },
7798
+ # ja4_fingerprint: {
7799
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7800
+ # },
7695
7801
  # },
7696
7802
  # ],
7697
7803
  # },
@@ -7942,6 +8048,9 @@ module Aws::WAFV2
7942
8048
  # ja3_fingerprint: {
7943
8049
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
7944
8050
  # },
8051
+ # ja4_fingerprint: {
8052
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8053
+ # },
7945
8054
  # },
7946
8055
  # text_transformations: [ # required
7947
8056
  # {
@@ -8163,16 +8272,15 @@ module Aws::WAFV2
8163
8272
  # collection.
8164
8273
  #
8165
8274
  # @option params [Types::DataProtectionConfig] :data_protection_config
8166
- # Specifies data protection to apply to the web request data that WAF
8167
- # stores for the web ACL. This is a web ACL level data protection
8168
- # option.
8275
+ # Specifies data protection to apply to the web request data for the web
8276
+ # ACL. This is a web ACL level data protection option.
8169
8277
  #
8170
8278
  # The data protection that you configure for the web ACL alters the data
8171
8279
  # that's available for any other data collection activity, including
8172
- # WAF logging, web ACL request sampling, Amazon Web Services Managed
8173
- # Rules, and Amazon Security Lake data collection and management. Your
8174
- # other option for data protection is in the logging configuration,
8175
- # which only affects logging.
8280
+ # your WAF logging destinations, web ACL request sampling, and Amazon
8281
+ # Security Lake data collection and management. Your other option for
8282
+ # data protection is in the logging configuration, which only affects
8283
+ # logging.
8176
8284
  #
8177
8285
  # @option params [required, String] :lock_token
8178
8286
  # A token used for optimistic locking. WAF returns a token to your `get`
@@ -8348,6 +8456,9 @@ module Aws::WAFV2
8348
8456
  # ja3_fingerprint: {
8349
8457
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8350
8458
  # },
8459
+ # ja4_fingerprint: {
8460
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8461
+ # },
8351
8462
  # },
8352
8463
  # text_transformations: [ # required
8353
8464
  # {
@@ -8412,6 +8523,9 @@ module Aws::WAFV2
8412
8523
  # ja3_fingerprint: {
8413
8524
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8414
8525
  # },
8526
+ # ja4_fingerprint: {
8527
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8528
+ # },
8415
8529
  # },
8416
8530
  # text_transformations: [ # required
8417
8531
  # {
@@ -8476,6 +8590,9 @@ module Aws::WAFV2
8476
8590
  # ja3_fingerprint: {
8477
8591
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8478
8592
  # },
8593
+ # ja4_fingerprint: {
8594
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8595
+ # },
8479
8596
  # },
8480
8597
  # text_transformations: [ # required
8481
8598
  # {
@@ -8539,6 +8656,9 @@ module Aws::WAFV2
8539
8656
  # ja3_fingerprint: {
8540
8657
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8541
8658
  # },
8659
+ # ja4_fingerprint: {
8660
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8661
+ # },
8542
8662
  # },
8543
8663
  # comparison_operator: "EQ", # required, accepts EQ, NE, LE, LT, GE, GT
8544
8664
  # size: 1, # required
@@ -8687,6 +8807,9 @@ module Aws::WAFV2
8687
8807
  # ja3_fingerprint: {
8688
8808
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8689
8809
  # },
8810
+ # ja4_fingerprint: {
8811
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8812
+ # },
8690
8813
  # },
8691
8814
  # text_transformations: [ # required
8692
8815
  # {
@@ -8760,6 +8883,12 @@ module Aws::WAFV2
8760
8883
  # },
8761
8884
  # ],
8762
8885
  # },
8886
+ # ja3_fingerprint: {
8887
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8888
+ # },
8889
+ # ja4_fingerprint: {
8890
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
8891
+ # },
8763
8892
  # },
8764
8893
  # ],
8765
8894
  # },
@@ -9010,6 +9139,9 @@ module Aws::WAFV2
9010
9139
  # ja3_fingerprint: {
9011
9140
  # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
9012
9141
  # },
9142
+ # ja4_fingerprint: {
9143
+ # fallback_behavior: "MATCH", # required, accepts MATCH, NO_MATCH
9144
+ # },
9013
9145
  # },
9014
9146
  # text_transformations: [ # required
9015
9147
  # {
@@ -9185,7 +9317,7 @@ module Aws::WAFV2
9185
9317
  tracer: tracer
9186
9318
  )
9187
9319
  context[:gem_name] = 'aws-sdk-wafv2'
9188
- context[:gem_version] = '1.103.0'
9320
+ context[:gem_version] = '1.104.0'
9189
9321
  Seahorse::Client::Request.new(handlers, context)
9190
9322
  end
9191
9323
 
@@ -190,6 +190,7 @@ module Aws::WAFV2
190
190
  ImmunityTimeProperty = Shapes::StructureShape.new(name: 'ImmunityTimeProperty')
191
191
  InspectionLevel = Shapes::StringShape.new(name: 'InspectionLevel')
192
192
  JA3Fingerprint = Shapes::StructureShape.new(name: 'JA3Fingerprint')
193
+ JA4Fingerprint = Shapes::StructureShape.new(name: 'JA4Fingerprint')
193
194
  JsonBody = Shapes::StructureShape.new(name: 'JsonBody')
194
195
  JsonMatchPattern = Shapes::StructureShape.new(name: 'JsonMatchPattern')
195
196
  JsonMatchScope = Shapes::StringShape.new(name: 'JsonMatchScope')
@@ -296,6 +297,8 @@ module Aws::WAFV2
296
297
  RateLimitHTTPMethod = Shapes::StructureShape.new(name: 'RateLimitHTTPMethod')
297
298
  RateLimitHeader = Shapes::StructureShape.new(name: 'RateLimitHeader')
298
299
  RateLimitIP = Shapes::StructureShape.new(name: 'RateLimitIP')
300
+ RateLimitJA3Fingerprint = Shapes::StructureShape.new(name: 'RateLimitJA3Fingerprint')
301
+ RateLimitJA4Fingerprint = Shapes::StructureShape.new(name: 'RateLimitJA4Fingerprint')
299
302
  RateLimitLabelNamespace = Shapes::StructureShape.new(name: 'RateLimitLabelNamespace')
300
303
  RateLimitQueryArgument = Shapes::StructureShape.new(name: 'RateLimitQueryArgument')
301
304
  RateLimitQueryString = Shapes::StructureShape.new(name: 'RateLimitQueryString')
@@ -755,6 +758,7 @@ module Aws::WAFV2
755
758
  FieldToMatch.add_member(:cookies, Shapes::ShapeRef.new(shape: Cookies, location_name: "Cookies"))
756
759
  FieldToMatch.add_member(:header_order, Shapes::ShapeRef.new(shape: HeaderOrder, location_name: "HeaderOrder"))
757
760
  FieldToMatch.add_member(:ja3_fingerprint, Shapes::ShapeRef.new(shape: JA3Fingerprint, location_name: "JA3Fingerprint"))
761
+ FieldToMatch.add_member(:ja4_fingerprint, Shapes::ShapeRef.new(shape: JA4Fingerprint, location_name: "JA4Fingerprint"))
758
762
  FieldToMatch.struct_class = Types::FieldToMatch
759
763
 
760
764
  FieldToProtect.add_member(:field_type, Shapes::ShapeRef.new(shape: FieldToProtectType, required: true, location_name: "FieldType"))
@@ -966,6 +970,9 @@ module Aws::WAFV2
966
970
  JA3Fingerprint.add_member(:fallback_behavior, Shapes::ShapeRef.new(shape: FallbackBehavior, required: true, location_name: "FallbackBehavior"))
967
971
  JA3Fingerprint.struct_class = Types::JA3Fingerprint
968
972
 
973
+ JA4Fingerprint.add_member(:fallback_behavior, Shapes::ShapeRef.new(shape: FallbackBehavior, required: true, location_name: "FallbackBehavior"))
974
+ JA4Fingerprint.struct_class = Types::JA4Fingerprint
975
+
969
976
  JsonBody.add_member(:match_pattern, Shapes::ShapeRef.new(shape: JsonMatchPattern, required: true, location_name: "MatchPattern"))
970
977
  JsonBody.add_member(:match_scope, Shapes::ShapeRef.new(shape: JsonMatchScope, required: true, location_name: "MatchScope"))
971
978
  JsonBody.add_member(:invalid_fallback_behavior, Shapes::ShapeRef.new(shape: BodyParsingFallbackBehavior, location_name: "InvalidFallbackBehavior"))
@@ -1270,6 +1277,8 @@ module Aws::WAFV2
1270
1277
  RateBasedStatementCustomKey.add_member(:ip, Shapes::ShapeRef.new(shape: RateLimitIP, location_name: "IP"))
1271
1278
  RateBasedStatementCustomKey.add_member(:label_namespace, Shapes::ShapeRef.new(shape: RateLimitLabelNamespace, location_name: "LabelNamespace"))
1272
1279
  RateBasedStatementCustomKey.add_member(:uri_path, Shapes::ShapeRef.new(shape: RateLimitUriPath, location_name: "UriPath"))
1280
+ RateBasedStatementCustomKey.add_member(:ja3_fingerprint, Shapes::ShapeRef.new(shape: RateLimitJA3Fingerprint, location_name: "JA3Fingerprint"))
1281
+ RateBasedStatementCustomKey.add_member(:ja4_fingerprint, Shapes::ShapeRef.new(shape: RateLimitJA4Fingerprint, location_name: "JA4Fingerprint"))
1273
1282
  RateBasedStatementCustomKey.struct_class = Types::RateBasedStatementCustomKey
1274
1283
 
1275
1284
  RateBasedStatementCustomKeys.member = Shapes::ShapeRef.new(shape: RateBasedStatementCustomKey)
@@ -1292,6 +1301,12 @@ module Aws::WAFV2
1292
1301
 
1293
1302
  RateLimitIP.struct_class = Types::RateLimitIP
1294
1303
 
1304
+ RateLimitJA3Fingerprint.add_member(:fallback_behavior, Shapes::ShapeRef.new(shape: FallbackBehavior, required: true, location_name: "FallbackBehavior"))
1305
+ RateLimitJA3Fingerprint.struct_class = Types::RateLimitJA3Fingerprint
1306
+
1307
+ RateLimitJA4Fingerprint.add_member(:fallback_behavior, Shapes::ShapeRef.new(shape: FallbackBehavior, required: true, location_name: "FallbackBehavior"))
1308
+ RateLimitJA4Fingerprint.struct_class = Types::RateLimitJA4Fingerprint
1309
+
1295
1310
  RateLimitLabelNamespace.add_member(:namespace, Shapes::ShapeRef.new(shape: LabelNamespace, required: true, location_name: "Namespace"))
1296
1311
  RateLimitLabelNamespace.struct_class = Types::RateLimitLabelNamespace
1297
1312