aws-sdk-wafv2 1.109.0 → 1.111.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.
@@ -55,6 +55,16 @@ module Aws::WAFV2
55
55
  # rule group, `AWSManagedRulesACFPRuleSet`. This configuration is used
56
56
  # in `ManagedRuleGroupConfig`.
57
57
  #
58
+ # For additional information about this and the other intelligent threat
59
+ # mitigation rule groups, see [Intelligent threat mitigation in WAF][1]
60
+ # and [Amazon Web Services Managed Rules rule groups list][2] in the
61
+ # *WAF Developer Guide*.
62
+ #
63
+ #
64
+ #
65
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-managed-protections
66
+ # [2]: https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-list
67
+ #
58
68
  # @!attribute [rw] creation_path
59
69
  # The path of the account creation endpoint for your application. This
60
70
  # is the page on your website that accepts the completed registration
@@ -131,6 +141,16 @@ module Aws::WAFV2
131
141
  # group, `AWSManagedRulesATPRuleSet`. This configuration is used in
132
142
  # `ManagedRuleGroupConfig`.
133
143
  #
144
+ # For additional information about this and the other intelligent threat
145
+ # mitigation rule groups, see [Intelligent threat mitigation in WAF][1]
146
+ # and [Amazon Web Services Managed Rules rule groups list][2] in the
147
+ # *WAF Developer Guide*.
148
+ #
149
+ #
150
+ #
151
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-managed-protections
152
+ # [2]: https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-list
153
+ #
134
154
  # @!attribute [rw] login_path
135
155
  # The path of the login endpoint for your application. For example,
136
156
  # for the URL `https://example.com/web/login`, you would provide the
@@ -181,10 +201,75 @@ module Aws::WAFV2
181
201
  include Aws::Structure
182
202
  end
183
203
 
204
+ # Configures the use of the anti-DDoS managed rule group,
205
+ # `AWSManagedRulesAntiDDoSRuleSet`. This configuration is used in
206
+ # `ManagedRuleGroupConfig`.
207
+ #
208
+ # The configuration that you provide here determines whether and how the
209
+ # rules in the rule group are used.
210
+ #
211
+ # For additional information about this and the other intelligent threat
212
+ # mitigation rule groups, see [Intelligent threat mitigation in WAF][1]
213
+ # and [Amazon Web Services Managed Rules rule groups list][2] in the
214
+ # *WAF Developer Guide*.
215
+ #
216
+ #
217
+ #
218
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-managed-protections
219
+ # [2]: https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-list
220
+ #
221
+ # @!attribute [rw] client_side_action_config
222
+ # Configures the request handling that's applied by the managed rule
223
+ # group rules `ChallengeAllDuringEvent` and `ChallengeDDoSRequests`
224
+ # during a distributed denial of service (DDoS) attack.
225
+ # @return [Types::ClientSideActionConfig]
226
+ #
227
+ # @!attribute [rw] sensitivity_to_block
228
+ # The sensitivity that the rule group rule `DDoSRequests` uses when
229
+ # matching against the DDoS suspicion labeling on a request. The
230
+ # managed rule group adds the labeling during DDoS events, before the
231
+ # `DDoSRequests` rule runs.
232
+ #
233
+ # The higher the sensitivity, the more levels of labeling that the
234
+ # rule matches:
235
+ #
236
+ # * Low sensitivity is less sensitive, causing the rule to match only
237
+ # on the most likely participants in an attack, which are the
238
+ # requests with the high suspicion label
239
+ # `awswaf:managed:aws:anti-ddos:high-suspicion-ddos-request`.
240
+ #
241
+ # * Medium sensitivity causes the rule to match on the medium and high
242
+ # suspicion labels.
243
+ #
244
+ # * High sensitivity causes the rule to match on all of the suspicion
245
+ # labels: low, medium, and high.
246
+ #
247
+ # Default: `LOW`
248
+ # @return [String]
249
+ #
250
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/AWSManagedRulesAntiDDoSRuleSet AWS API Documentation
251
+ #
252
+ class AWSManagedRulesAntiDDoSRuleSet < Struct.new(
253
+ :client_side_action_config,
254
+ :sensitivity_to_block)
255
+ SENSITIVE = []
256
+ include Aws::Structure
257
+ end
258
+
184
259
  # Details for your use of the Bot Control managed rule group,
