aws-sdk-wafv2 1.103.0 → 1.105.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.
@@ -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')
@@ -401,6 +404,7 @@ module Aws::WAFV2
401
404
  UpdateRuleGroupResponse = Shapes::StructureShape.new(name: 'UpdateRuleGroupResponse')
402
405
  UpdateWebACLRequest = Shapes::StructureShape.new(name: 'UpdateWebACLRequest')
403
406
  UpdateWebACLResponse = Shapes::StructureShape.new(name: 'UpdateWebACLResponse')
407
+ UriFragment = Shapes::StructureShape.new(name: 'UriFragment')
404
408
  UriPath = Shapes::StructureShape.new(name: 'UriPath')
405
409
  UsernameField = Shapes::StructureShape.new(name: 'UsernameField')
406
410
  VendorName = Shapes::StringShape.new(name: 'VendorName')
@@ -755,6 +759,8 @@ module Aws::WAFV2
755
759
  FieldToMatch.add_member(:cookies, Shapes::ShapeRef.new(shape: Cookies, location_name: "Cookies"))
756
760
  FieldToMatch.add_member(:header_order, Shapes::ShapeRef.new(shape: HeaderOrder, location_name: "HeaderOrder"))
757
761
  FieldToMatch.add_member(:ja3_fingerprint, Shapes::ShapeRef.new(shape: JA3Fingerprint, location_name: "JA3Fingerprint"))
762
+ FieldToMatch.add_member(:ja4_fingerprint, Shapes::ShapeRef.new(shape: JA4Fingerprint, location_name: "JA4Fingerprint"))
763
+ FieldToMatch.add_member(:uri_fragment, Shapes::ShapeRef.new(shape: UriFragment, location_name: "UriFragment"))
758
764
  FieldToMatch.struct_class = Types::FieldToMatch
759
765
 
760
766
  FieldToProtect.add_member(:field_type, Shapes::ShapeRef.new(shape: FieldToProtectType, required: true, location_name: "FieldType"))
@@ -966,6 +972,9 @@ module Aws::WAFV2
966
972
  JA3Fingerprint.add_member(:fallback_behavior, Shapes::ShapeRef.new(shape: FallbackBehavior, required: true, location_name: "FallbackBehavior"))
967
973
  JA3Fingerprint.struct_class = Types::JA3Fingerprint
968
974
 
975
+ JA4Fingerprint.add_member(:fallback_behavior, Shapes::ShapeRef.new(shape: FallbackBehavior, required: true, location_name: "FallbackBehavior"))
976
+ JA4Fingerprint.struct_class = Types::JA4Fingerprint
977
+
969
978
  JsonBody.add_member(:match_pattern, Shapes::ShapeRef.new(shape: JsonMatchPattern, required: true, location_name: "MatchPattern"))
970
979
  JsonBody.add_member(:match_scope, Shapes::ShapeRef.new(shape: JsonMatchScope, required: true, location_name: "MatchScope"))
971
980
  JsonBody.add_member(:invalid_fallback_behavior, Shapes::ShapeRef.new(shape: BodyParsingFallbackBehavior, location_name: "InvalidFallbackBehavior"))
@@ -1270,6 +1279,8 @@ module Aws::WAFV2
1270
1279
  RateBasedStatementCustomKey.add_member(:ip, Shapes::ShapeRef.new(shape: RateLimitIP, location_name: "IP"))
1271
1280
  RateBasedStatementCustomKey.add_member(:label_namespace, Shapes::ShapeRef.new(shape: RateLimitLabelNamespace, location_name: "LabelNamespace"))
1272
1281
  RateBasedStatementCustomKey.add_member(:uri_path, Shapes::ShapeRef.new(shape: RateLimitUriPath, location_name: "UriPath"))
1282
+ RateBasedStatementCustomKey.add_member(:ja3_fingerprint, Shapes::ShapeRef.new(shape: RateLimitJA3Fingerprint, location_name: "JA3Fingerprint"))
1283
+ RateBasedStatementCustomKey.add_member(:ja4_fingerprint, Shapes::ShapeRef.new(shape: RateLimitJA4Fingerprint, location_name: "JA4Fingerprint"))
1273
1284
  RateBasedStatementCustomKey.struct_class = Types::RateBasedStatementCustomKey
1274
1285
 
