aws-sdk-wafv2 1.101.0 → 1.103.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -874,11 +874,8 @@ module Aws::WAFV2
874
874
  end
875
875
 
876
876
  # @!attribute [rw] scope
877
- # Specifies whether this is for an Amazon CloudFront distribution or
878
- # for a regional application. A regional application can be an
879
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
880
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
881
- # service, or an Amazon Web Services Verified Access instance.
877
+ # Specifies whether this is for a global resource type, such as a
878
+ # Amazon CloudFront distribution.
882
879
  #
883
880
  # To work with CloudFront, you must also specify the Region US East
884
881
  # (N. Virginia) as follows:
@@ -1061,11 +1058,8 @@ module Aws::WAFV2
1061
1058
  end
1062
1059
 
1063
1060
  # @!attribute [rw] scope
1064
- # Specifies whether this is for an Amazon CloudFront distribution or
1065
- # for a regional application. A regional application can be an
1066
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
1067
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
1068
- # service, or an Amazon Web Services Verified Access instance.
1061
+ # Specifies whether this is for a global resource type, such as a
1062
+ # Amazon CloudFront distribution.
1069
1063
  #
1070
1064
  # To work with CloudFront, you must also specify the Region US East
1071
1065
  # (N. Virginia) as follows:
@@ -1114,11 +1108,8 @@ module Aws::WAFV2
1114
1108
  # @return [String]
1115
1109
  #
1116
1110
  # @!attribute [rw] scope
1117
- # Specifies whether this is for an Amazon CloudFront distribution or
1118
- # for a regional application. A regional application can be an
1119
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
1120
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
1121
- # service, or an Amazon Web Services Verified Access instance.
1111
+ # Specifies whether this is for a global resource type, such as a
1112
+ # Amazon CloudFront distribution.
1122
1113
  #
1123
1114
  # To work with CloudFront, you must also specify the Region US East
1124
1115
  # (N. Virginia) as follows:
@@ -1218,11 +1209,8 @@ module Aws::WAFV2
1218
1209
  # @return [String]
1219
1210
  #
1220
1211
  # @!attribute [rw] scope
1221
- # Specifies whether this is for an Amazon CloudFront distribution or
1222
- # for a regional application. A regional application can be an
1223
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
1224
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
1225
- # service, or an Amazon Web Services Verified Access instance.
1212
+ # Specifies whether this is for a global resource type, such as a
1213
+ # Amazon CloudFront distribution.
1226
1214
  #
1227
1215
  # To work with CloudFront, you must also specify the Region US East
1228
1216
  # (N. Virginia) as follows:
@@ -1279,11 +1267,8 @@ module Aws::WAFV2
1279
1267
  # @return [String]
1280
1268
  #
1281
1269
  # @!attribute [rw] scope
1282
- # Specifies whether this is for an Amazon CloudFront distribution or
1283
- # for a regional application. A regional application can be an
1284
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
1285
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
1286
- # service, or an Amazon Web Services Verified Access instance.
1270
+ # Specifies whether this is for a global resource type, such as a
1271
+ # Amazon CloudFront distribution.
1287
1272
  #
1288
1273
  # To work with CloudFront, you must also specify the Region US East
1289
1274
  # (N. Virginia) as follows:
@@ -1394,11 +1379,8 @@ module Aws::WAFV2
1394
1379
  # @return [String]
1395
1380
  #
1396
1381
  # @!attribute [rw] scope
1397
- # Specifies whether this is for an Amazon CloudFront distribution or
1398
- # for a regional application. A regional application can be an
1399
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
1400
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
1401
- # service, or an Amazon Web Services Verified Access instance.
1382
+ # Specifies whether this is for a global resource type, such as a
1383
+ # Amazon CloudFront distribution.
1402
1384
  #
1403
1385
  # To work with CloudFront, you must also specify the Region US East
1404
1386
  # (N. Virginia) as follows:
@@ -1430,6 +1412,19 @@ module Aws::WAFV2
1430
1412
  # collection.
1431
1413
  # @return [Types::VisibilityConfig]
1432
1414
  #
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.
1419
+ #
1420
+ # The data protection that you configure for the web ACL alters the
1421
+ # 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.
1426
+ # @return [Types::DataProtectionConfig]
1427
+ #
1433
1428
  # @!attribute [rw] tags
1434
1429
  # An array of key:value pairs to associate with the resource.
1435
1430
  # @return [Array<Types::Tag>]
@@ -1516,6 +1511,7 @@ module Aws::WAFV2
1516
1511
  :description,
1517
1512
  :rules,
1518
1513
  :visibility_config,
1514
+ :data_protection_config,
1519
1515
  :tags,
1520
1516
  :custom_response_bodies,
1521
1517
  :captcha_config,
@@ -1692,6 +1688,90 @@ module Aws::WAFV2
1692
1688
  include Aws::Structure
1693
1689
  end
1694
1690
 