185
260
  # `AWSManagedRulesBotControlRuleSet`. This configuration is used in
186
261
  # `ManagedRuleGroupConfig`.
187
262
  #
263
+ # For additional information about this and the other intelligent threat
264
+ # mitigation rule groups, see [Intelligent threat mitigation in WAF][1]
265
+ # and [Amazon Web Services Managed Rules rule groups list][2] in the
266
+ # *WAF Developer Guide*.
267
+ #
268
+ #
269
+ #
270
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-managed-protections
271
+ # [2]: https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-list
272
+ #
188
273
  # @!attribute [rw] inspection_level
189
274
  # The inspection level to use for the Bot Control rule group. The
190
275
  # common level is the least expensive. The targeted level includes all
@@ -361,6 +446,41 @@ module Aws::WAFV2
361
446
  include Aws::Structure
362
447
  end
363
448
 
449
+ # A rule statement that inspects web traffic based on the Autonomous
450
+ # System Number (ASN) associated with the request's IP address.
451
+ #
452
+ # For additional details, see [ASN match rule statement][1] in the [WAF
453
+ # Developer Guide][2].
454
+ #
455
+ #
456
+ #
457
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-statement-type-asn-match.html
458
+ # [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
459
+ #
460
+ # @!attribute [rw] asn_list
461
+ # Contains one or more Autonomous System Numbers (ASNs). ASNs are
462
+ # unique identifiers assigned to large internet networks managed by
463
+ # organizations such as internet service providers, enterprises,
464
+ # universities, or government agencies.
465
+ # @return [Array<Integer>]
466
+ #
467
+ # @!attribute [rw] forwarded_ip_config
468
+ # The configuration for inspecting IP addresses to match against an
469
+ # ASN in an HTTP header that you specify, instead of using the IP
470
+ # address that's reported by the web request origin. Commonly, this
471
+ # is the X-Forwarded-For (XFF) header, but you can specify any header
472
+ # name.
473
+ # @return [Types::ForwardedIPConfig]
474
+ #
475
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/AsnMatchStatement AWS API Documentation
476
+ #
477
+ class AsnMatchStatement < Struct.new(
478
+ :asn_list,
479
+ :forwarded_ip_config)
480
+ SENSITIVE = []
481
+ include Aws::Structure
482
+ end
483
+
364
484
  # @!attribute [rw] web_acl_arn
365
485
  # The Amazon Resource Name (ARN) of the web ACL that you want to
366
486
  # associate with the resource.
@@ -918,6 +1038,135 @@ module Aws::WAFV2
918
1038
  include Aws::Structure
919
1039
  end
920
1040
 