1275
1286
  RateBasedStatementCustomKeys.member = Shapes::ShapeRef.new(shape: RateBasedStatementCustomKey)
@@ -1292,6 +1303,12 @@ module Aws::WAFV2
1292
1303
 
1293
1304
  RateLimitIP.struct_class = Types::RateLimitIP
1294
1305
 
1306
+ RateLimitJA3Fingerprint.add_member(:fallback_behavior, Shapes::ShapeRef.new(shape: FallbackBehavior, required: true, location_name: "FallbackBehavior"))
1307
+ RateLimitJA3Fingerprint.struct_class = Types::RateLimitJA3Fingerprint
1308
+
1309
+ RateLimitJA4Fingerprint.add_member(:fallback_behavior, Shapes::ShapeRef.new(shape: FallbackBehavior, required: true, location_name: "FallbackBehavior"))
1310
+ RateLimitJA4Fingerprint.struct_class = Types::RateLimitJA4Fingerprint
1311
+
1295
1312
  RateLimitLabelNamespace.add_member(:namespace, Shapes::ShapeRef.new(shape: LabelNamespace, required: true, location_name: "Namespace"))
1296
1313
  RateLimitLabelNamespace.struct_class = Types::RateLimitLabelNamespace
1297
1314
 
@@ -1618,6 +1635,9 @@ module Aws::WAFV2
1618
1635
  UpdateWebACLResponse.add_member(:next_lock_token, Shapes::ShapeRef.new(shape: LockToken, location_name: "NextLockToken"))
1619
1636
  UpdateWebACLResponse.struct_class = Types::UpdateWebACLResponse
1620
1637
 
1638
+ UriFragment.add_member(:fallback_behavior, Shapes::ShapeRef.new(shape: FallbackBehavior, location_name: "FallbackBehavior"))
1639
+ UriFragment.struct_class = Types::UriFragment
1640
+
1621
1641
  UriPath.struct_class = Types::UriPath
1622
1642
 
1623
1643
  UsernameField.add_member(:identifier, Shapes::ShapeRef.new(shape: FieldIdentifier, required: true, location_name: "Identifier"))
@@ -1413,16 +1413,15 @@ module Aws::WAFV2
1413
1413
  # @return [Types::VisibilityConfig]
1414
1414
  #
1415
1415
  # @!attribute [rw] data_protection_config
1416
- # Specifies data protection to apply to the web request data that WAF
1417
- # stores for the web ACL. This is a web ACL level data protection
1418
- # option.
1416
+ # Specifies data protection to apply to the web request data for the
1417
+ # web ACL. This is a web ACL level data protection option.
1419
1418
  #
1420
1419
  # The data protection that you configure for the web ACL alters the
1421
1420
  # data that's available for any other data collection activity,
1422
- # including WAF logging, web ACL request sampling, Amazon Web Services
1423
- # Managed Rules, and Amazon Security Lake data collection and
1424
- # management. Your other option for data protection is in the logging
1425
- # configuration, which only affects logging.
1421
+ # including your WAF logging destinations, web ACL request sampling,
1422
+ # and Amazon Security Lake data collection and management. Your other
1423
+ # option for data protection is in the logging configuration, which
1424
+ # only affects logging.
1426
1425
  # @return [Types::DataProtectionConfig]
1427
1426
  #
1428
1427
  # @!attribute [rw] tags
@@ -1707,11 +1706,11 @@ module Aws::WAFV2
1707
1706
  # @return [String]
1708
1707
  #
1709
1708
  # @!attribute [rw] exclude_rule_match_details
1710
- # Specifies whether to also protect any rule match details from the
1711
- # web ACL logs when applying data protection this field type and keys.
1712
- # WAF logs these details for non-terminating matching rules and for
1713
- # the terminating matching rule. For additional information, see [Log
1714
- # fields for web ACL traffic][1] in the *WAF Developer Guide*.
1709
+ # Specifies whether to also exclude any rule match details from the
1710
+ # data protection you have enabled for a given field. WAF logs these
1711
+ # details for non-terminating matching rules and for the terminating
1712
+ # matching rule. For additional information, see [Log fields for web
1713
+ # ACL traffic][1] in the *WAF Developer Guide*.
1715
1714
  #
1716
1715
  # Default: `FALSE`
1717
1716
  #