1691
+ # Specifies the protection behavior for a field type. This is part of
1692
+ # the data protection configuration for a web ACL.
1693
+ #
1694
+ # @!attribute [rw] field
1695
+ # Specifies the field type and optional keys to apply the protection
1696
+ # behavior to.
1697
+ # @return [Types::FieldToProtect]
1698
+ #
1699
+ # @!attribute [rw] action
1700
+ # Specifies how to protect the field. WAF can apply a one-way hash to
1701
+ # the field or hard code a string substitution.
1702
+ #
1703
+ # * One-way hash example:
1704
+ # `ade099751dEXAMPLEHASH2ea9f3393f80dd5d3bEXAMPLEHASH966ae0d3cd5a1e`
1705
+ #
1706
+ # * Substitution example: `REDACTED`
1707
+ # @return [String]
1708
+ #
1709
+ # @!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*.
1715
+ #
1716
+ # Default: `FALSE`
1717
+ #
1718
+ #
1719
+ #
1720
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/logging-fields.html
1721
+ # @return [Boolean]
1722
+ #
1723
+ # @!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
1727
+ # `rateBasedRuleList` at [Log fields for web ACL traffic][1] in the
1728
+ # *WAF Developer Guide*.
1729
+ #
1730
+ # Default: `FALSE`
1731
+ #
1732
+ #
1733
+ #
1734
+ # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/logging-fields.html
1735
+ # @return [Boolean]
1736
+ #
1737
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/DataProtection AWS API Documentation
1738
+ #
1739
+ class DataProtection < Struct.new(
1740
+ :field,
1741
+ :action,
1742
+ :exclude_rule_match_details,
1743
+ :exclude_rate_based_details)
1744
+ SENSITIVE = []
1745
+ include Aws::Structure
1746
+ end
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.
1751
+ #
1752
+ # The data protection that you configure for the web ACL alters the data
1753
+ # 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.
1758
+ #
1759
+ # This is part of the data protection configuration for a web ACL.
1760
+ #
1761
+ # @!attribute [rw] data_protections
1762
+ # An array of data protection configurations for specific web request
1763
+ # field types. This is defined for each web ACL. WAF applies the
1764
+ # specified protection to all web requests that the web ACL inspects.
1765
+ # @return [Array<Types::DataProtection>]
1766
+ #
1767
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/DataProtectionConfig AWS API Documentation
1768
+ #
1769
+ class DataProtectionConfig < Struct.new(
1770
+ :data_protections)
1771
+ SENSITIVE = []
1772
+ include Aws::Structure
1773
+ end
1774
+
1695
1775
  # In a WebACL, this is the action that you want WAF to perform when a
1696
1776
  # web request doesn't match any of the rules in the `WebACL`. The
1697
1777
  # default action must be a terminating action.
@@ -1714,11 +1794,8 @@ module Aws::WAFV2
1714
1794
  end
1715
1795
 
1716
1796
  # @!attribute [rw] scope
1717
- # Specifies whether this is for an Amazon CloudFront distribution or
1718
- # for a regional application. A regional application can be an
1719
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
1720
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
1721
- # service, or an Amazon Web Services Verified Access instance.
1797
+ # Specifies whether this is for a global resource type, such as a
1798
+ # Amazon CloudFront distribution.
1722
1799
  #
1723
1800
  # To work with CloudFront, you must also specify the Region US East
1724
1801
  # (N. Virginia) as follows:
@@ -1797,11 +1874,8 @@ module Aws::WAFV2
1797
1874
  # @return [String]
1798
1875
  #
1799
1876
  # @!attribute [rw] scope
1800
- # Specifies whether this is for an Amazon CloudFront distribution or
1801
- # for a regional application. A regional application can be an
1802
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
1803
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
1804
- # service, or an Amazon Web Services Verified Access instance.
1877
+ # Specifies whether this is for a global resource type, such as a
1878
+ # Amazon CloudFront distribution.
1805
1879
  #
1806
1880
  # To work with CloudFront, you must also specify the Region US East
1807
1881
  # (N. Virginia) as follows:
@@ -1914,11 +1988,8 @@ module Aws::WAFV2
1914
1988
  # @return [String]
1915
1989
  #
1916
1990
  # @!attribute [rw] scope
1917
- # Specifies whether this is for an Amazon CloudFront distribution or
1918
- # for a regional application. A regional application can be an
1919
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
1920
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
1921
- # service, or an Amazon Web Services Verified Access instance.
1991
+ # Specifies whether this is for a global resource type, such as a
1992
+ # Amazon CloudFront distribution.
1922
1993
  #
1923
1994
  # To work with CloudFront, you must also specify the Region US East
1924
1995
  # (N. Virginia) as follows:
@@ -1968,11 +2039,8 @@ module Aws::WAFV2
1968
2039
  # @return [String]
1969
2040
  #
1970
2041
  # @!attribute [rw] scope
1971
- # Specifies whether this is for an Amazon CloudFront distribution or
1972
- # for a regional application. A regional application can be an
1973
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
1974
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
1975
- # service, or an Amazon Web Services Verified Access instance.
2042
+ # Specifies whether this is for a global resource type, such as a
2043
+ # Amazon CloudFront distribution.
1976
2044
  #
1977
2045
  # To work with CloudFront, you must also specify the Region US East
1978
2046
  # (N. Virginia) as follows:
@@ -2022,11 +2090,8 @@ module Aws::WAFV2
2022
2090
  # @return [String]
2023
2091
  #