1041
+ # This is part of the `AWSManagedRulesAntiDDoSRuleSet`
1042
+ # `ClientSideActionConfig` configuration in `ManagedRuleGroupConfig`.
1043
+ #
1044
+ # @!attribute [rw] usage_of_action
1045
+ # Determines whether to use the `AWSManagedRulesAntiDDoSRuleSet` rules
1046
+ # `ChallengeAllDuringEvent` and `ChallengeDDoSRequests` in the rule
1047
+ # group evaluation and the related label
1048
+ # `awswaf:managed:aws:anti-ddos:challengeable-request`.
1049
+ #
1050
+ # * If usage is enabled:
1051
+ #
1052
+ # * The managed rule group adds the label
1053
+ # `awswaf:managed:aws:anti-ddos:challengeable-request` to any web
1054
+ # request whose URL does *NOT* match the regular expressions
1055
+ # provided in the `ClientSideAction` setting
1056
+ # `ExemptUriRegularExpressions`.
1057
+ #
1058
+ # * The two rules are evaluated against web requests for protected
1059
+ # resources that are experiencing a DDoS attack. The two rules
1060
+ # only apply their action to matching requests that have the label
1061
+ # `awswaf:managed:aws:anti-ddos:challengeable-request`.
1062
+ # * If usage is disabled:
1063
+ #
1064
+ # * The managed rule group doesn't add the label
1065
+ # `awswaf:managed:aws:anti-ddos:challengeable-request` to any web
1066
+ # requests.
1067
+ #
1068
+ # * The two rules are not evaluated.
1069
+ #
1070
+ # * None of the other `ClientSideAction` settings have any effect.
1071
+ #
1072
+ # <note markdown="1"> This setting only enables or disables the use of the two anti-DDOS
1073
+ # rules `ChallengeAllDuringEvent` and `ChallengeDDoSRequests` in the
1074
+ # anti-DDoS managed rule group.
1075
+ #
1076
+ # This setting doesn't alter the action setting in the two rules. To
1077
+ # override the actions used by the rules `ChallengeAllDuringEvent` and
1078
+ # `ChallengeDDoSRequests`, enable this setting, and then override the
1079
+ # rule actions in the usual way, in your managed rule group
1080
+ # configuration.
1081
+ #
1082
+ # </note>
1083
+ # @return [String]
1084
+ #
1085
+ # @!attribute [rw] sensitivity
1086
+ # The sensitivity that the rule group rule `ChallengeDDoSRequests`
1087
+ # uses when matching against the DDoS suspicion labeling on a request.
1088
+ # The managed rule group adds the labeling during DDoS events, before
1089
+ # the `ChallengeDDoSRequests` rule runs.
1090
+ #
1091
+ # The higher the sensitivity, the more levels of labeling that the
1092
+ # rule matches:
1093
+ #
1094
+ # * Low sensitivity is less sensitive, causing the rule to match only
1095
+ # on the most likely participants in an attack, which are the
1096
+ # requests with the high suspicion label
1097
+ # `awswaf:managed:aws:anti-ddos:high-suspicion-ddos-request`.
1098
+ #
1099
+ # * Medium sensitivity causes the rule to match on the medium and high
1100
+ # suspicion labels.
1101
+ #
1102
+ # * High sensitivity causes the rule to match on all of the suspicion
1103
+ # labels: low, medium, and high.
1104
+ #
1105
+ # Default: `HIGH`
1106
+ # @return [String]
1107
+ #
1108
+ # @!attribute [rw] exempt_uri_regular_expressions
1109
+ # The regular expression to match against the web request URI, used to
1110
+ # identify requests that can't handle a silent browser challenge.
1111
+ # When the `ClientSideAction` setting `UsageOfAction` is enabled, the
1112
+ # managed rule group uses this setting to determine which requests to
1113
+ # label with `awswaf:managed:aws:anti-ddos:challengeable-request`. If
1114
+ # `UsageOfAction` is disabled, this setting has no effect and the
1115
+ # managed rule group doesn't add the label to any requests.
1116
+ #
1117
+ # The anti-DDoS managed rule group doesn't evaluate the rules
1118
+ # `ChallengeDDoSRequests` or `ChallengeAllDuringEvent` for web
1119
+ # requests whose URIs match this regex. This is true regardless of
1120
+ # whether you override the rule action for either of the rules in your
1121
+ # web ACL configuration.
1122
+ #
1123
+ # Amazon Web Services recommends using a regular expression.
1124
+ #
1125
+ # This setting is required if `UsageOfAction` is set to `ENABLED`. If
1126
+ # required, you can provide between 1 and 5 regex objects in the array
1127
+ # of settings.
1128
+ #
1129
+ # Amazon Web Services recommends starting with the following setting.
1130
+ # Review and update it for your application's needs:
1131
+ #
1132
+ # `\/api\/|\.(acc|avi|css|gif|jpe?g|js|mp[34]|ogg|otf|pdf|png|tiff?|ttf|webm|webp|woff2?)$`
1133
+ # @return [Array<Types::Regex>]
1134
+ #
1135
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/ClientSideAction AWS API Documentation
1136
+ #
1137
+ class ClientSideAction < Struct.new(
1138
+ :usage_of_action,
1139
+ :sensitivity,
1140
+ :exempt_uri_regular_expressions)
1141
+ SENSITIVE = []
1142
+ include Aws::Structure
1143
+ end
1144
+
1145
+ # This is part of the configuration for the managed rules
1146
+ # `AWSManagedRulesAntiDDoSRuleSet` in `ManagedRuleGroupConfig`.
1147
+ #
1148
+ # @!attribute [rw] challenge
1149
+ # Configuration for the use of the `AWSManagedRulesAntiDDoSRuleSet`
1150
+ # rules `ChallengeAllDuringEvent` and `ChallengeDDoSRequests`.
1151
+ #
1152
+ # <note markdown="1"> This setting isn't related to the configuration of the `Challenge`
1153
+ # action itself. It only configures the use of the two anti-DDoS rules
1154
+ # named here.
1155
+ #
1156
+ # </note>
1157
+ #
1158
+ # You can enable or disable the use of these rules, and you can
1159
+ # configure how to use them when they are enabled.
1160
+ # @return [Types::ClientSideAction]
1161
+ #
1162
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/ClientSideActionConfig AWS API Documentation
1163
+ #
1164
+ class ClientSideActionConfig < Struct.new(
1165
+ :challenge)
1166
+ SENSITIVE = []
1167
+ include Aws::Structure
1168
+ end
1169
+
921
1170
  # A single match condition for a Filter.