@@ -1721,9 +1720,10 @@ module Aws::WAFV2
1721
1720
  # @return [Boolean]
1722
1721
  #
1723
1722
  # @!attribute [rw] exclude_rate_based_details
1724
- # Specifies whether to also protect any rate-based rule details from
1725
- # the web ACL logs when applying data protection for this field type
1726
- # and keys. For additional information, see the log field
1723
+ # Specifies whether to also exclude any rate-based rule details from
1724
+ # the data protection you have enabled for a given field. If you
1725
+ # specify this exception, RateBasedDetails will show the value of the
1726
+ # field. For additional information, see the log field
1727
1727
  # `rateBasedRuleList` at [Log fields for web ACL traffic][1] in the
1728
1728
  # *WAF Developer Guide*.
1729
1729
  #
@@ -1745,16 +1745,15 @@ module Aws::WAFV2
1745
1745
  include Aws::Structure
1746
1746
  end
1747
1747
 
1748
- # Specifies data protection to apply to the web request data that WAF
1749
- # stores for the web ACL. This is a web ACL level data protection
1750
- # option.
1748
+ # Specifies data protection to apply to the web request data for the web
1749
+ # ACL. This is a web ACL level data protection option.
1751
1750
  #
1752
1751
  # The data protection that you configure for the web ACL alters the data
1753
1752
  # that's available for any other data collection activity, including
1754
- # WAF logging, web ACL request sampling, Amazon Web Services Managed
1755
- # Rules, and Amazon Security Lake data collection and management. Your
1756
- # other option for data protection is in the logging configuration,
1757
- # which only affects logging.
1753
+ # your WAF logging destinations, web ACL request sampling, and Amazon
1754
+ # Security Lake data collection and management. Your other option for
1755
+ # data protection is in the logging configuration, which only affects
1756
+ # logging.
1758
1757
  #
1759
1758
  # This is part of the data protection configuration for a web ACL.
1760
1759
  #
@@ -2619,6 +2618,49 @@ module Aws::WAFV2
2619
2618
  # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/logging-fields.html
2620
2619
  # @return [Types::JA3Fingerprint]
2621
2620
  #
2621
+ # @!attribute [rw] ja4_fingerprint
2622
+ # Available for use with Amazon CloudFront distributions and
2623
+ # Application Load Balancers. Match against the request's JA4
2624
+ # fingerprint. The JA4 fingerprint is a 36-character hash derived from
2625
+ # the TLS Client Hello of an incoming request. This fingerprint serves
2626
+ # as a unique identifier for the client's TLS configuration. WAF
2627
+ # calculates and logs this fingerprint for each request that has
2628
+ # enough TLS Client Hello information for the calculation. Almost all
2629
+ # web requests include this information.
2630
+ #
2631
+ # <note markdown="1"> You can use this choice only with a string match
2632
+ # `ByteMatchStatement` with the `PositionalConstraint` set to
2633
+ # `EXACTLY`.
2634
+ #
2635
+ # </note>
2636
+ #
2637
+ # You can obtain the JA4 fingerprint for client requests from the web
2638
+ # ACL logs. If WAF is able to calculate the fingerprint, it includes
2639
+ # it in the logs. For information about the logging fields, see [Log
2640
+ # fields][1] in the *WAF Developer Guide*.
2641
+ #
2642
+ # Provide the JA4 fingerprint string from the logs in your string
2643
+ # match statement specification, to match with any future requests
2644
+ # that have the same TLS configuration.
2645
+ #
2646
+ #
2647
+ #
2648
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/logging-fields.html
2649
+ # @return [Types::JA4Fingerprint]
2650
+ #
2651
+ # @!attribute [rw] uri_fragment
2652
+ # Inspect fragments of the request URI. You must configure scope and
2653
+ # pattern matching filters in the `UriFragment` object, to define the
2654
+ # fragment of a URI that WAF inspects.
2655
+ #
2656
+ # Only the first 8 KB (8192 bytes) of a request's URI fragments and
2657
+ # only the first 200 URI fragments are forwarded to WAF for inspection
2658
+ # by the underlying host service. You must configure how to handle any
2659
+ # oversize URI fragment content in the `UriFragment` object. WAF
2660
+ # applies the pattern matching filters to the cookies that it receives
2661
+ # from the underlying host service.
2662
+ # @return [Types::UriFragment]
2663
+ #
2622
2664
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/FieldToMatch AWS API Documentation
2623
2665
  #