2024
2092
  # @!attribute [rw] scope
2025
- # Specifies whether this is for an Amazon CloudFront distribution or
2026
- # for a regional application. A regional application can be an
2027
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
2028
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
2029
- # service, or an Amazon Web Services Verified Access instance.
2093
+ # Specifies whether this is for a global resource type, such as a
2094
+ # Amazon CloudFront distribution.
2030
2095
  #
2031
2096
  # To work with CloudFront, you must also specify the Region US East
2032
2097
  # (N. Virginia) as follows:
@@ -2071,11 +2136,8 @@ module Aws::WAFV2
2071
2136
  class DeleteWebACLResponse < Aws::EmptyStructure; end
2072
2137
 
2073
2138
  # @!attribute [rw] scope
2074
- # Specifies whether this is for an Amazon CloudFront distribution or
2075
- # for a regional application. A regional application can be an
2076
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
2077
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
2078
- # service, or an Amazon Web Services Verified Access instance.
2139
+ # Specifies whether this is for a global resource type, such as a
2140
+ # Amazon CloudFront distribution.
2079
2141
  #
2080
2142
  # To work with CloudFront, you must also specify the Region US East
2081
2143
  # (N. Virginia) as follows:
@@ -2113,11 +2175,8 @@ module Aws::WAFV2
2113
2175
  # @return [String]
2114
2176
  #
2115
2177
  # @!attribute [rw] scope
2116
- # Specifies whether this is for an Amazon CloudFront distribution or
2117
- # for a regional application. A regional application can be an
2118
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
2119
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
2120
- # service, or an Amazon Web Services Verified Access instance.
2178
+ # Specifies whether this is for a global resource type, such as a
2179
+ # Amazon CloudFront distribution.
2121
2180
  #
2122
2181
  # To work with CloudFront, you must also specify the Region US East
2123
2182
  # (N. Virginia) as follows:
@@ -2161,11 +2220,8 @@ module Aws::WAFV2
2161
2220
  # @return [String]
2162
2221
  #
2163
2222
  # @!attribute [rw] scope
2164
- # Specifies whether this is for an Amazon CloudFront distribution or
2165
- # for a regional application. A regional application can be an
2166
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
2167
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
2168
- # service, or an Amazon Web Services Verified Access instance.
2223
+ # Specifies whether this is for a global resource type, such as a
2224
+ # Amazon CloudFront distribution.
2169
2225
  #
2170
2226
  # To work with CloudFront, you must also specify the Region US East
2171
2227
  # (N. Virginia) as follows:
@@ -2407,9 +2463,10 @@ module Aws::WAFV2
2407
2463
  # redact from the logs.
2408
2464
  #
2409
2465
  # * If you have request sampling enabled, the redacted fields
2410
- # configuration for logging has no impact on sampling. The only way
2411
- # to exclude fields from request sampling is by disabling sampling
2412
- # in the web ACL visibility configuration.
2466
+ # configuration for logging has no impact on sampling. You can only
2467
+ # exclude fields from request sampling by disabling sampling in the
2468
+ # web ACL visibility configuration or by configuring data protection
2469
+ # for the web ACL.
2413
2470
  #
2414
2471
  # @!attribute [rw] single_header
2415
2472
  # Inspect a single header. Provide the name of the header to inspect,
@@ -2581,6 +2638,28 @@ module Aws::WAFV2
2581
2638
  include Aws::Structure
2582
2639
  end
2583
2640
 
2641
+ # Specifies a field type and keys to protect in stored web request data.
2642
+ # This is part of the data protection configuration for a web ACL.
2643
+ #
2644
+ # @!attribute [rw] field_type
2645
+ # Specifies the web request component type to protect.
2646
+ # @return [String]
2647
+ #
2648
+ # @!attribute [rw] field_keys
2649
+ # Specifies the keys to protect for the specified field type. If you
2650
+ # don't specify any key, then all keys for the field type are
2651
+ # protected.
2652
+ # @return [Array<String>]
2653
+ #
2654
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/FieldToProtect AWS API Documentation
2655
+ #
2656
+ class FieldToProtect < Struct.new(
2657
+ :field_type,
2658
+ :field_keys)
2659
+ SENSITIVE = []
2660
+ include Aws::Structure
2661
+ end
2662
+
2584
2663
  # A single logging filter, used in LoggingFilter.
2585
2664
  #
2586
2665
  # @!attribute [rw] behavior
@@ -2847,11 +2926,8 @@ module Aws::WAFV2
2847
2926
  end
2848
2927
 
2849
2928
  # @!attribute [rw] scope
2850
- # Specifies whether this is for an Amazon CloudFront distribution or
2851
- # for a regional application. A regional application can be an
2852
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
2853
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
2854
- # service, or an Amazon Web Services Verified Access instance.
2929
+ # Specifies whether this is for a global resource type, such as a
2930
+ # Amazon CloudFront distribution.
2855
2931
  #
2856
2932
  # To work with CloudFront, you must also specify the Region US East
2857
2933
  # (N. Virginia) as follows:
@@ -2898,11 +2974,8 @@ module Aws::WAFV2
2898
2974
  # @return [String]
2899
2975
  #
2900
2976
  # @!attribute [rw] scope
