aws-sdk-wafv2 1.66.0 → 1.67.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c621adb2fb9043024cd4b060e81111e25716703ab497fe4489a6a060de0e51ab
4
- data.tar.gz: a960e705110e88ee11117904c40a2effb6b09d004e0e7727cf3294de1cdd547b
3
+ metadata.gz: cfc83feb97b81c084a12a98b35291d98507286d93c3972420c959e0f6da4ecf7
4
+ data.tar.gz: 17b9a18e5c3ea1041b1c5d2275aa11669096885f0635dedbee11598032c016b6
5
5
  SHA512:
6
- metadata.gz: 0c2245ddd32968281bdf844c5b609b81b916e73f85ba942b9fe1f9f7fc5198a4db4307470831b73e5d48f1ec96abd50889dc670b7a4941aaf31fc03c563c9614
7
- data.tar.gz: 153bf0e50c47be3fdd9b9e76d847bf69f0beb286d8e60b037954c1b29489ef59787f6523223bb594715ef92246cfa1ff1834899215506a8d0ec1b1bb5d45f4ab
6
+ metadata.gz: 93be6b2190a277bc244c15c09eb1fd6d197edcaa6b32ded03465d7a094aaa2902acc9ade8b11005c5c05910e90eb83c6859ef7c58e450088eda16801fa1cd7e0
7
+ data.tar.gz: bd76607f8715f85d978682ac0c987671f5f70c9959fe3409b455465cc8b506320a40f4d9bfa0332cd72713a19ea408b569fe74fc2e33b285bcc1f55e9f5cad9f
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.67.0 (2023-07-19)
5
+ ------------------
6
+
7
+ * Feature - Added the URI path to the custom aggregation keys that you can specify for a rate-based rule.
8
+
4
9
  1.66.0 (2023-07-11)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.66.0
1
+ 1.67.0
@@ -971,6 +971,14 @@ module Aws::WAFV2
971
971
  # label_namespace: {
972
972
  # namespace: "LabelNamespace", # required
973
973
  # },
974
+ # uri_path: {
975
+ # text_transformations: [ # required
976
+ # {
977
+ # priority: 1, # required
978
+ # type: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE, BASE64_DECODE, HEX_DECODE, MD5, REPLACE_COMMENTS, ESCAPE_SEQ_DECODE, SQL_HEX_DECODE, CSS_DECODE, JS_DECODE, NORMALIZE_PATH, NORMALIZE_PATH_WIN, REMOVE_NULLS, REPLACE_NULLS, BASE64_DECODE_EXT, URL_DECODE_UNI, UTF8_TO_UNICODE
979
+ # },
980
+ # ],
981
+ # },
974
982
  # },
975
983
  # ],
976
984
  # },
@@ -2122,6 +2130,14 @@ module Aws::WAFV2
2122
2130
  # label_namespace: {
2123
2131
  # namespace: "LabelNamespace", # required
2124
2132
  # },
2133
+ # uri_path: {
2134
+ # text_transformations: [ # required
2135
+ # {
2136
+ # priority: 1, # required
2137
+ # type: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE, BASE64_DECODE, HEX_DECODE, MD5, REPLACE_COMMENTS, ESCAPE_SEQ_DECODE, SQL_HEX_DECODE, CSS_DECODE, JS_DECODE, NORMALIZE_PATH, NORMALIZE_PATH_WIN, REMOVE_NULLS, REPLACE_NULLS, BASE64_DECODE_EXT, URL_DECODE_UNI, UTF8_TO_UNICODE
2138
+ # },
2139
+ # ],
2140
+ # },
2125
2141
  # },
2126
2142
  # ],
2127
2143
  # },
@@ -3102,6 +3118,14 @@ module Aws::WAFV2
3102
3118
  # label_namespace: {
3103
3119
  # namespace: "LabelNamespace", # required
3104
3120
  # },
3121
+ # uri_path: {
3122
+ # text_transformations: [ # required
3123
+ # {
3124
+ # priority: 1, # required
3125
+ # type: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE, BASE64_DECODE, HEX_DECODE, MD5, REPLACE_COMMENTS, ESCAPE_SEQ_DECODE, SQL_HEX_DECODE, CSS_DECODE, JS_DECODE, NORMALIZE_PATH, NORMALIZE_PATH_WIN, REMOVE_NULLS, REPLACE_NULLS, BASE64_DECODE_EXT, URL_DECODE_UNI, UTF8_TO_UNICODE
3126
+ # },
3127
+ # ],
3128
+ # },
3105
3129
  # },