2624
2666
  class FieldToMatch < Struct.new(
@@ -2633,7 +2675,9 @@ module Aws::WAFV2
2633
2675
  :headers,
2634
2676
  :cookies,
2635
2677
  :header_order,
2636
- :ja3_fingerprint)
2678
+ :ja3_fingerprint,
2679
+ :ja4_fingerprint,
2680
+ :uri_fragment)
2637
2681
  SENSITIVE = []
2638
2682
  include Aws::Structure
2639
2683
  end
@@ -4123,6 +4167,54 @@ module Aws::WAFV2
4123
4167
  include Aws::Structure
4124
4168
  end
4125
4169
 
4170
+ # Available for use with Amazon CloudFront distributions and Application
4171
+ # Load Balancers. Match against the request's JA4 fingerprint. The JA4
4172
+ # fingerprint is a 36-character hash derived from the TLS Client Hello
4173
+ # of an incoming request. This fingerprint serves as a unique identifier
4174
+ # for the client's TLS configuration. WAF calculates and logs this
4175
+ # fingerprint for each request that has enough TLS Client Hello
4176
+ # information for the calculation. Almost all web requests include this
4177
+ # information.
4178
+ #
4179
+ # <note markdown="1"> You can use this choice only with a string match `ByteMatchStatement`
4180
+ # with the `PositionalConstraint` set to `EXACTLY`.
4181
+ #
4182
+ # </note>
4183
+ #
4184
+ # You can obtain the JA4 fingerprint for client requests from the web
4185
+ # ACL logs. If WAF is able to calculate the fingerprint, it includes it
4186
+ # in the logs. For information about the logging fields, see [Log
4187
+ # fields][1] in the *WAF Developer Guide*.
4188
+ #
4189
+ # Provide the JA4 fingerprint string from the logs in your string match
4190
+ # statement specification, to match with any future requests that have
4191
+ # the same TLS configuration.
4192
+ #
4193
+ #
4194
+ #
4195
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/logging-fields.html
4196
+ #
4197
+ # @!attribute [rw] fallback_behavior
4198
+ # The match status to assign to the web request if the request
4199
+ # doesn't have a JA4 fingerprint.
4200
+ #
4201
+ # You can specify the following fallback behaviors:
4202
+ #
4203
+ # * `MATCH` - Treat the web request as matching the rule statement.
4204
+ # WAF applies the rule action to the request.
4205
+ #
4206
+ # * `NO_MATCH` - Treat the web request as not matching the rule
4207
+ # statement.
4208
+ # @return [String]
4209
+ #
4210
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/JA4Fingerprint AWS API Documentation
4211
+ #
4212
+ class JA4Fingerprint < Struct.new(
4213
+ :fallback_behavior)
4214
+ SENSITIVE = []
4215
+ include Aws::Structure
4216
+ end
4217
+
4126
4218
  # Inspect the body of the web request as JSON. The body immediately
4127
4219
  # follows the request headers.
4128
4220
  #
@@ -6588,6 +6680,18 @@ module Aws::WAFV2
6588
6680
  # aggregation instance.
6589
6681
  # @return [Types::RateLimitUriPath]
6590
6682
  #
6683
+ # @!attribute [rw] ja3_fingerprint
6684
+ # Use the request's JA3 fingerprint as an aggregate key. If you use a
6685
+ # single JA3 fingerprint as your custom key, then each value fully
6686
+ # defines an aggregation instance.
6687
+ # @return [Types::RateLimitJA3Fingerprint]
6688
+ #
6689
+ # @!attribute [rw] ja4_fingerprint
6690
+ # Use the request's JA4 fingerprint as an aggregate key. If you use a
6691
+ # single JA4 fingerprint as your custom key, then each value fully
6692
+ # defines an aggregation instance.
6693
+ # @return [Types::RateLimitJA4Fingerprint]
6694
+ #
6591
6695
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RateBasedStatementCustomKey AWS API Documentation
6592
6696
  #