922
1171
  #
923
1172
  # @!attribute [rw] action_condition
@@ -1512,6 +1761,15 @@ module Aws::WAFV2
1512
1761
  # [1]: http://aws.amazon.com/waf/pricing/
1513
1762
  # @return [Types::AssociationConfig]
1514
1763
  #
1764
+ # @!attribute [rw] on_source_d_do_s_protection_config
1765
+ # Specifies the type of DDoS protection to apply to web request data
1766
+ # for a web ACL. For most scenarios, it is recommended to use the
1767
+ # default protection level, `ACTIVE_UNDER_DDOS`. If a web ACL is
1768
+ # associated with multiple Application Load Balancers, the changes you
1769
+ # make to DDoS protection in that web ACL will apply to all associated
1770
+ # Application Load Balancers.
1771
+ # @return [Types::OnSourceDDoSProtectionConfig]
1772
+ #
1515
1773
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/CreateWebACLRequest AWS API Documentation
1516
1774
  #
1517
1775
  class CreateWebACLRequest < Struct.new(
@@ -1527,7 +1785,8 @@ module Aws::WAFV2
1527
1785
  :captcha_config,
1528
1786
  :challenge_config,
1529
1787
  :token_domains,
1530
- :association_config)
1788
+ :association_config,
1789
+ :on_source_d_do_s_protection_config)
1531
1790
  SENSITIVE = []
1532
1791
  include Aws::Structure
1533
1792
  end
@@ -2849,8 +3108,8 @@ module Aws::WAFV2
2849
3108
  #
2850
3109
  # </note>
2851
3110
  #
2852
- # This configuration is used for GeoMatchStatement and
2853
- # RateBasedStatement. For IPSetReferenceStatement, use
3111
+ # This configuration is used for GeoMatchStatement, AsnMatchStatement,
3112
+ # and RateBasedStatement. For IPSetReferenceStatement, use
2854
3113
  # IPSetForwardedIPConfig instead.
2855
3114
  #
2856
3115
  # WAF only evaluates the first IP address found in the specified HTTP
