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.
@@ -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,36 @@ 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
+ #
2622
2651
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/FieldToMatch AWS API Documentation
2623
2652
  #
2624
2653
  class FieldToMatch < Struct.new(
@@ -2633,7 +2662,8 @@ module Aws::WAFV2
2633
2662
  :headers,
2634
2663
  :cookies,
2635
2664
  :header_order,
2636
- :ja3_fingerprint)
2665
+ :ja3_fingerprint,
2666
+ :ja4_fingerprint)
2637
2667
  SENSITIVE = []
2638
2668
  include Aws::Structure
2639
2669
  end
@@ -4123,6 +4153,54 @@ module Aws::WAFV2
4123
4153
  include Aws::Structure
4124
4154
  end
4125
4155
 
4156
+ # Available for use with Amazon CloudFront distributions and Application
4157
+ # Load Balancers. Match against the request's JA4 fingerprint. The JA4
4158
+ # fingerprint is a 36-character hash derived from the TLS Client Hello
4159
+ # of an incoming request. This fingerprint serves as a unique identifier
4160
+ # for the client's TLS configuration. WAF calculates and logs this
4161
+ # fingerprint for each request that has enough TLS Client Hello
4162
+ # information for the calculation. Almost all web requests include this
4163
+ # information.
4164
+ #
4165
+ # <note markdown="1"> You can use this choice only with a string match `ByteMatchStatement`
4166
+ # with the `PositionalConstraint` set to `EXACTLY`.
4167
+ #
4168
+ # </note>
4169
+ #
4170
+ # You can obtain the JA4 fingerprint for client requests from the web
4171
+ # ACL logs. If WAF is able to calculate the fingerprint, it includes it
4172
+ # in the logs. For information about the logging fields, see [Log
4173
+ # fields][1] in the *WAF Developer Guide*.
4174
+ #
4175
+ # Provide the JA4 fingerprint string from the logs in your string match
4176
+ # statement specification, to match with any future requests that have
4177
+ # the same TLS configuration.
4178
+ #
4179
+ #
4180
+ #
4181
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/logging-fields.html
4182
+ #
4183
+ # @!attribute [rw] fallback_behavior
4184
+ # The match status to assign to the web request if the request
4185
+ # doesn't have a JA4 fingerprint.
4186
+ #
4187
+ # You can specify the following fallback behaviors:
4188
+ #
4189
+ # * `MATCH` - Treat the web request as matching the rule statement.
4190
+ # WAF applies the rule action to the request.
4191
+ #
4192
+ # * `NO_MATCH` - Treat the web request as not matching the rule
4193
+ # statement.
4194
+ # @return [String]
4195
+ #
4196
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/JA4Fingerprint AWS API Documentation
4197
+ #
4198
+ class JA4Fingerprint < Struct.new(
4199
+ :fallback_behavior)
4200
+ SENSITIVE = []
4201
+ include Aws::Structure
4202
+ end
4203
+
4126
4204
  # Inspect the body of the web request as JSON. The body immediately
4127
4205
  # follows the request headers.
4128
4206
  #
@@ -6588,6 +6666,18 @@ module Aws::WAFV2
6588
6666
  # aggregation instance.
6589
6667
  # @return [Types::RateLimitUriPath]
6590
6668
  #
6669
+ # @!attribute [rw] ja3_fingerprint
6670
+ # Use the request's JA3 fingerprint as an aggregate key. If you use a
6671
+ # single JA3 fingerprint as your custom key, then each value fully
6672
+ # defines an aggregation instance.
6673
+ # @return [Types::RateLimitJA3Fingerprint]
6674
+ #
6675
+ # @!attribute [rw] ja4_fingerprint
6676
+ # Use the request's JA4 fingerprint as an aggregate key. If you use a
6677
+ # single JA4 fingerprint as your custom key, then each value fully
6678
+ # defines an aggregation instance.
6679
+ # @return [Types::RateLimitJA4Fingerprint]
6680
+ #
6591
6681
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RateBasedStatementCustomKey AWS API Documentation
6592
6682
  #
6593
6683
  class RateBasedStatementCustomKey < Struct.new(
@@ -6599,7 +6689,9 @@ module Aws::WAFV2
6599
6689
  :forwarded_ip,
6600
6690
  :ip,
6601
6691
  :label_namespace,
6602
- :uri_path)
6692
+ :uri_path,
6693
+ :ja3_fingerprint,
6694
+ :ja4_fingerprint)
6603
6695
  SENSITIVE = []