6593
6697
  class RateBasedStatementCustomKey < Struct.new(
@@ -6599,7 +6703,9 @@ module Aws::WAFV2
6599
6703
  :forwarded_ip,
6600
6704
  :ip,
6601
6705
  :label_namespace,
6602
- :uri_path)
6706
+ :uri_path,
6707
+ :ja3_fingerprint,
6708
+ :ja4_fingerprint)
6603
6709
  SENSITIVE = []
6604
6710
  include Aws::Structure
6605
6711
  end
@@ -6757,6 +6863,60 @@ module Aws::WAFV2
6757
6863
  #
6758
6864
  class RateLimitIP < Aws::EmptyStructure; end
6759
6865
 
6866
+ # Use the request's JA3 fingerprint derived from the TLS Client Hello
6867
+ # of an incoming request as an aggregate key. If you use a single JA3
6868
+ # fingerprint as your custom key, then each value fully defines an
6869
+ # aggregation instance.
6870
+ #
6871
+ # @!attribute [rw] fallback_behavior
6872
+ # The match status to assign to the web request if there is
6873
+ # insufficient TSL Client Hello information to compute the JA3
6874
+ # fingerprint.
6875
+ #
6876
+ # You can specify the following fallback behaviors:
6877
+ #
6878
+ # * `MATCH` - Treat the web request as matching the rule statement.
6879
+ # WAF applies the rule action to the request.
6880
+ #
6881
+ # * `NO_MATCH` - Treat the web request as not matching the rule
6882
+ # statement.
6883
+ # @return [String]
6884
+ #
6885
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RateLimitJA3Fingerprint AWS API Documentation
6886
+ #
6887
+ class RateLimitJA3Fingerprint < Struct.new(
6888
+ :fallback_behavior)
6889
+ SENSITIVE = []
6890
+ include Aws::Structure
6891
+ end
6892
+
6893
+ # Use the request's JA4 fingerprint derived from the TLS Client Hello
6894
+ # of an incoming request as an aggregate key. If you use a single JA4
6895
+ # fingerprint as your custom key, then each value fully defines an
6896
+ # aggregation instance.
6897
+ #
6898
+ # @!attribute [rw] fallback_behavior
6899
+ # The match status to assign to the web request if there is
6900
+ # insufficient TSL Client Hello information to compute the JA4
6901
+ # fingerprint.
6902
+ #
6903
+ # You can specify the following fallback behaviors:
6904
+ #
6905
+ # * `MATCH` - Treat the web request as matching the rule statement.
6906
+ # WAF applies the rule action to the request.
6907
+ #
6908
+ # * `NO_MATCH` - Treat the web request as not matching the rule
6909
+ # statement.
6910
+ # @return [String]
6911
+ #
6912
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RateLimitJA4Fingerprint AWS API Documentation
6913
+ #
6914
+ class RateLimitJA4Fingerprint < Struct.new(
6915
+ :fallback_behavior)
6916
+ SENSITIVE = []
6917
+ include Aws::Structure
6918
+ end
6919
+
6760
6920
  # Specifies a label namespace to use as an aggregate key for a
6761
6921
  # rate-based rule. Each distinct fully qualified label name that has the
6762
6922
  # specified label namespace contributes to the aggregation instance. If
@@ -9201,16 +9361,15 @@ module Aws::WAFV2
9201
9361
  # @return [Types::VisibilityConfig]
9202
9362
  #
9203
9363
  # @!attribute [rw] data_protection_config
9204
- # Specifies data protection to apply to the web request data that WAF
9205
- # stores for the web ACL. This is a web ACL level data protection
9206
- # option.
9364
+ # Specifies data protection to apply to the web request data for the
9365
+ # web ACL. This is a web ACL level data protection option.
9207
9366
  #
9208
9367
  # The data protection that you configure for the web ACL alters the
9209
9368
  # data that's available for any other data collection activity,
9210
- # including WAF logging, web ACL request sampling, Amazon Web Services
9211
- # Managed Rules, and Amazon Security Lake data collection and
9212
- # management. Your other option for data protection is in the logging
9213
- # configuration, which only affects logging.
9369
+ # including your WAF logging destinations, web ACL request sampling,
9370
+ # and Amazon Security Lake data collection and management. Your other
9371
+ # option for data protection is in the logging configuration, which
9372
+ # only affects logging.
9214
9373
  # @return [Types::DataProtectionConfig]
9215
9374
  #
9216
9375
  # @!attribute [rw] lock_token