@@ -3803,11 +4062,12 @@ module Aws::WAFV2
3803
4062
  # `host:user-agent:accept:authorization:referer`.
3804
4063
  #
3805
4064
  # @!attribute [rw] oversize_handling
3806
- # What WAF should do if the headers of the request are more numerous
3807
- # or larger than WAF can inspect. WAF does not support inspecting the
3808
- # entire contents of request headers when they exceed 8 KB (8192
3809
- # bytes) or 200 total headers. The underlying host service forwards a
3810
- # maximum of 200 headers and at most 8 KB of header contents to WAF.
4065
+ # What WAF should do if the headers determined by your match scope are
4066
+ # more numerous or larger than WAF can inspect. WAF does not support
4067
+ # inspecting the entire contents of request headers when they exceed 8
4068
+ # KB (8192 bytes) or 200 total headers. The underlying host service
4069
+ # forwards a maximum of 200 headers and at most 8 KB of header
4070
+ # contents to WAF.
3811
4071
  #
3812
4072
  # The options for oversize handling are the following:
3813
4073
  #
@@ -3866,11 +4126,12 @@ module Aws::WAFV2
3866
4126
  # @return [String]
3867
4127
  #
3868
4128
  # @!attribute [rw] oversize_handling
3869
- # What WAF should do if the headers of the request are more numerous
3870
- # or larger than WAF can inspect. WAF does not support inspecting the
3871
- # entire contents of request headers when they exceed 8 KB (8192
3872
- # bytes) or 200 total headers. The underlying host service forwards a
3873
- # maximum of 200 headers and at most 8 KB of header contents to WAF.
4129
+ # What WAF should do if the headers determined by your match scope are
4130
+ # more numerous or larger than WAF can inspect. WAF does not support
4131
+ # inspecting the entire contents of request headers when they exceed 8
4132
+ # KB (8192 bytes) or 200 total headers. The underlying host service
4133
+ # forwards a maximum of 200 headers and at most 8 KB of header
4134
+ # contents to WAF.
3874
4135
  #
3875
4136
  # The options for oversize handling are the following:
3876
4137
  #
@@ -5515,6 +5776,13 @@ module Aws::WAFV2
5515
5776
  # your application and the locations in the account creation request
5516
5777
  # payload of data, such as the user email and phone number fields.
5517
5778
  #
5779
+ # * Use the `AWSManagedRulesAntiDDoSRuleSet` configuration object to
5780
+ # configure the anti-DDoS managed rule group. The configuration
5781
+ # includes the sensitivity levels to use in the rules that typically
5782
+ # block and challenge requests that might be participating in DDoS
5783
+ # attacks and the specification to use to indicate whether a request
5784
+ # can handle a silent browser challenge.
5785
+ #
5518
5786
  # * Use the `AWSManagedRulesATPRuleSet` configuration object to
5519
5787
  # configure the account takeover prevention managed rule group. The
5520
5788
  # configuration includes the sign-in page of your application and the
@@ -5612,6 +5880,21 @@ module Aws::WAFV2
5612
5880
  # [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-acfp.html
5613
5881
  # @return [Types::AWSManagedRulesACFPRuleSet]
5614
5882
  #
5883
+ # @!attribute [rw] aws_managed_rules_anti_d_do_s_rule_set
5884
+ # Additional configuration for using the anti-DDoS managed rule group,
5885
+ # `AWSManagedRulesAntiDDoSRuleSet`. Use this to configure anti-DDoS
5886
+ # behavior for the rule group.
5887
+ #
5888
+ # For information about using the anti-DDoS managed rule group, see
5889
+ # [WAF Anti-DDoS rule group][1] and [Distributed Denial of Service
5890
+ # (DDoS) prevention][2] in the *WAF Developer Guide*.
5891
+ #
5892
+ #
5893
+ #
5894
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-anti-ddos.html
5895
+ # [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-anti-ddos.html
5896
+ # @return [Types::AWSManagedRulesAntiDDoSRuleSet]
5897
+ #
5615
5898
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/ManagedRuleGroupConfig AWS API Documentation
5616
5899
  #