2901
- # Specifies whether this is for an Amazon CloudFront distribution or
2902
- # for a regional application. A regional application can be an
2903
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
2904
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
2905
- # service, or an Amazon Web Services Verified Access instance.
2977
+ # Specifies whether this is for a global resource type, such as a
2978
+ # Amazon CloudFront distribution.
2906
2979
  #
2907
2980
  # To work with CloudFront, you must also specify the Region US East
2908
2981
  # (N. Virginia) as follows:
@@ -3014,11 +3087,8 @@ module Aws::WAFV2
3014
3087
  # @return [String]
3015
3088
  #
3016
3089
  # @!attribute [rw] scope
3017
- # Specifies whether this is for an Amazon CloudFront distribution or
3018
- # for a regional application. A regional application can be an
3019
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
3020
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
3021
- # service, or an Amazon Web Services Verified Access instance.
3090
+ # Specifies whether this is for a global resource type, such as a
3091
+ # Amazon CloudFront distribution.
3022
3092
  #
3023
3093
  # To work with CloudFront, you must also specify the Region US East
3024
3094
  # (N. Virginia) as follows:
@@ -3127,11 +3197,8 @@ module Aws::WAFV2
3127
3197
  end
3128
3198
 
3129
3199
  # @!attribute [rw] scope
3130
- # Specifies whether this is for an Amazon CloudFront distribution or
3131
- # for a regional application. A regional application can be an
3132
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
3133
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
3134
- # service, or an Amazon Web Services Verified Access instance.
3200
+ # Specifies whether this is for a global resource type, such as a
3201
+ # Amazon CloudFront distribution.
3135
3202
  #
3136
3203
  # To work with CloudFront, you must also specify the Region US East
3137
3204
  # (N. Virginia) as follows:
@@ -3201,11 +3268,8 @@ module Aws::WAFV2
3201
3268
  # @return [String]
3202
3269
  #
3203
3270
  # @!attribute [rw] scope
3204
- # Specifies whether this is for an Amazon CloudFront distribution or
3205
- # for a regional application. A regional application can be an
3206
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
3207
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
3208
- # service, or an Amazon Web Services Verified Access instance.
3271
+ # Specifies whether this is for a global resource type, such as a
3272
+ # Amazon CloudFront distribution.
3209
3273
  #
3210
3274
  # To work with CloudFront, you must also specify the Region US East
3211
3275
  # (N. Virginia) as follows:
@@ -3262,11 +3326,8 @@ module Aws::WAFV2
3262
3326
  # @return [String]
3263
3327
  #
3264
3328
  # @!attribute [rw] scope
3265
- # Specifies whether this is for an Amazon CloudFront distribution or
3266
- # for a regional application. A regional application can be an
3267
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
3268
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
3269
- # service, or an Amazon Web Services Verified Access instance.
3329
+ # Specifies whether this is for a global resource type, such as a
3330
+ # Amazon CloudFront distribution.
3270
3331
  #
3271
3332
  # To work with CloudFront, you must also specify the Region US East
3272
3333
  # (N. Virginia) as follows:
@@ -3333,11 +3394,8 @@ module Aws::WAFV2
3333
3394
  # @return [String]
3334
3395
  #
3335
3396
  # @!attribute [rw] scope
3336
- # Specifies whether this is for an Amazon CloudFront distribution or
3337
- # for a regional application. A regional application can be an
3338
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
3339
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
3340
- # service, or an Amazon Web Services Verified Access instance.
3397
+ # Specifies whether this is for a global resource type, such as a
3398
+ # Amazon CloudFront distribution.
3341
3399
  #
3342
3400
  # To work with CloudFront, you must also specify the Region US East
3343
3401
  # (N. Virginia) as follows:
@@ -3466,11 +3524,8 @@ module Aws::WAFV2
3466
3524
  # @return [String]
3467
3525
  #
3468
3526
  # @!attribute [rw] scope
3469
- # Specifies whether this is for an Amazon CloudFront distribution or
3470
- # for a regional application. A regional application can be an
3471
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
3472
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
3473
- # service, or an Amazon Web Services Verified Access instance.
3527
+ # Specifies whether this is for a global resource type, such as a
3528
+ # Amazon CloudFront distribution.
3474
3529
  #
3475
3530
  # To work with CloudFront, you must also specify the Region US East
3476
3531
  # (N. Virginia) as follows:
@@ -4324,11 +4379,8 @@ module Aws::WAFV2
4324
4379
  end
4325
4380
 
4326
4381
  # @!attribute [rw] scope
4327
- # Specifies whether this is for an Amazon CloudFront distribution or
4328
- # for a regional application. A regional application can be an
4329
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
4330
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
4331
- # service, or an Amazon Web Services Verified Access instance.
4382
+ # Specifies whether this is for a global resource type, such as a
4383
+ # Amazon CloudFront distribution.
4332
4384
  #
4333
4385
  # To work with CloudFront, you must also specify the Region US East
4334
4386
  # (N. Virginia) as follows:
@@ -4403,11 +4455,8 @@ module Aws::WAFV2
4403
4455
  # @return [String]
4404
4456
  #
4405
4457
  # @!attribute [rw] scope