3106
3130
  # ],
3107
3131
  # },
@@ -4865,6 +4889,9 @@ module Aws::WAFV2
4865
4889
  # resp.rule_group.rules[0].statement.rate_based_statement.custom_keys[0].query_string.text_transformations[0].priority #=> Integer
4866
4890
  # resp.rule_group.rules[0].statement.rate_based_statement.custom_keys[0].query_string.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE", "BASE64_DECODE", "HEX_DECODE", "MD5", "REPLACE_COMMENTS", "ESCAPE_SEQ_DECODE", "SQL_HEX_DECODE", "CSS_DECODE", "JS_DECODE", "NORMALIZE_PATH", "NORMALIZE_PATH_WIN", "REMOVE_NULLS", "REPLACE_NULLS", "BASE64_DECODE_EXT", "URL_DECODE_UNI", "UTF8_TO_UNICODE"
4867
4891
  # resp.rule_group.rules[0].statement.rate_based_statement.custom_keys[0].label_namespace.namespace #=> String
4892
+ # resp.rule_group.rules[0].statement.rate_based_statement.custom_keys[0].uri_path.text_transformations #=> Array
4893
+ # resp.rule_group.rules[0].statement.rate_based_statement.custom_keys[0].uri_path.text_transformations[0].priority #=> Integer
4894
+ # resp.rule_group.rules[0].statement.rate_based_statement.custom_keys[0].uri_path.text_transformations[0].type #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE", "BASE64_DECODE", "HEX_DECODE", "MD5", "REPLACE_COMMENTS", "ESCAPE_SEQ_DECODE", "SQL_HEX_DECODE", "CSS_DECODE", "JS_DECODE", "NORMALIZE_PATH", "NORMALIZE_PATH_WIN", "REMOVE_NULLS", "REPLACE_NULLS", "BASE64_DECODE_EXT", "URL_DECODE_UNI", "UTF8_TO_UNICODE"
4868
4895
  # resp.rule_group.rules[0].statement.and_statement.statements #=> Array
4869
4896
  # resp.rule_group.rules[0].statement.and_statement.statements[0] #=> Types::Statement
4870
4897
  # resp.rule_group.rules[0].statement.or_statement.statements #=> Array
@@ -7352,6 +7379,14 @@ module Aws::WAFV2
7352
7379
  # label_namespace: {
7353
7380
  # namespace: "LabelNamespace", # required
7354
7381
  # },
7382
+ # uri_path: {
7383
+ # text_transformations: [ # required
7384
+ # {
7385
+ # priority: 1, # required
7386
+ # type: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE, BASE64_DECODE, HEX_DECODE, MD5, REPLACE_COMMENTS, ESCAPE_SEQ_DECODE, SQL_HEX_DECODE, CSS_DECODE, JS_DECODE, NORMALIZE_PATH, NORMALIZE_PATH_WIN, REMOVE_NULLS, REPLACE_NULLS, BASE64_DECODE_EXT, URL_DECODE_UNI, UTF8_TO_UNICODE
7387
+ # },
7388
+ # ],
7389
+ # },
7355
7390
  # },
7356
7391
  # ],
7357
7392
  # },
@@ -8366,6 +8401,14 @@ module Aws::WAFV2
8366
8401
  # label_namespace: {
8367
8402
  # namespace: "LabelNamespace", # required
8368
8403
  # },
8404
+ # uri_path: {
8405
+ # text_transformations: [ # required
8406
+ # {
8407
+ # priority: 1, # required
8408
+ # type: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE, BASE64_DECODE, HEX_DECODE, MD5, REPLACE_COMMENTS, ESCAPE_SEQ_DECODE, SQL_HEX_DECODE, CSS_DECODE, JS_DECODE, NORMALIZE_PATH, NORMALIZE_PATH_WIN, REMOVE_NULLS, REPLACE_NULLS, BASE64_DECODE_EXT, URL_DECODE_UNI, UTF8_TO_UNICODE
8409
+ # },
8410
+ # ],
8411
+ # },
8369
8412
  # },
8370
8413
  # ],
8371
8414
  # },
@@ -8769,7 +8812,7 @@ module Aws::WAFV2
8769
8812
  params: params,
8770
8813
  config: config)
8771
8814
  context[:gem_name] = 'aws-sdk-wafv2'