5617
5900
  class ManagedRuleGroupConfig < Struct.new(
@@ -5621,7 +5904,8 @@ module Aws::WAFV2
5621
5904
  :password_field,
5622
5905
  :aws_managed_rules_bot_control_rule_set,
5623
5906
  :aws_managed_rules_atp_rule_set,
5624
- :aws_managed_rules_acfp_rule_set)
5907
+ :aws_managed_rules_acfp_rule_set,
5908
+ :aws_managed_rules_anti_d_do_s_rule_set)
5625
5909
  SENSITIVE = []
5626
5910
  include Aws::Structure
5627
5911
  end
@@ -5701,6 +5985,13 @@ module Aws::WAFV2
5701
5985
  # creation request payload of data, such as the user email and phone
5702
5986
  # number fields.
5703
5987
  #
5988
+ # * Use the `AWSManagedRulesAntiDDoSRuleSet` configuration object to
5989
+ # configure the anti-DDoS managed rule group. The configuration
5990
+ # includes the sensitivity levels to use in the rules that typically
5991
+ # block and challenge requests that might be participating in DDoS
5992
+ # attacks and the specification to use to indicate whether a request
5993
+ # can handle a silent browser challenge.
5994
+ #
5704
5995
  # * Use the `AWSManagedRulesATPRuleSet` configuration object to
5705
5996
  # configure the account takeover prevention managed rule group. The
5706
5997
  # configuration includes the sign-in page of your application and
@@ -5717,10 +6008,12 @@ module Aws::WAFV2
5717
6008
  # configured inside the rule group. You specify one override for each
5718
6009
  # rule whose action you want to change.
5719
6010
  #
5720
- # <note markdown="1"> Take care to verify the rule names in your overrides. If you provide
5721
- # a rule name that doesn't match the name of any rule in the rule
5722
- # group, WAF doesn't return an error and doesn't apply the override
5723
- # setting.
6011
+ # <note markdown="1"> Verify the rule names in your overrides carefully. With managed rule
6012
+ # groups, WAF silently ignores any override that uses an invalid rule
6013
+ # name. With customer-owned rule groups, invalid rule names in your
6014
+ # overrides will cause web ACL updates to fail. An invalid rule name
6015
+ # is any name that doesn't exactly match the case-sensitive name of
6016
+ # an existing rule in the rule group.
5724
6017
  #
5725
6018
  # </note>
5726
6019
  #
@@ -6126,6 +6419,31 @@ module Aws::WAFV2
6126
6419
  include Aws::Structure
6127
6420
  end
6128
6421
 
6422
+ # Configures the level of DDoS protection that applies to web ACLs
6423
+ # associated with Application Load Balancers.
6424
+ #
6425
+ # @!attribute [rw] alb_low_reputation_mode
6426
+ # The level of DDoS protection that applies to web ACLs associated
6427
+ # with Application Load Balancers. `ACTIVE_UNDER_DDOS` protection is
6428
+ # enabled by default whenever a web ACL is associated with an
6429
+ # Application Load Balancer. In the event that an Application Load
6430
+ # Balancer experiences high-load conditions or suspected DDoS attacks,
6431
+ # the `ACTIVE_UNDER_DDOS` protection automatically rate limits traffic
6432
+ # from known low reputation sources without disrupting Application
6433
+ # Load Balancer availability. `ALWAYS_ON` protection provides
6434
+ # constant, always-on monitoring of known low reputation sources for
6435
+ # suspected DDoS attacks. While this provides a higher level of
6436
+ # protection, there may be potential impacts on legitimate traffic.
6437
+ # @return [String]
6438
+ #
6439
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/OnSourceDDoSProtectionConfig AWS API Documentation
6440
+ #
6441
+ class OnSourceDDoSProtectionConfig < Struct.new(
6442
+ :alb_low_reputation_mode)
6443
+ SENSITIVE = []
6444
+ include Aws::Structure
6445
+ end
6446
+
6129
6447
  # A logical rule statement used to combine other rule statements with OR