4406
- # Specifies whether this is for an Amazon CloudFront distribution or
4407
- # for a regional application. A regional application can be an
4408
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
4409
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
4410
- # service, or an Amazon Web Services Verified Access instance.
4458
+ # Specifies whether this is for a global resource type, such as a
4459
+ # Amazon CloudFront distribution.
4411
4460
  #
4412
4461
  # To work with CloudFront, you must also specify the Region US East
4413
4462
  # (N. Virginia) as follows:
@@ -4474,11 +4523,8 @@ module Aws::WAFV2
4474
4523
  end
4475
4524
 
4476
4525
  # @!attribute [rw] scope
4477
- # Specifies whether this is for an Amazon CloudFront distribution or
4478
- # for a regional application. A regional application can be an
4479
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
4480
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
4481
- # service, or an Amazon Web Services Verified Access instance.
4526
+ # Specifies whether this is for a global resource type, such as a
4527
+ # Amazon CloudFront distribution.
4482
4528
  #
4483
4529
  # To work with CloudFront, you must also specify the Region US East
4484
4530
  # (N. Virginia) as follows:
@@ -4537,11 +4583,8 @@ module Aws::WAFV2
4537
4583
  end
4538
4584
 
4539
4585
  # @!attribute [rw] scope
4540
- # Specifies whether this is for an Amazon CloudFront distribution or
4541
- # for a regional application. A regional application can be an
4542
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
4543
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
4544
- # service, or an Amazon Web Services Verified Access instance.
4586
+ # Specifies whether this is for a global resource type, such as a
4587
+ # Amazon CloudFront distribution.
4545
4588
  #
4546
4589
  # To work with CloudFront, you must also specify the Region US East
4547
4590
  # (N. Virginia) as follows:
@@ -4600,11 +4643,8 @@ module Aws::WAFV2
4600
4643
  end
4601
4644
 
4602
4645
  # @!attribute [rw] scope
4603
- # Specifies whether this is for an Amazon CloudFront distribution or
4604
- # for a regional application. A regional application can be an
4605
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
4606
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
4607
- # service, or an Amazon Web Services Verified Access instance.
4646
+ # Specifies whether this is for a global resource type, such as a
4647
+ # Amazon CloudFront distribution.
4608
4648
  #
4609
4649
  # To work with CloudFront, you must also specify the Region US East
4610
4650
  # (N. Virginia) as follows:
@@ -4682,11 +4722,8 @@ module Aws::WAFV2
4682
4722
  end
4683
4723
 
4684
4724
  # @!attribute [rw] scope
4685
- # Specifies whether this is for an Amazon CloudFront distribution or
4686
- # for a regional application. A regional application can be an
4687
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
4688
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
4689
- # service, or an Amazon Web Services Verified Access instance.
4725
+ # Specifies whether this is for a global resource type, such as a
4726
+ # Amazon CloudFront distribution.
4690
4727
  #
4691
4728
  # To work with CloudFront, you must also specify the Region US East
4692
4729
  # (N. Virginia) as follows:
@@ -4797,11 +4834,8 @@ module Aws::WAFV2
4797
4834
  end
4798
4835
 
4799
4836
  # @!attribute [rw] scope
4800
- # Specifies whether this is for an Amazon CloudFront distribution or
4801
- # for a regional application. A regional application can be an
4802
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
4803
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
4804
- # service, or an Amazon Web Services Verified Access instance.
4837
+ # Specifies whether this is for a global resource type, such as a
4838
+ # Amazon CloudFront distribution.
4805
4839
  #
4806
4840
  # To work with CloudFront, you must also specify the Region US East
4807
4841
  # (N. Virginia) as follows:
@@ -4864,11 +4898,12 @@ module Aws::WAFV2
4864
4898
  # @return [String]
4865
4899
  #
4866
4900
  # @!attribute [rw] resource_type
4867
- # Used for web ACLs that are scoped for regional applications. A
4868
- # regional application can be an Application Load Balancer (ALB), an
4869
- # Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon
4870
- # Cognito user pool, an App Runner service, or an Amazon Web Services
4871
- # Verified Access instance.
4901
+ # Retrieves the web ACLs that are used by the specified resource type.
4902
+ #
4903
+ # For Amazon CloudFront, don't use this call. Instead, use the
4904
+ # CloudFront call `ListDistributionsByWebACLId`. For information, see
4905
+ # [ListDistributionsByWebACLId][1] in the *Amazon CloudFront API
4906
+ # Reference*.
4872
4907
  #
4873
4908
  # <note markdown="1"> If you don't provide a resource type, the call uses the resource
4874
4909
  # type `APPLICATION_LOAD_BALANCER`.
@@ -4876,6 +4911,10 @@ module Aws::WAFV2
4876
4911
  # </note>
4877
4912
  #
4878
4913
  # Default: `APPLICATION_LOAD_BALANCER`
4914
+ #
4915
+ #
4916
+ #
4917
+ # [1]: https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ListDistributionsByWebACLId.html
4879
4918
  # @return [String]
4880
4919
  #
4881
4920
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/ListResourcesForWebACLRequest AWS API Documentation
@@ -4901,11 +4940,8 @@ module Aws::WAFV2
4901
4940
  end