@@ -9333,6 +9492,55 @@ module Aws::WAFV2
9333
9492
  include Aws::Structure
9334
9493
  end
9335
9494
 
9495
+ # Inspect fragments of the request URI. You can specify the parts of the
9496
+ # URI fragment to inspect and you can narrow the set of URI fragments to
9497
+ # inspect by including or excluding specific keys.
9498
+ #
9499
+ # This is used to indicate the web request component to inspect, in the
9500
+ # FieldToMatch specification.
9501
+ #
9502
+ # Example JSON: `"UriFragment": { "MatchPattern": { "All": {} },
9503
+ # "MatchScope": "KEY", "OversizeHandling": "MATCH" }`
9504
+ #
9505
+ # @!attribute [rw] fallback_behavior
9506
+ # What WAF should do if it fails to completely parse the JSON body.
9507
+ # The options are the following:
9508
+ #
9509
+ # * `EVALUATE_AS_STRING` - Inspect the body as plain text. WAF applies
9510
+ # the text transformations and inspection criteria that you defined
9511
+ # for the JSON inspection to the body text string.
9512
+ #
9513
+ # * `MATCH` - Treat the web request as matching the rule statement.
9514
+ # WAF applies the rule action to the request.
9515
+ #
9516
+ # * `NO_MATCH` - Treat the web request as not matching the rule
9517
+ # statement.
9518
+ #
9519
+ # If you don't provide this setting, WAF parses and evaluates the
9520
+ # content only up to the first parsing failure that it encounters.
9521
+ #
9522
+ # Example JSON: `{ "UriFragment": { "FallbackBehavior": "MATCH"} }`
9523
+ #
9524
+ # <note markdown="1"> WAF parsing doesn't fully validate the input JSON string, so
9525
+ # parsing can succeed even for invalid JSON. When parsing succeeds,
9526
+ # WAF doesn't apply the fallback behavior. For more information, see
9527
+ # [JSON body][1] in the *WAF Developer Guide*.
9528
+ #
9529
+ # </note>
9530
+ #
9531
+ #
9532
+ #
9533
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-statement-fields-list.html#waf-rule-statement-request-component-json-body
9534
+ # @return [String]
9535
+ #
9536
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/UriFragment AWS API Documentation
9537
+ #
9538
+ class UriFragment < Struct.new(
9539
+ :fallback_behavior)
9540
+ SENSITIVE = []
9541
+ include Aws::Structure
9542
+ end
9543
+
9336
9544
  # Inspect the path component of the URI of the web request. This is the
9337
9545
  # part of the web request that identifies a resource. For example,
9338
9546
  # `/images/daily-ad.jpg`.
@@ -9883,16 +10091,15 @@ module Aws::WAFV2
9883
10091
  # @return [Types::VisibilityConfig]
9884
10092
  #
9885
10093
  # @!attribute [rw] data_protection_config
9886
- # Specifies data protection to apply to the web request data that WAF
9887
- # stores for the web ACL. This is a web ACL level data protection
9888
- # option.
10094
+ # Specifies data protection to apply to the web request data for the
10095
+ # web ACL. This is a web ACL level data protection option.
9889
10096
  #
9890
10097
  # The data protection that you configure for the web ACL alters the
9891
10098
  # data that's available for any other data collection activity,
9892
- # including WAF logging, web ACL request sampling, Amazon Web Services
9893
- # Managed Rules, and Amazon Security Lake data collection and
9894
- # management. Your other option for data protection is in the logging
9895
- # configuration, which only affects logging.
10099
+ # including your WAF logging destinations, web ACL request sampling,
10100
+ # and Amazon Security Lake data collection and management. Your other
10101
+ # option for data protection is in the logging configuration, which
10102
+ # only affects logging.
9896
10103
  # @return [Types::DataProtectionConfig]
9897
10104
  #
9898
10105
  # @!attribute [rw] capacity
data/lib/aws-sdk-wafv2.rb CHANGED
@@ -54,7 +54,7 @@ module Aws::WAFV2
54
54
  autoload :EndpointProvider, 'aws-sdk-wafv2/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-wafv2/endpoints'
56
56
 
57
- GEM_VERSION = '1.103.0'
57
+ GEM_VERSION = '1.105.0'
58
58
 
59
59
  end
60
60