6130
6448
  # logic. You provide more than one Statement within the `OrStatement`.
6131
6449
  #
@@ -6747,6 +7065,12 @@ module Aws::WAFV2
6747
7065
  # defines an aggregation instance.
6748
7066
  # @return [Types::RateLimitJA4Fingerprint]
6749
7067
  #
7068
+ # @!attribute [rw] asn
7069
+ # Use an Autonomous System Number (ASN) derived from the request's
7070
+ # originating or forwarded IP address as an aggregate key. Each
7071
+ # distinct ASN contributes to the aggregation instance.
7072
+ # @return [Types::RateLimitAsn]
7073
+ #
6750
7074
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RateBasedStatementCustomKey AWS API Documentation
6751
7075
  #
6752
7076
  class RateBasedStatementCustomKey < Struct.new(
@@ -6760,7 +7084,8 @@ module Aws::WAFV2
6760
7084
  :label_namespace,
6761
7085
  :uri_path,
6762
7086
  :ja3_fingerprint,
6763
- :ja4_fingerprint)
7087
+ :ja4_fingerprint,
7088
+ :asn)
6764
7089
  SENSITIVE = []
6765
7090
  include Aws::Structure
6766
7091
  end
@@ -6800,6 +7125,18 @@ module Aws::WAFV2
6800
7125
  include Aws::Structure
6801
7126
  end
6802
7127
 
7128
+ # Specifies an Autonomous System Number (ASN) derived from the
7129
+ # request's originating or forwarded IP address as an aggregate key for
7130
+ # a rate-based rule. Each distinct ASN contributes to the aggregation
7131
+ # instance. If you use a single ASN as your custom key, then each ASN
7132
+ # fully defines an aggregation instance.
7133
+ #
7134
+ # @api private
7135
+ #
7136
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RateLimitAsn AWS API Documentation
7137
+ #
7138
+ class RateLimitAsn < Aws::EmptyStructure; end
7139
+
6803
7140
  # Specifies a cookie as an aggregate key for a rate-based rule. Each
6804
7141
  # distinct value in the cookie contributes to the aggregation instance.
6805
7142
  # If you use a single cookie as your custom key, then each value fully
@@ -7081,7 +7418,9 @@ module Aws::WAFV2
7081
7418
  include Aws::Structure
7082
7419
  end
7083
7420
 
7084
- # A single regular expression. This is used in a RegexPatternSet.
7421
+ # A single regular expression. This is used in a RegexPatternSet and
7422
+ # also in the configuration for the Amazon Web Services Managed Rules
7423
+ # rule group `AWSManagedRulesAntiDDoSRuleSet`.
7085
7424
  #
7086
7425
  # @!attribute [rw] regex_string
7087
7426
  # The string representing the regular expression.
@@ -8164,10 +8503,12 @@ module Aws::WAFV2
8164
8503
  # configured inside the rule group. You specify one override for each
8165
8504
  # rule whose action you want to change.
8166
8505
  #
8167
- # <note markdown="1"> Take care to verify the rule names in your overrides. If you provide
8168
- # a rule name that doesn't match the name of any rule in the rule
8169
- # group, WAF doesn't return an error and doesn't apply the override
8170
- # setting.
8506
+ # <note markdown="1"> Verify the rule names in your overrides carefully. With managed rule
8507
+ # groups, WAF silently ignores any override that uses an invalid rule
8508
+ # name. With customer-owned rule groups, invalid rule names in your
8509
+ # overrides will cause web ACL updates to fail. An invalid rule name
8510
+ # is any name that doesn't exactly match the case-sensitive name of
8511
+ # an existing rule in the rule group.
8171
8512
  #