4902
4941
 
4903
4942
  # @!attribute [rw] scope
4904
- # Specifies whether this is for an Amazon CloudFront distribution or
4905
- # for a regional application. A regional application can be an
4906
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
4907
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
4908
- # service, or an Amazon Web Services Verified Access instance.
4943
+ # Specifies whether this is for a global resource type, such as a
4944
+ # Amazon CloudFront distribution.
4909
4945
  #
4910
4946
  # To work with CloudFront, you must also specify the Region US East
4911
4947
  # (N. Virginia) as follows:
@@ -5016,11 +5052,8 @@ module Aws::WAFV2
5016
5052
  end
5017
5053
 
5018
5054
  # @!attribute [rw] scope
5019
- # Specifies whether this is for an Amazon CloudFront distribution or
5020
- # for a regional application. A regional application can be an
5021
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
5022
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
5023
- # service, or an Amazon Web Services Verified Access instance.
5055
+ # Specifies whether this is for a global resource type, such as a
5056
+ # Amazon CloudFront distribution.
5024
5057
  #
5025
5058
  # To work with CloudFront, you must also specify the Region US East
5026
5059
  # (N. Virginia) as follows:
@@ -5084,6 +5117,9 @@ module Aws::WAFV2
5084
5117
  # and you can specify filters so that you log only a subset of the
5085
5118
  # logging records.
5086
5119
  #
5120
+ # If you configure data protection for the web ACL, the protection
5121
+ # applies to the data that WAF sends to the logs.
5122
+ #
5087
5123
  # <note markdown="1"> You can define one logging destination per web ACL.
5088
5124
  #
5089
5125
  # </note>
@@ -5141,6 +5177,9 @@ module Aws::WAFV2
5141
5177
  # field in the logs will be `REDACTED` for all rules that use the
5142
5178
  # `SingleHeader` `FieldToMatch` setting.
5143
5179
  #
5180
+ # If you configure data protection for the web ACL, the protection
5181
+ # applies to the data that WAF sends to the logs.
5182
+ #
5144
5183
  # Redaction applies only to the component that's specified in the
5145
5184
  # rule's `FieldToMatch` setting, so the `SingleHeader` redaction
5146
5185
  # doesn't apply to rules that use the `Headers` `FieldToMatch`.
@@ -5150,9 +5189,10 @@ module Aws::WAFV2
5150
5189
  #
5151
5190
  # </note>
5152
5191
  #
5153
- # <note markdown="1"> This setting has no impact on request sampling. With request
5154
- # sampling, the only way to exclude fields is by disabling sampling in
5155
- # the web ACL visibility configuration.
5192
+ # <note markdown="1"> This setting has no impact on request sampling. You can only exclude
5193
+ # fields from request sampling by disabling sampling in the web ACL
5194
+ # visibility configuration or by configuring data protection for the
5195
+ # web ACL.
5156
5196
  #
5157
5197
  # </note>
5158
5198
  # @return [Array<Types::FieldToMatch>]
@@ -5531,6 +5571,13 @@ module Aws::WAFV2
5531
5571
  # configured inside the rule group. You specify one override for each
5532
5572
  # rule whose action you want to change.
5533
5573
  #
5574
+ # <note markdown="1"> Take care to verify the rule names in your overrides. If you provide
5575
+ # a rule name that doesn't match the name of any rule in the rule
5576
+ # group, WAF doesn't return an error and doesn't apply the override
5577
+ # setting.
5578
+ #
5579
+ # </note>
5580
+ #
5534
5581
  # You can use overrides for testing, for example you can override all
5535
5582
  # of rule actions to `Count` and then monitor the resulting count
5536
5583
  # metrics to understand how the rule group would handle your web
@@ -6102,11 +6149,8 @@ module Aws::WAFV2
6102
6149
  # @return [String]
6103
6150
  #
6104
6151
  # @!attribute [rw] scope
6105
- # Specifies whether this is for an Amazon CloudFront distribution or
6106
- # for a regional application. A regional application can be an
6107
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
6108
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
6109
- # service, or an Amazon Web Services Verified Access instance.
6152
+ # Specifies whether this is for a global resource type, such as a
6153
+ # Amazon CloudFront distribution.
6110
6154
  #
6111
6155
  # To work with CloudFront, you must also specify the Region US East
6112
6156
  # (N. Virginia) as follows:
@@ -6335,10 +6379,10 @@ module Aws::WAFV2
6335
6379
  # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-rate-based-rules.html
6336
6380
  #
6337
6381
  # @!attribute [rw] limit
6338
- # The limit on requests per 5-minute period for a single aggregation
6339
- # instance for the rate-based rule. If the rate-based statement
6340
- # includes a `ScopeDownStatement`, this limit is applied only to the
6341
- # requests that match the statement.
6382
+ # The limit on requests during the specified evaluation window for a
6383
+ # single aggregation instance for the rate-based rule. If the
6384
+ # rate-based statement includes a `ScopeDownStatement`, this limit is
6385
+ # applied only to the requests that match the statement.
6342
6386
  #
6343
6387
  # Examples:
6344
6388
  #
@@ -7610,6 +7654,11 @@ module Aws::WAFV2
7610
7654
  # label. The rule's rule group or web ACL defines the label