6604
6696
  include Aws::Structure
6605
6697
  end
@@ -6757,6 +6849,60 @@ module Aws::WAFV2
6757
6849
  #
6758
6850
  class RateLimitIP < Aws::EmptyStructure; end
6759
6851
 
6852
+ # Use the request's JA3 fingerprint derived from the TLS Client Hello
6853
+ # of an incoming request as an aggregate key. If you use a single JA3
6854
+ # fingerprint as your custom key, then each value fully defines an
6855
+ # aggregation instance.
6856
+ #
6857
+ # @!attribute [rw] fallback_behavior
6858
+ # The match status to assign to the web request if there is
6859
+ # insufficient TSL Client Hello information to compute the JA3
6860
+ # fingerprint.
6861
+ #
6862
+ # You can specify the following fallback behaviors:
6863
+ #
6864
+ # * `MATCH` - Treat the web request as matching the rule statement.
6865
+ # WAF applies the rule action to the request.
6866
+ #
6867
+ # * `NO_MATCH` - Treat the web request as not matching the rule
6868
+ # statement.
6869
+ # @return [String]
6870
+ #
6871
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RateLimitJA3Fingerprint AWS API Documentation
6872
+ #
6873
+ class RateLimitJA3Fingerprint < Struct.new(
6874
+ :fallback_behavior)
6875
+ SENSITIVE = []
6876
+ include Aws::Structure
6877
+ end
6878
+
6879
+ # Use the request's JA4 fingerprint derived from the TLS Client Hello
6880
+ # of an incoming request as an aggregate key. If you use a single JA4
6881
+ # fingerprint as your custom key, then each value fully defines an
6882
+ # aggregation instance.
6883
+ #
6884
+ # @!attribute [rw] fallback_behavior
6885
+ # The match status to assign to the web request if there is
6886
+ # insufficient TSL Client Hello information to compute the JA4
6887
+ # fingerprint.
6888
+ #
6889
+ # You can specify the following fallback behaviors:
6890
+ #
6891
+ # * `MATCH` - Treat the web request as matching the rule statement.
6892
+ # WAF applies the rule action to the request.
6893
+ #
6894
+ # * `NO_MATCH` - Treat the web request as not matching the rule
6895
+ # statement.
6896
+ # @return [String]
6897
+ #
6898
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RateLimitJA4Fingerprint AWS API Documentation
6899
+ #
6900
+ class RateLimitJA4Fingerprint < Struct.new(
6901
+ :fallback_behavior)
6902
+ SENSITIVE = []
6903
+ include Aws::Structure
6904
+ end
6905
+
6760
6906
  # Specifies a label namespace to use as an aggregate key for a
6761
6907
  # rate-based rule. Each distinct fully qualified label name that has the
6762
6908
  # specified label namespace contributes to the aggregation instance. If
@@ -9201,16 +9347,15 @@ module Aws::WAFV2
9201
9347
  # @return [Types::VisibilityConfig]
9202
9348
  #
9203
9349
  # @!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.
9350
+ # Specifies data protection to apply to the web request data for the
9351
+ # web ACL. This is a web ACL level data protection option.
9207
9352
  #
9208
9353
  # The data protection that you configure for the web ACL alters the
9209
9354
  # 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.
9355
+ # including your WAF logging destinations, web ACL request sampling,
9356
+ # and Amazon Security Lake data collection and management. Your other
9357
+ # option for data protection is in the logging configuration, which
9358
+ # only affects logging.
9214
9359
  # @return [Types::DataProtectionConfig]
9215
9360
  #
9216
9361
  # @!attribute [rw] lock_token
@@ -9883,16 +10028,15 @@ module Aws::WAFV2
9883
10028
  # @return [Types::VisibilityConfig]
9884
10029
  #
9885
10030
  # @!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.
10031
+ # Specifies data protection to apply to the web request data for the
10032
+ # web ACL. This is a web ACL level data protection option.
9889
10033
  #
9890
10034
  # The data protection that you configure for the web ACL alters the
9891
10035
  # 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.
10036
+ # including your WAF logging destinations, web ACL request sampling,
10037
+ # and Amazon Security Lake data collection and management. Your other
10038
+ # option for data protection is in the logging configuration, which
10039
+ # only affects logging.
9896
10040
  # @return [Types::DataProtectionConfig]
9897
10041
  #
9898
10042
  # @!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.104.0'
58
58
 
59
59
  end
60
60