8172
8513
  # </note>
8173
8514
  #
@@ -8786,6 +9127,19 @@ module Aws::WAFV2
8786
9127
  # against a single regular expression.
8787
9128
  # @return [Types::RegexMatchStatement]
8788
9129
  #
9130
+ # @!attribute [rw] asn_match_statement
9131
+ # A rule statement that inspects web traffic based on the Autonomous
9132
+ # System Number (ASN) associated with the request's IP address.
9133
+ #
9134
+ # For additional details, see [ASN match rule statement][1] in the
9135
+ # [WAF Developer Guide][2].
9136
+ #
9137
+ #
9138
+ #
9139
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-statement-type-asn-match.html
9140
+ # [2]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html
9141
+ # @return [Types::AsnMatchStatement]
9142
+ #
8789
9143
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/Statement AWS API Documentation
8790
9144
  #
8791
9145
  class Statement < Struct.new(
@@ -8803,7 +9157,8 @@ module Aws::WAFV2
8803
9157
  :not_statement,
8804
9158
  :managed_rule_group_statement,
8805
9159
  :label_match_statement,
8806
- :regex_match_statement)
9160
+ :regex_match_statement,
9161
+ :asn_match_statement)
8807
9162
  SENSITIVE = []
8808
9163
  include Aws::Structure
8809
9164
  end
@@ -9517,6 +9872,15 @@ module Aws::WAFV2
9517
9872
  # [1]: http://aws.amazon.com/waf/pricing/
9518
9873
  # @return [Types::AssociationConfig]
9519
9874
  #
9875
+ # @!attribute [rw] on_source_d_do_s_protection_config
9876
+ # Specifies the type of DDoS protection to apply to web request data
9877
+ # for a web ACL. For most scenarios, it is recommended to use the
9878
+ # default protection level, `ACTIVE_UNDER_DDOS`. If a web ACL is
9879
+ # associated with multiple Application Load Balancers, the changes you
9880
+ # make to DDoS protection in that web ACL will apply to all associated
9881
+ # Application Load Balancers.
9882
+ # @return [Types::OnSourceDDoSProtectionConfig]
9883
+ #
9520
9884
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/UpdateWebACLRequest AWS API Documentation
9521
9885
  #
9522
9886
  class UpdateWebACLRequest < Struct.new(
@@ -9533,7 +9897,8 @@ module Aws::WAFV2
9533
9897
  :captcha_config,
9534
9898
  :challenge_config,
9535
9899
  :token_domains,
9536
- :association_config)
9900
+ :association_config,
9901
+ :on_source_d_do_s_protection_config)
9537
9902
  SENSITIVE = []
9538
9903
  include Aws::Structure
9539
9904
  end
@@ -10311,6 +10676,11 @@ module Aws::WAFV2
10311
10676
  # `PostProcessFirewallManagerRuleGroups`.
10312
10677
  # @return [Boolean]
10313
10678
  #
10679
+ # @!attribute [rw] on_source_d_do_s_protection_config
10680
+ # Configures the level of DDoS protection that applies to web ACLs
10681
+ # associated with Application Load Balancers.
10682
+ # @return [Types::OnSourceDDoSProtectionConfig]
10683
+ #
10314
10684
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/WebACL AWS API Documentation
10315
10685
  #
10316
10686
  class WebACL < Struct.new(
@@ -10332,7 +10702,8 @@ module Aws::WAFV2
10332
10702
  :challenge_config,
10333
10703
  :token_domains,
10334
10704
  :association_config,
10335
- :retrofitted_by_firewall_manager)
10705
+ :retrofitted_by_firewall_manager,
10706
+ :on_source_d_do_s_protection_config)
10336
10707
  SENSITIVE = []
10337
10708
  include Aws::Structure
10338
10709
  end
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.109.0'
57
+ GEM_VERSION = '1.111.0'
58
58
 
59
59
  end
60
60