7611
7655
  # namespace.
7612
7656
  #
7657
+ # <note markdown="1"> Any rule that isn't a rule group reference statement or managed
7658
+ # rule group statement can add labels to matching web requests.
7659
+ #
7660
+ # </note>
7661
+ #
7613
7662
  # Rules that run after this rule in the web ACL can match against
7614
7663
  # these labels using a `LabelMatchStatement`.
7615
7664
  #
@@ -7707,6 +7756,12 @@ module Aws::WAFV2
7707
7756
  # inside the rule group. You specify one override for each rule whose
7708
7757
  # action you want to change.
7709
7758
  #
7759
+ # <note markdown="1"> Take care to verify the rule names in your overrides. If you provide a
7760
+ # rule name that doesn't match the name of any rule in the rule group,
7761
+ # WAF doesn't return an error and doesn't apply the override setting.
7762
+ #
7763
+ # </note>
7764
+ #
7710
7765
  # You can use overrides for testing, for example you can override all of
7711
7766
  # rule actions to `Count` and then monitor the resulting count metrics
7712
7767
  # to understand how the rule group would handle your web traffic. You
@@ -7715,6 +7770,13 @@ module Aws::WAFV2
7715
7770
  #
7716
7771
  # @!attribute [rw] name
7717
7772
  # The name of the rule to override.
7773
+ #
7774
+ # <note markdown="1"> Take care to verify the rule names in your overrides. If you provide
7775
+ # a rule name that doesn't match the name of any rule in the rule
7776
+ # group, WAF doesn't return an error and doesn't apply the override
7777
+ # setting.
7778
+ #
7779
+ # </note>
7718
7780
  # @return [String]
7719
7781
  #
7720
7782
  # @!attribute [rw] action_to_use
@@ -7887,6 +7949,13 @@ module Aws::WAFV2
7887
7949
  # configured inside the rule group. You specify one override for each
7888
7950
  # rule whose action you want to change.
7889
7951
  #
7952
+ # <note markdown="1"> Take care to verify the rule names in your overrides. If you provide
7953
+ # a rule name that doesn't match the name of any rule in the rule
7954
+ # group, WAF doesn't return an error and doesn't apply the override
7955
+ # setting.
7956
+ #
7957
+ # </note>
7958
+ #
7890
7959
  # You can use overrides for testing, for example you can override all
7891
7960
  # of rule actions to `Count` and then monitor the resulting count
7892
7961
  # metrics to understand how the rule group would handle your web
@@ -8712,11 +8781,8 @@ module Aws::WAFV2
8712
8781
  # @return [String]
8713
8782
  #
8714
8783
  # @!attribute [rw] scope
8715
- # Specifies whether this is for an Amazon CloudFront distribution or
8716
- # for a regional application. A regional application can be an
8717
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
8718
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
8719
- # service, or an Amazon Web Services Verified Access instance.
8784
+ # Specifies whether this is for a global resource type, such as a
8785
+ # Amazon CloudFront distribution.
8720
8786
  #
8721
8787
  # To work with CloudFront, you must also specify the Region US East
8722
8788
  # (N. Virginia) as follows:
@@ -8828,11 +8894,8 @@ module Aws::WAFV2
8828
8894
  # @return [String]
8829
8895
  #
8830
8896
  # @!attribute [rw] scope
8831
- # Specifies whether this is for an Amazon CloudFront distribution or
8832
- # for a regional application. A regional application can be an
8833
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
8834
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
8835
- # service, or an Amazon Web Services Verified Access instance.
8897
+ # Specifies whether this is for a global resource type, such as a
8898
+ # Amazon CloudFront distribution.
8836
8899
  #
8837
8900
  # To work with CloudFront, you must also specify the Region US East
8838
8901
  # (N. Virginia) as follows:
@@ -8927,11 +8990,8 @@ module Aws::WAFV2
8927
8990
  # @return [String]
8928
8991
  #
8929
8992
  # @!attribute [rw] scope
8930
- # Specifies whether this is for an Amazon CloudFront distribution or
8931
- # for a regional application. A regional application can be an
8932
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
8933
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
8934
- # service, or an Amazon Web Services Verified Access instance.
8993
+ # Specifies whether this is for a global resource type, such as a
8994
+ # Amazon CloudFront distribution.
8935
8995
  #
8936
8996
  # To work with CloudFront, you must also specify the Region US East
8937
8997
  # (N. Virginia) as follows:
@@ -9000,11 +9060,8 @@ module Aws::WAFV2
9000
9060
  # @return [String]
9001
9061
  #
9002
9062
  # @!attribute [rw] scope
9003
- # Specifies whether this is for an Amazon CloudFront distribution or
9004
- # for a regional application. A regional application can be an
9005
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
9006
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
9007
- # service, or an Amazon Web Services Verified Access instance.
9063
+ # Specifies whether this is for a global resource type, such as a
9064
+ # Amazon CloudFront distribution.
9008
9065
  #
9009
9066
  # To work with CloudFront, you must also specify the Region US East
9010
9067
  # (N. Virginia) as follows:
@@ -9104,11 +9161,8 @@ module Aws::WAFV2
9104
9161
  # @return [String]
