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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-wafv2/client.rb +249 -15
- data/lib/aws-sdk-wafv2/client_api.rb +20 -0
- data/lib/aws-sdk-wafv2/types.rb +245 -38
- data/lib/aws-sdk-wafv2.rb +1 -1
- data/sig/client.rbs +216 -0
- data/sig/types.rbs +24 -0
- metadata +2 -2
@@ -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"))
|
data/lib/aws-sdk-wafv2/types.rb
CHANGED
@@ -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
|
1417
|
-
#
|
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,
|
1423
|
-
#
|
1424
|
-
#
|
1425
|
-
#
|
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
|
1711
|
-
#
|
1712
|
-
#
|
1713
|
-
#
|
1714
|
-
#
|
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
|
1725
|
-
# the
|
1726
|
-
#
|
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
|
1749
|
-
#
|
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
|
1755
|
-
#
|
1756
|
-
#
|
1757
|
-
#
|
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
|
9205
|
-
#
|
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,
|
9211
|
-
#
|
9212
|
-
#
|
9213
|
-
#
|
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
|
9887
|
-
#
|
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,
|
9893
|
-
#
|
9894
|
-
#
|
9895
|
-
#
|
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
|