8772
- context[:gem_version] = '1.66.0'
8815
+ context[:gem_version] = '1.67.0'
8773
8816
  Seahorse::Client::Request.new(handlers, context)
8774
8817
  end
8775
8818
 
@@ -283,6 +283,7 @@ module Aws::WAFV2
283
283
  RateLimitLabelNamespace = Shapes::StructureShape.new(name: 'RateLimitLabelNamespace')
284
284
  RateLimitQueryArgument = Shapes::StructureShape.new(name: 'RateLimitQueryArgument')
285
285
  RateLimitQueryString = Shapes::StructureShape.new(name: 'RateLimitQueryString')
286
+ RateLimitUriPath = Shapes::StructureShape.new(name: 'RateLimitUriPath')
286
287
  RedactedFields = Shapes::ListShape.new(name: 'RedactedFields')
287
288
  Regex = Shapes::StructureShape.new(name: 'Regex')
288
289
  RegexMatchStatement = Shapes::StructureShape.new(name: 'RegexMatchStatement')
@@ -1214,6 +1215,7 @@ module Aws::WAFV2
1214
1215
  RateBasedStatementCustomKey.add_member(:forwarded_ip, Shapes::ShapeRef.new(shape: RateLimitForwardedIP, location_name: "ForwardedIP"))
1215
1216
  RateBasedStatementCustomKey.add_member(:ip, Shapes::ShapeRef.new(shape: RateLimitIP, location_name: "IP"))
1216
1217
  RateBasedStatementCustomKey.add_member(:label_namespace, Shapes::ShapeRef.new(shape: RateLimitLabelNamespace, location_name: "LabelNamespace"))
1218
+ RateBasedStatementCustomKey.add_member(:uri_path, Shapes::ShapeRef.new(shape: RateLimitUriPath, location_name: "UriPath"))
1217
1219
  RateBasedStatementCustomKey.struct_class = Types::RateBasedStatementCustomKey
1218
1220
 
1219
1221
  RateBasedStatementCustomKeys.member = Shapes::ShapeRef.new(shape: RateBasedStatementCustomKey)
@@ -1246,6 +1248,9 @@ module Aws::WAFV2
1246
1248
  RateLimitQueryString.add_member(:text_transformations, Shapes::ShapeRef.new(shape: TextTransformations, required: true, location_name: "TextTransformations"))
1247
1249
  RateLimitQueryString.struct_class = Types::RateLimitQueryString
1248
1250
 
1251
+ RateLimitUriPath.add_member(:text_transformations, Shapes::ShapeRef.new(shape: TextTransformations, required: true, location_name: "TextTransformations"))
1252
+ RateLimitUriPath.struct_class = Types::RateLimitUriPath
1253
+
1249
1254
  RedactedFields.member = Shapes::ShapeRef.new(shape: FieldToMatch)
1250
1255
 
1251
1256
  Regex.add_member(:regex_string, Shapes::ShapeRef.new(shape: RegexPatternString, location_name: "RegexString"))
@@ -877,8 +877,8 @@ module Aws::WAFV2
877
877
  # You must specify exactly one setting: either `All`, `IncludedCookies`,
878
878
  # or `ExcludedCookies`.
879
879
  #
880
- # Example JSON: `"MatchPattern": \{ "IncludedCookies":
881
- # \{"KeyToInclude1", "KeyToInclude2", "KeyToInclude3"\} \}`
880
+ # Example JSON: `"MatchPattern": \{ "IncludedCookies": [
881
+ # "session-id-time", "session-id" ] \}`
882
882
  #
883
883
  # @!attribute [rw] all
884
884
  # Inspect all cookies.
@@ -921,8 +921,8 @@ module Aws::WAFV2
921
921
  # You must specify exactly one setting: either `All`,
922
922
  # `IncludedCookies`, or `ExcludedCookies`.
923
923
  #
924
- # Example JSON: `"MatchPattern": \{ "IncludedCookies":
925
- # \{"KeyToInclude1", "KeyToInclude2", "KeyToInclude3"\} \}`
924
+ # Example JSON: `"MatchPattern": \{ "IncludedCookies": [
925
+ # "session-id-time", "session-id" ] \}`
926
926
  # @return [Types::CookieMatchPattern]
927
927
  #
928
928
  # @!attribute [rw] match_scope
@@ -3395,8 +3395,8 @@ module Aws::WAFV2
3395
3395
  # You must specify exactly one setting: either `All`, `IncludedHeaders`,