9105
9162
  #
9106
9163
  # @!attribute [rw] scope
9107
- # Specifies whether this is for an Amazon CloudFront distribution or
9108
- # for a regional application. A regional application can be an
9109
- # Application Load Balancer (ALB), an Amazon API Gateway REST API, an
9110
- # AppSync GraphQL API, an Amazon Cognito user pool, an App Runner
9111
- # service, or an Amazon Web Services Verified Access instance.
9164
+ # Specifies whether this is for a global resource type, such as a
9165
+ # Amazon CloudFront distribution.
9112
9166
  #
9113
9167
  # To work with CloudFront, you must also specify the Region US East
9114
9168
  # (N. Virginia) as follows:
@@ -9146,6 +9200,19 @@ module Aws::WAFV2
9146
9200
  # collection.
9147
9201
  # @return [Types::VisibilityConfig]
9148
9202
  #
9203
+ # @!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.
9207
+ #
9208
+ # The data protection that you configure for the web ACL alters the
9209
+ # 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.
9214
+ # @return [Types::DataProtectionConfig]
9215
+ #
9149
9216
  # @!attribute [rw] lock_token
9150
9217
  # A token used for optimistic locking. WAF returns a token to your
9151
9218
  # `get` and `list` requests, to mark the state of the entity at the
@@ -9241,6 +9308,7 @@ module Aws::WAFV2
9241
9308
  :description,
9242
9309
  :rules,
9243
9310
  :visibility_config,
9311
+ :data_protection_config,
9244
9312
  :lock_token,
9245
9313
  :custom_response_bodies,
9246
9314
  :captcha_config,
@@ -9359,11 +9427,14 @@ module Aws::WAFV2
9359
9427
  # that match the rules. You can view the sampled requests through the
9360
9428
  # WAF console.
9361
9429
  #
9430
+ # If you configure data protection for the web ACL, the protection
9431
+ # applies to the web ACL's sampled web request data.
9432
+ #
9362
9433
  # <note markdown="1"> Request sampling doesn't provide a field redaction option, and any
9363
9434
  # field redaction that you specify in your logging configuration
9364
- # doesn't affect sampling. The only way to exclude fields from
9365
- # request sampling is by disabling sampling in the web ACL visibility
9366
- # configuration.
9435
+ # doesn't affect sampling. You can only exclude fields from request
9436
+ # sampling by disabling sampling in the web ACL visibility
9437
+ # configuration or by configuring data protection for the web ACL.
9367
9438
  #
9368
9439
  # </note>
9369
9440
  # @return [Boolean]
@@ -9731,8 +9802,8 @@ module Aws::WAFV2
9731
9802
  # operation. If you've just created a resource that you're using in
9732
9803
  # this operation, you might just need to wait a few minutes. It can take
9733
9804
  # from a few seconds to a number of minutes for changes to propagate.
9734
- # Verify the resources that you are specifying in your request
9735
- # parameters and then retry the operation.
9805
+ # Verify the resource specifications in your request parameters and then
9806
+ # retry the operation.
9736
9807
  #
9737
9808
  # @!attribute [rw] message
9738
9809
  # @return [String]
@@ -9768,11 +9839,11 @@ module Aws::WAFV2
9768
9839
  # (allow, block) for any request that does not match any of the rules.
9769
9840
  # The rules in a web ACL can be a combination of the types Rule,
9770
9841
  # RuleGroup, and managed rule group. You can associate a web ACL with
9771
- # one or more Amazon Web Services resources to protect. The resources
9772
- # can be an Amazon CloudFront distribution, an Amazon API Gateway REST
9773
- # API, an Application Load Balancer, an AppSync GraphQL API, an Amazon
9774
- # Cognito user pool, an App Runner service, or an Amazon Web Services
9775
- # Verified Access instance.
9842
+ # one or more Amazon Web Services resources to protect. The resource
9843
+ # types include Amazon CloudFront distribution, Amazon API Gateway REST
9844
+ # API, Application Load Balancer, AppSync GraphQL API, Amazon Cognito
9845
+ # user pool, App Runner service, and Amazon Web Services Verified Access
9846
+ # instance.
9776
9847
  #
9777
9848
  # @!attribute [rw] name
9778
9849
  # The name of the web ACL. You cannot change the name of a web ACL
@@ -9811,6 +9882,19 @@ module Aws::WAFV2
9811
9882
  # collection.
9812
9883
  # @return [Types::VisibilityConfig]
9813
9884
  #
9885
+ # @!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.
9889
+ #
9890
+ # The data protection that you configure for the web ACL alters the
9891
+ # 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.
9896
+ # @return [Types::DataProtectionConfig]
9897
+ #
9814
9898
  # @!attribute [rw] capacity
9815
9899
  # The web ACL capacity units (WCUs) currently being used by this web
9816
9900
  # ACL.
@@ -9970,6 +10054,7 @@ module Aws::WAFV2
9970
10054
  :description,
9971
10055
  :rules,
9972
10056
  :visibility_config,
10057
+ :data_protection_config,
9973
10058
  :capacity,
9974
10059
  :pre_process_firewall_manager_rule_groups,
9975
10060
  :post_process_firewall_manager_rule_groups,