3396
3396
  # or `ExcludedHeaders`.
3397
3397
  #
3398
- # Example JSON: `"MatchPattern": \{ "ExcludedHeaders":
3399
- # \{"KeyToExclude1", "KeyToExclude2"\} \}`
3398
+ # Example JSON: `"MatchPattern": \{ "ExcludedHeaders": [
3399
+ # "KeyToExclude1", "KeyToExclude2" ] \}`
3400
3400
  #
3401
3401
  # @!attribute [rw] all
3402
3402
  # Inspect all headers.
@@ -3476,8 +3476,8 @@ module Aws::WAFV2
3476
3476
  # You must specify exactly one setting: either `All`,
3477
3477
  # `IncludedHeaders`, or `ExcludedHeaders`.
3478
3478
  #
3479
- # Example JSON: `"MatchPattern": \{ "ExcludedHeaders":
3480
- # \{"KeyToExclude1", "KeyToExclude2"\} \}`
3479
+ # Example JSON: `"MatchPattern": \{ "ExcludedHeaders": [
3480
+ # "KeyToExclude1", "KeyToExclude2" ] \}`
3481
3481
  # @return [Types::HeaderMatchPattern]
3482
3482
  #
3483
3483
  # @!attribute [rw] match_scope
@@ -6156,6 +6156,13 @@ module Aws::WAFV2
6156
6156
  # [1]: https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-label-requirements.html
6157
6157
  # @return [Types::RateLimitLabelNamespace]
6158
6158
  #
6159
+ # @!attribute [rw] uri_path
6160
+ # Use the request's URI path as an aggregate key. Each distinct URI
6161
+ # path contributes to the aggregation instance. If you use just the
6162
+ # URI path as your custom key, then each URI path fully defines an
6163
+ # aggregation instance.
6164
+ # @return [Types::RateLimitUriPath]
6165
+ #
6159
6166
  # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RateBasedStatementCustomKey AWS API Documentation
6160
6167
  #
6161
6168
  class RateBasedStatementCustomKey < Struct.new(
@@ -6166,7 +6173,8 @@ module Aws::WAFV2
6166
6173
  :http_method,
6167
6174
  :forwarded_ip,
6168
6175
  :ip,
6169
- :label_namespace)
6176
+ :label_namespace,
6177
+ :uri_path)
6170
6178
  SENSITIVE = []
6171
6179
  include Aws::Structure
6172
6180
  end
@@ -6408,6 +6416,31 @@ module Aws::WAFV2
6408
6416
  include Aws::Structure
6409
6417
  end
6410
6418
 
6419
+ # Specifies the request's URI path as an aggregate key for a rate-based
6420
+ # rule. Each distinct URI path contributes to the aggregation instance.
6421
+ # If you use just the URI path as your custom key, then each URI path
6422
+ # fully defines an aggregation instance.
6423
+ #
6424
+ # @!attribute [rw] text_transformations
6425
+ # Text transformations eliminate some of the unusual formatting that
6426
+ # attackers use in web requests in an effort to bypass detection. Text
6427
+ # transformations are used in rule match statements, to transform the
6428
+ # `FieldToMatch` request component before inspecting it, and they're
6429
+ # used in rate-based rule statements, to transform request components
6430
+ # before using them as custom aggregation keys. If you specify one or
6431
+ # more transformations to apply, WAF performs all transformations on
6432
+ # the specified content, starting from the lowest priority setting,
6433
+ # and then uses the component contents.
6434
+ # @return [Array<Types::TextTransformation>]
6435
+ #
6436
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wafv2-2019-07-29/RateLimitUriPath AWS API Documentation
6437
+ #
6438
+ class RateLimitUriPath < Struct.new(
6439
+ :text_transformations)
6440
+ SENSITIVE = []
6441
+ include Aws::Structure
6442
+ end
6443
+
6411
6444
  # A single regular expression. This is used in a RegexPatternSet.
6412
6445
  #
6413
6446
  # @!attribute [rw] regex_string
data/lib/aws-sdk-wafv2.rb CHANGED
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-wafv2/customizations'
52
52
  # @!group service
53
53
  module Aws::WAFV2
54
54
 
55
- GEM_VERSION = '1.66.0'
55
+ GEM_VERSION = '1.67.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-wafv2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.66.0
4
+ version: 1.67.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-07-11 00:00:00.000000000 Z
11
+ date: 2023-07-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core