aws-sdk-wafregional 1.5.0 → 1.6.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
  SHA1:
3
- metadata.gz: 62546ae137d830f96c7a3509c6aeb79e9287b8b7
4
- data.tar.gz: 063f83e367da91de1a9a70612a373578a872c8a9
3
+ metadata.gz: db2f26398517536153f20660debedb1f8aa417f6
4
+ data.tar.gz: 3a9b36e0ebed5bc4469bfa6f091af028c6f0bd8f
5
5
  SHA512:
6
- metadata.gz: d337576dec62fa07bf2b2daf0aeea75875fce07ada37f4df014014581f353986bcde6e7350a12147740a5c48f292037b3438e2b9748d07a51743fbf8a983a76b
7
- data.tar.gz: 47b2acf72733ee06a7e10df1cf9e4d79905614ba3238cd0e8feb769fd0401aba860bc98a89e560205cea2075a038aa037b70def94fc667c308f283c0ac638014
6
+ metadata.gz: 58c66992b5da475ab0532478b0eaed0ca14f7c82e1723f9b1c91d4798bdcaa8eab256756beb722b766ed1c0a12f5739a53cb423b07b541d6a145299d7fe92fda
7
+ data.tar.gz: c63419a10f7092dca8bb4500d698fe46635d13a4ac85d8c4566ac06d71cda7e0c38f4285fbda8116efb5a7e0ef86a162717762bce64ea4d0cd2185e085b70e71
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-wafregional/customizations'
42
42
  # @service
43
43
  module Aws::WAFRegional
44
44
 
45
- GEM_VERSION = '1.5.0'
45
+ GEM_VERSION = '1.6.0'
46
46
 
47
47
  end
@@ -244,7 +244,7 @@ module Aws::WAFRegional
244
244
  # resp.byte_match_set.byte_match_set_id #=> String
245
245
  # resp.byte_match_set.name #=> String
246
246
  # resp.byte_match_set.byte_match_tuples #=> Array
247
- # resp.byte_match_set.byte_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY"
247
+ # resp.byte_match_set.byte_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
248
248
  # resp.byte_match_set.byte_match_tuples[0].field_to_match.data #=> String
249
249
  # resp.byte_match_set.byte_match_tuples[0].target_string #=> String
250
250
  # resp.byte_match_set.byte_match_tuples[0].text_transformation #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
@@ -606,7 +606,7 @@ module Aws::WAFRegional
606
606
  # resp.regex_match_set.regex_match_set_id #=> String
607
607
  # resp.regex_match_set.name #=> String
608
608
  # resp.regex_match_set.regex_match_tuples #=> Array
609
- # resp.regex_match_set.regex_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY"
609
+ # resp.regex_match_set.regex_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
610
610
  # resp.regex_match_set.regex_match_tuples[0].field_to_match.data #=> String
611
611
  # resp.regex_match_set.regex_match_tuples[0].text_transformation #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
612
612
  # resp.regex_match_set.regex_match_tuples[0].regex_pattern_set_id #=> String
@@ -945,7 +945,7 @@ module Aws::WAFRegional
945
945
  # resp.size_constraint_set.size_constraint_set_id #=> String
946
946
  # resp.size_constraint_set.name #=> String
947
947
  # resp.size_constraint_set.size_constraints #=> Array
948
- # resp.size_constraint_set.size_constraints[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY"
948
+ # resp.size_constraint_set.size_constraints[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
949
949
  # resp.size_constraint_set.size_constraints[0].field_to_match.data #=> String
950
950
  # resp.size_constraint_set.size_constraints[0].text_transformation #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
951
951
  # resp.size_constraint_set.size_constraints[0].comparison_operator #=> String, one of "EQ", "NE", "LE", "LT", "GE", "GT"
@@ -1041,7 +1041,7 @@ module Aws::WAFRegional
1041
1041
  # resp.sql_injection_match_set.sql_injection_match_set_id #=> String
1042
1042
  # resp.sql_injection_match_set.name #=> String
1043
1043
  # resp.sql_injection_match_set.sql_injection_match_tuples #=> Array
1044
- # resp.sql_injection_match_set.sql_injection_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY"
1044
+ # resp.sql_injection_match_set.sql_injection_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
1045
1045
  # resp.sql_injection_match_set.sql_injection_match_tuples[0].field_to_match.data #=> String
1046
1046
  # resp.sql_injection_match_set.sql_injection_match_tuples[0].text_transformation #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
1047
1047
  # resp.change_token #=> String
@@ -1263,7 +1263,7 @@ module Aws::WAFRegional
1263
1263
  # resp.xss_match_set.xss_match_set_id #=> String
1264
1264
  # resp.xss_match_set.name #=> String
1265
1265
  # resp.xss_match_set.xss_match_tuples #=> Array
1266
- # resp.xss_match_set.xss_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY"
1266
+ # resp.xss_match_set.xss_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
1267
1267
  # resp.xss_match_set.xss_match_tuples[0].field_to_match.data #=> String
1268
1268
  # resp.xss_match_set.xss_match_tuples[0].text_transformation #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
1269
1269
  # resp.change_token #=> String
@@ -1453,6 +1453,30 @@ module Aws::WAFRegional
1453
1453
  req.send_request(options)
1454
1454
  end
1455
1455
 
1456
+ # Permanently deletes the LoggingConfiguration from the specified web
1457
+ # ACL.
1458
+ #
1459
+ # @option params [required, String] :resource_arn
1460
+ # The Amazon Resource Name (ARN) of the web ACL from which you want to
1461
+ # delete the LoggingConfiguration.
1462
+ #
1463
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1464
+ #
1465
+ # @example Request syntax with placeholder values
1466
+ #
1467
+ # resp = client.delete_logging_configuration({
1468
+ # resource_arn: "ResourceArn", # required
1469
+ # })
1470
+ #
1471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteLoggingConfiguration AWS API Documentation
1472
+ #
1473
+ # @overload delete_logging_configuration(params = {})
1474
+ # @param [Hash] params ({})
1475
+ def delete_logging_configuration(params = {}, options = {})
1476
+ req = build_request(:delete_logging_configuration, params)
1477
+ req.send_request(options)
1478
+ end
1479
+
1456
1480
  # Permanently deletes an IAM policy from the specified RuleGroup.
1457
1481
  #
1458
1482
  # The user making the request must be the owner of the RuleGroup.
@@ -2052,7 +2076,7 @@ module Aws::WAFRegional
2052
2076
  # resp.byte_match_set.byte_match_set_id #=> String
2053
2077
  # resp.byte_match_set.name #=> String
2054
2078
  # resp.byte_match_set.byte_match_tuples #=> Array
2055
- # resp.byte_match_set.byte_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY"
2079
+ # resp.byte_match_set.byte_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
2056
2080
  # resp.byte_match_set.byte_match_tuples[0].field_to_match.data #=> String
2057
2081
  # resp.byte_match_set.byte_match_tuples[0].target_string #=> String
2058
2082
  # resp.byte_match_set.byte_match_tuples[0].text_transformation #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
@@ -2256,6 +2280,40 @@ module Aws::WAFRegional
2256
2280
  req.send_request(options)
2257
2281
  end
2258
2282
 
2283
+ # Returns the LoggingConfiguration for the specified web ACL.
2284
+ #
2285
+ # @option params [required, String] :resource_arn
2286
+ # The Amazon Resource Name (ARN) of the web ACL for which you want to
2287
+ # get the LoggingConfiguration.
2288
+ #
2289
+ # @return [Types::GetLoggingConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2290
+ #
2291
+ # * {Types::GetLoggingConfigurationResponse#logging_configuration #logging_configuration} => Types::LoggingConfiguration
2292
+ #
2293
+ # @example Request syntax with placeholder values
2294
+ #
2295
+ # resp = client.get_logging_configuration({
2296
+ # resource_arn: "ResourceArn", # required
2297
+ # })
2298
+ #
2299
+ # @example Response structure
2300
+ #
2301
+ # resp.logging_configuration.resource_arn #=> String
2302
+ # resp.logging_configuration.log_destination_configs #=> Array
2303
+ # resp.logging_configuration.log_destination_configs[0] #=> String
2304
+ # resp.logging_configuration.redacted_fields #=> Array
2305
+ # resp.logging_configuration.redacted_fields[0].type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
2306
+ # resp.logging_configuration.redacted_fields[0].data #=> String
2307
+ #
2308
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetLoggingConfiguration AWS API Documentation
2309
+ #
2310
+ # @overload get_logging_configuration(params = {})
2311
+ # @param [Hash] params ({})
2312
+ def get_logging_configuration(params = {}, options = {})
2313
+ req = build_request(:get_logging_configuration, params)
2314
+ req.send_request(options)
2315
+ end
2316
+
2259
2317
  # Returns the IAM policy attached to the RuleGroup.
2260
2318
  #
2261
2319
  # @option params [required, String] :resource_arn
@@ -2387,7 +2445,7 @@ module Aws::WAFRegional
2387
2445
  # resp.regex_match_set.regex_match_set_id #=> String
2388
2446
  # resp.regex_match_set.name #=> String
2389
2447
  # resp.regex_match_set.regex_match_tuples #=> Array
2390
- # resp.regex_match_set.regex_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY"
2448
+ # resp.regex_match_set.regex_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
2391
2449
  # resp.regex_match_set.regex_match_tuples[0].field_to_match.data #=> String
2392
2450
  # resp.regex_match_set.regex_match_tuples[0].text_transformation #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
2393
2451
  # resp.regex_match_set.regex_match_tuples[0].regex_pattern_set_id #=> String
@@ -2712,7 +2770,7 @@ module Aws::WAFRegional
2712
2770
  # resp.size_constraint_set.size_constraint_set_id #=> String
2713
2771
  # resp.size_constraint_set.name #=> String
2714
2772
  # resp.size_constraint_set.size_constraints #=> Array
2715
- # resp.size_constraint_set.size_constraints[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY"
2773
+ # resp.size_constraint_set.size_constraints[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
2716
2774
  # resp.size_constraint_set.size_constraints[0].field_to_match.data #=> String
2717
2775
  # resp.size_constraint_set.size_constraints[0].text_transformation #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
2718
2776
  # resp.size_constraint_set.size_constraints[0].comparison_operator #=> String, one of "EQ", "NE", "LE", "LT", "GE", "GT"
@@ -2776,7 +2834,7 @@ module Aws::WAFRegional
2776
2834
  # resp.sql_injection_match_set.sql_injection_match_set_id #=> String
2777
2835
  # resp.sql_injection_match_set.name #=> String
2778
2836
  # resp.sql_injection_match_set.sql_injection_match_tuples #=> Array
2779
- # resp.sql_injection_match_set.sql_injection_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY"
2837
+ # resp.sql_injection_match_set.sql_injection_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
2780
2838
  # resp.sql_injection_match_set.sql_injection_match_tuples[0].field_to_match.data #=> String
2781
2839
  # resp.sql_injection_match_set.sql_injection_match_tuples[0].text_transformation #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
2782
2840
  #
@@ -2934,7 +2992,7 @@ module Aws::WAFRegional
2934
2992
  # resp.xss_match_set.xss_match_set_id #=> String
2935
2993
  # resp.xss_match_set.name #=> String
2936
2994
  # resp.xss_match_set.xss_match_tuples #=> Array
2937
- # resp.xss_match_set.xss_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY"
2995
+ # resp.xss_match_set.xss_match_tuples[0].field_to_match.type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
2938
2996
  # resp.xss_match_set.xss_match_tuples[0].field_to_match.data #=> String
2939
2997
  # resp.xss_match_set.xss_match_tuples[0].text_transformation #=> String, one of "NONE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "CMD_LINE", "URL_DECODE"
2940
2998
  #
@@ -3153,6 +3211,56 @@ module Aws::WAFRegional
3153
3211
  req.send_request(options)
3154
3212
  end
3155
3213
 
3214
+ # Returns an array of LoggingConfiguration objects.
3215
+ #
3216
+ # @option params [String] :next_marker
3217
+ # If you specify a value for `Limit` and you have more
3218
+ # `LoggingConfigurations` than the value of `Limit`, AWS WAF returns a
3219
+ # `NextMarker` value in the response that allows you to list another
3220
+ # group of `LoggingConfigurations`. For the second and subsequent
3221
+ # `ListLoggingConfigurations` requests, specify the value of
3222
+ # `NextMarker` from the previous response to get information about
3223
+ # another batch of `ListLoggingConfigurations`.
3224
+ #
3225
+ # @option params [Integer] :limit
3226
+ # Specifies the number of `LoggingConfigurations` that you want AWS WAF
3227
+ # to return for this request. If you have more `LoggingConfigurations`
3228
+ # than the number that you specify for `Limit`, the response includes a
3229
+ # `NextMarker` value that you can use to get another batch of
3230
+ # `LoggingConfigurations`.
3231
+ #
3232
+ # @return [Types::ListLoggingConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3233
+ #
3234
+ # * {Types::ListLoggingConfigurationsResponse#logging_configurations #logging_configurations} => Array<Types::LoggingConfiguration>
3235
+ # * {Types::ListLoggingConfigurationsResponse#next_marker #next_marker} => String
3236
+ #
3237
+ # @example Request syntax with placeholder values
3238
+ #
3239
+ # resp = client.list_logging_configurations({
3240
+ # next_marker: "NextMarker",
3241
+ # limit: 1,
3242
+ # })
3243
+ #
3244
+ # @example Response structure
3245
+ #
3246
+ # resp.logging_configurations #=> Array
3247
+ # resp.logging_configurations[0].resource_arn #=> String
3248
+ # resp.logging_configurations[0].log_destination_configs #=> Array
3249
+ # resp.logging_configurations[0].log_destination_configs[0] #=> String
3250
+ # resp.logging_configurations[0].redacted_fields #=> Array
3251
+ # resp.logging_configurations[0].redacted_fields[0].type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
3252
+ # resp.logging_configurations[0].redacted_fields[0].data #=> String
3253
+ # resp.next_marker #=> String
3254
+ #
3255
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListLoggingConfigurations AWS API Documentation
3256
+ #
3257
+ # @overload list_logging_configurations(params = {})
3258
+ # @param [Hash] params ({})
3259
+ def list_logging_configurations(params = {}, options = {})
3260
+ req = build_request(:list_logging_configurations, params)
3261
+ req.send_request(options)
3262
+ end
3263
+
3156
3264
  # Returns an array of RuleSummary objects.
3157
3265
  #
3158
3266
  # @option params [String] :next_marker
@@ -3728,6 +3836,71 @@ module Aws::WAFRegional
3728
3836
  req.send_request(options)
3729
3837
  end
3730
3838
 
3839
+ # Associates a LoggingConfiguration with a specified web ACL.
3840
+ #
3841
+ # You can access information about all traffic that AWS WAF inspects
3842
+ # using the following steps:
3843
+ #
3844
+ # 1. Create an Amazon Kinesis Data Firehose delivery stream. For more
3845
+ # information, see [Creating an Amazon Kinesis Data Firehose
3846
+ # Delivery Stream][1].
3847
+ #
3848
+ # 2. Associate that delivery stream to your web ACL using a
3849
+ # `PutLoggingConfiguration` request.
3850
+ #
3851
+ # When you successfully enable logging using a `PutLoggingConfiguration`
3852
+ # request, AWS WAF will create a service linked role with the necessary
3853
+ # permissions to write logs to the Amazon Kinesis Data Firehose delivery
3854
+ # stream. For more information, see [Logging Web ACL Traffic
3855
+ # Information][2] in the *AWS WAF Developer Guide*.
3856
+ #
3857
+ #
3858
+ #
3859
+ # [1]: https://docs.aws.amazon.com/firehose/latest/dev/what-is-this-service.html
3860
+ # [2]: http://docs.aws.amazon.com/waf/latest/developerguide/logging.html
3861
+ #
3862
+ # @option params [required, Types::LoggingConfiguration] :logging_configuration
3863
+ # The Amazon Kinesis Data Firehose delivery streams that contains the
3864
+ # inspected traffic information, the redacted fields details, and the
3865
+ # Amazon Resource Name (ARN) of the web ACL to monitor.
3866
+ #
3867
+ # @return [Types::PutLoggingConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3868
+ #
3869
+ # * {Types::PutLoggingConfigurationResponse#logging_configuration #logging_configuration} => Types::LoggingConfiguration
3870
+ #
3871
+ # @example Request syntax with placeholder values
3872
+ #
3873
+ # resp = client.put_logging_configuration({
3874
+ # logging_configuration: { # required
3875
+ # resource_arn: "ResourceArn", # required
3876
+ # log_destination_configs: ["ResourceArn"], # required
3877
+ # redacted_fields: [
3878
+ # {
3879
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
3880
+ # data: "MatchFieldData",
3881
+ # },
3882
+ # ],
3883
+ # },
3884
+ # })
3885
+ #
3886
+ # @example Response structure
3887
+ #
3888
+ # resp.logging_configuration.resource_arn #=> String
3889
+ # resp.logging_configuration.log_destination_configs #=> Array
3890
+ # resp.logging_configuration.log_destination_configs[0] #=> String
3891
+ # resp.logging_configuration.redacted_fields #=> Array
3892
+ # resp.logging_configuration.redacted_fields[0].type #=> String, one of "URI", "QUERY_STRING", "HEADER", "METHOD", "BODY", "SINGLE_QUERY_ARG", "ALL_QUERY_ARGS"
3893
+ # resp.logging_configuration.redacted_fields[0].data #=> String
3894
+ #
3895
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/PutLoggingConfiguration AWS API Documentation
3896
+ #
3897
+ # @overload put_logging_configuration(params = {})
3898
+ # @param [Hash] params ({})
3899
+ def put_logging_configuration(params = {}, options = {})
3900
+ req = build_request(:put_logging_configuration, params)
3901
+ req.send_request(options)
3902
+ end
3903
+
3731
3904
  # Attaches a IAM policy to the specified resource. The only supported
3732
3905
  # use for this action is to share a RuleGroup across accounts.
3733
3906
  #
@@ -3740,8 +3913,9 @@ module Aws::WAFRegional
3740
3913
  #
3741
3914
  # * `Effect` must specify `Allow`.
3742
3915
  #
3743
- # * The `Action` in the policy must be `waf:UpdateWebACL` and
3744
- # `waf-regional:UpdateWebACL`. Any extra or wildcard actions in the
3916
+ # * The `Action` in the policy must be `waf:UpdateWebACL`,
3917
+ # `waf-regional:UpdateWebACL`, `waf:GetRuleGroup` and
3918
+ # `waf-regional:GetRuleGroup` . Any extra or wildcard actions in the
3745
3919
  # policy will be rejected.
3746
3920
  #
3747
3921
  # * The policy cannot include a `Resource` parameter.
@@ -3896,7 +4070,7 @@ module Aws::WAFRegional
3896
4070
  # action: "INSERT", # required, accepts INSERT, DELETE
3897
4071
  # byte_match_tuple: { # required
3898
4072
  # field_to_match: { # required
3899
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
4073
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
3900
4074
  # data: "MatchFieldData",
3901
4075
  # },
3902
4076
  # target_string: "data", # required
@@ -4021,10 +4195,10 @@ module Aws::WAFRegional
4021
4195
  # the range of IP addresses from `192.0.2.0` to `192.0.2.255`) or
4022
4196
  # `192.0.2.44/32` (for the individual IP address `192.0.2.44`).
4023
4197
  #
4024
- # AWS WAF supports /8, /16, /24, and /32 IP address ranges for IPv4, and
4025
- # /24, /32, /48, /56, /64 and /128 for IPv6. For more information about
4026
- # CIDR notation, see the Wikipedia entry [Classless Inter-Domain
4027
- # Routing][1].
4198
+ # AWS WAF supports IPv4 address ranges: /8 and any range between /16
4199
+ # through /32. AWS WAF supports IPv6 address ranges: /16, /24, /32, /48,
4200
+ # /56, /64, and /128. For more information about CIDR notation, see the
4201
+ # Wikipedia entry [Classless Inter-Domain Routing][1].
4028
4202
  #
4029
4203
  # IPv6 addresses can be represented using any of the following formats:
4030
4204
  #
@@ -4058,6 +4232,8 @@ module Aws::WAFRegional
4058
4232
  # change an IP address, you delete the existing IP address and add the
4059
4233
  # new one.
4060
4234
  #
4235
+ # You can insert a maximum of 1000 addresses in a single request.
4236
+ #
4061
4237
  # For more information about how to use the AWS WAF API to allow or
4062
4238
  # block HTTP requests, see the [AWS WAF Developer Guide][2].
4063
4239
  #
@@ -4082,6 +4258,8 @@ module Aws::WAFRegional
4082
4258
  #
4083
4259
  # * IPSetDescriptor: Contains `Type` and `Value`
4084
4260
  #
4261
+ # You can insert a maximum of 1000 addresses in a single request.
4262
+ #
4085
4263
  # @return [Types::UpdateIPSetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4086
4264
  #
4087
4265
  # * {Types::UpdateIPSetResponse#change_token #change_token} => String
@@ -4306,7 +4484,7 @@ module Aws::WAFRegional
4306
4484
  # action: "INSERT", # required, accepts INSERT, DELETE
4307
4485
  # regex_match_tuple: { # required
4308
4486
  # field_to_match: { # required
4309
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
4487
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
4310
4488
  # data: "MatchFieldData",
4311
4489
  # },
4312
4490
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -4637,6 +4815,8 @@ module Aws::WAFRegional
4637
4815
  # AWS resource forwards only the first `8192` bytes of your request to
4638
4816
  # AWS WAF.
4639
4817
  #
4818
+ # You can only specify a single type of TextTransformation.
4819
+ #
4640
4820
  # * A `ComparisonOperator` used for evaluating the selected part of the
4641
4821
  # request against the specified `Size`, such as equals, greater than,
4642
4822
  # less than, and so on.
@@ -4734,7 +4914,7 @@ module Aws::WAFRegional
4734
4914
  # action: "INSERT", # required, accepts INSERT, DELETE
4735
4915
  # size_constraint: { # required
4736
4916
  # field_to_match: { # required
4737
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
4917
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
4738
4918
  # data: "MatchFieldData",
4739
4919
  # },
4740
4920
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -4767,13 +4947,15 @@ module Aws::WAFRegional
4767
4947
  # existing object and add a new one.
4768
4948
  #
4769
4949
  # * `FieldToMatch`\: The part of web requests that you want AWS WAF to
4770
- # inspect and, if you want AWS WAF to inspect a header, the name of
4771
- # the header.
4950
+ # inspect and, if you want AWS WAF to inspect a header or custom query
4951
+ # parameter, the name of the header or parameter.
4772
4952
  #
4773
4953
  # * `TextTransformation`\: Which text transformation, if any, to perform
4774
4954
  # on the web request before inspecting the request for snippets of
4775
4955
  # malicious SQL code.
4776
4956
  #
4957
+ # You can only specify a single type of TextTransformation.
4958
+ #
4777
4959
  # You use `SqlInjectionMatchSet` objects to specify which CloudFront
4778
4960
  # requests you want to allow, block, or count. For example, if you're
4779
4961
  # receiving requests that contain snippets of SQL code in the query
@@ -4862,7 +5044,7 @@ module Aws::WAFRegional
4862
5044
  # action: "INSERT", # required, accepts INSERT, DELETE
4863
5045
  # sql_injection_match_tuple: { # required
4864
5046
  # field_to_match: { # required
4865
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
5047
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
4866
5048
  # data: "MatchFieldData",
4867
5049
  # },
4868
5050
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -5052,13 +5234,15 @@ module Aws::WAFRegional
5052
5234
  # object and add a new one.
5053
5235
  #
5054
5236
  # * `FieldToMatch`\: The part of web requests that you want AWS WAF to
5055
- # inspect and, if you want AWS WAF to inspect a header, the name of
5056
- # the header.
5237
+ # inspect and, if you want AWS WAF to inspect a header or custom query
5238
+ # parameter, the name of the header or parameter.
5057
5239
  #
5058
5240
  # * `TextTransformation`\: Which text transformation, if any, to perform
5059
5241
  # on the web request before inspecting the request for cross-site
5060
5242
  # scripting attacks.
5061
5243
  #
5244
+ # You can only specify a single type of TextTransformation.
5245
+ #
5062
5246
  # You use `XssMatchSet` objects to specify which CloudFront requests you
5063
5247
  # want to allow, block, or count. For example, if you're receiving
5064
5248
  # requests that contain cross-site scripting attacks in the request body
@@ -5144,7 +5328,7 @@ module Aws::WAFRegional
5144
5328
  # action: "INSERT", # required, accepts INSERT, DELETE
5145
5329
  # xss_match_tuple: { # required
5146
5330
  # field_to_match: { # required
5147
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
5331
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
5148
5332
  # data: "MatchFieldData",
5149
5333
  # },
5150
5334
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -5179,7 +5363,7 @@ module Aws::WAFRegional
5179
5363
  params: params,
5180
5364
  config: config)
5181
5365
  context[:gem_name] = 'aws-sdk-wafregional'
5182
- context[:gem_version] = '1.5.0'
5366
+ context[:gem_version] = '1.6.0'
5183
5367
  Seahorse::Client::Request.new(handlers, context)
5184
5368
  end
5185
5369
 
@@ -59,6 +59,8 @@ module Aws::WAFRegional
59
59
  DeleteGeoMatchSetResponse = Shapes::StructureShape.new(name: 'DeleteGeoMatchSetResponse')
60
60
  DeleteIPSetRequest = Shapes::StructureShape.new(name: 'DeleteIPSetRequest')
61
61
  DeleteIPSetResponse = Shapes::StructureShape.new(name: 'DeleteIPSetResponse')
62
+ DeleteLoggingConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteLoggingConfigurationRequest')
63
+ DeleteLoggingConfigurationResponse = Shapes::StructureShape.new(name: 'DeleteLoggingConfigurationResponse')
62
64
  DeletePermissionPolicyRequest = Shapes::StructureShape.new(name: 'DeletePermissionPolicyRequest')
63
65
  DeletePermissionPolicyResponse = Shapes::StructureShape.new(name: 'DeletePermissionPolicyResponse')
64
66
  DeleteRateBasedRuleRequest = Shapes::StructureShape.new(name: 'DeleteRateBasedRuleRequest')
@@ -101,6 +103,8 @@ module Aws::WAFRegional
101
103
  GetGeoMatchSetResponse = Shapes::StructureShape.new(name: 'GetGeoMatchSetResponse')
102
104
  GetIPSetRequest = Shapes::StructureShape.new(name: 'GetIPSetRequest')
103
105
  GetIPSetResponse = Shapes::StructureShape.new(name: 'GetIPSetResponse')
106
+ GetLoggingConfigurationRequest = Shapes::StructureShape.new(name: 'GetLoggingConfigurationRequest')
107
+ GetLoggingConfigurationResponse = Shapes::StructureShape.new(name: 'GetLoggingConfigurationResponse')
104
108
  GetPermissionPolicyRequest = Shapes::StructureShape.new(name: 'GetPermissionPolicyRequest')
105
109
  GetPermissionPolicyResponse = Shapes::StructureShape.new(name: 'GetPermissionPolicyResponse')
106
110
  GetRateBasedRuleManagedKeysRequest = Shapes::StructureShape.new(name: 'GetRateBasedRuleManagedKeysRequest')
@@ -153,6 +157,8 @@ module Aws::WAFRegional
153
157
  ListGeoMatchSetsResponse = Shapes::StructureShape.new(name: 'ListGeoMatchSetsResponse')
154
158
  ListIPSetsRequest = Shapes::StructureShape.new(name: 'ListIPSetsRequest')
155
159
  ListIPSetsResponse = Shapes::StructureShape.new(name: 'ListIPSetsResponse')
160
+ ListLoggingConfigurationsRequest = Shapes::StructureShape.new(name: 'ListLoggingConfigurationsRequest')
161
+ ListLoggingConfigurationsResponse = Shapes::StructureShape.new(name: 'ListLoggingConfigurationsResponse')
156
162
  ListRateBasedRulesRequest = Shapes::StructureShape.new(name: 'ListRateBasedRulesRequest')
157
163
  ListRateBasedRulesResponse = Shapes::StructureShape.new(name: 'ListRateBasedRulesResponse')
158
164
  ListRegexMatchSetsRequest = Shapes::StructureShape.new(name: 'ListRegexMatchSetsRequest')
@@ -175,6 +181,9 @@ module Aws::WAFRegional
175
181
  ListWebACLsResponse = Shapes::StructureShape.new(name: 'ListWebACLsResponse')
176
182
  ListXssMatchSetsRequest = Shapes::StructureShape.new(name: 'ListXssMatchSetsRequest')
177
183
  ListXssMatchSetsResponse = Shapes::StructureShape.new(name: 'ListXssMatchSetsResponse')
184
+ LogDestinationConfigs = Shapes::ListShape.new(name: 'LogDestinationConfigs')
185
+ LoggingConfiguration = Shapes::StructureShape.new(name: 'LoggingConfiguration')
186
+ LoggingConfigurations = Shapes::ListShape.new(name: 'LoggingConfigurations')
178
187
  ManagedKey = Shapes::StringShape.new(name: 'ManagedKey')
179
188
  ManagedKeys = Shapes::ListShape.new(name: 'ManagedKeys')
180
189
  MatchFieldData = Shapes::StringShape.new(name: 'MatchFieldData')
@@ -192,11 +201,14 @@ module Aws::WAFRegional
192
201
  Predicate = Shapes::StructureShape.new(name: 'Predicate')
193
202
  PredicateType = Shapes::StringShape.new(name: 'PredicateType')
194
203
  Predicates = Shapes::ListShape.new(name: 'Predicates')
204
+ PutLoggingConfigurationRequest = Shapes::StructureShape.new(name: 'PutLoggingConfigurationRequest')
205
+ PutLoggingConfigurationResponse = Shapes::StructureShape.new(name: 'PutLoggingConfigurationResponse')
195
206
  PutPermissionPolicyRequest = Shapes::StructureShape.new(name: 'PutPermissionPolicyRequest')
196
207
  PutPermissionPolicyResponse = Shapes::StructureShape.new(name: 'PutPermissionPolicyResponse')
197
208
  RateBasedRule = Shapes::StructureShape.new(name: 'RateBasedRule')
198
209
  RateKey = Shapes::StringShape.new(name: 'RateKey')
199
210
  RateLimit = Shapes::IntegerShape.new(name: 'RateLimit')
211
+ RedactedFields = Shapes::ListShape.new(name: 'RedactedFields')
200
212
  RegexMatchSet = Shapes::StructureShape.new(name: 'RegexMatchSet')
201
213
  RegexMatchSetSummaries = Shapes::ListShape.new(name: 'RegexMatchSetSummaries')
202
214
  RegexMatchSetSummary = Shapes::StructureShape.new(name: 'RegexMatchSetSummary')
@@ -472,6 +484,11 @@ module Aws::WAFRegional
472
484
  DeleteIPSetResponse.add_member(:change_token, Shapes::ShapeRef.new(shape: ChangeToken, location_name: "ChangeToken"))
473
485
  DeleteIPSetResponse.struct_class = Types::DeleteIPSetResponse
474
486
 
487
+ DeleteLoggingConfigurationRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
488
+ DeleteLoggingConfigurationRequest.struct_class = Types::DeleteLoggingConfigurationRequest
489
+
490
+ DeleteLoggingConfigurationResponse.struct_class = Types::DeleteLoggingConfigurationResponse
491
+
475
492
  DeletePermissionPolicyRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
476
493
  DeletePermissionPolicyRequest.struct_class = Types::DeletePermissionPolicyRequest
477
494
 
@@ -601,6 +618,12 @@ module Aws::WAFRegional
601
618
  GetIPSetResponse.add_member(:ip_set, Shapes::ShapeRef.new(shape: IPSet, location_name: "IPSet"))
602
619
  GetIPSetResponse.struct_class = Types::GetIPSetResponse
603
620
 
621
+ GetLoggingConfigurationRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
622
+ GetLoggingConfigurationRequest.struct_class = Types::GetLoggingConfigurationRequest
623
+
624
+ GetLoggingConfigurationResponse.add_member(:logging_configuration, Shapes::ShapeRef.new(shape: LoggingConfiguration, location_name: "LoggingConfiguration"))
625
+ GetLoggingConfigurationResponse.struct_class = Types::GetLoggingConfigurationResponse
626
+
604
627
  GetPermissionPolicyRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
605
628
  GetPermissionPolicyRequest.struct_class = Types::GetPermissionPolicyRequest
606
629
 
@@ -756,6 +779,14 @@ module Aws::WAFRegional
756
779
  ListIPSetsResponse.add_member(:ip_sets, Shapes::ShapeRef.new(shape: IPSetSummaries, location_name: "IPSets"))
757
780
  ListIPSetsResponse.struct_class = Types::ListIPSetsResponse
758
781
 
782
+ ListLoggingConfigurationsRequest.add_member(:next_marker, Shapes::ShapeRef.new(shape: NextMarker, location_name: "NextMarker"))
783
+ ListLoggingConfigurationsRequest.add_member(:limit, Shapes::ShapeRef.new(shape: PaginationLimit, location_name: "Limit"))
784
+ ListLoggingConfigurationsRequest.struct_class = Types::ListLoggingConfigurationsRequest
785
+
786
+ ListLoggingConfigurationsResponse.add_member(:logging_configurations, Shapes::ShapeRef.new(shape: LoggingConfigurations, location_name: "LoggingConfigurations"))
787
+ ListLoggingConfigurationsResponse.add_member(:next_marker, Shapes::ShapeRef.new(shape: NextMarker, location_name: "NextMarker"))
788
+ ListLoggingConfigurationsResponse.struct_class = Types::ListLoggingConfigurationsResponse
789
+
759
790
  ListRateBasedRulesRequest.add_member(:next_marker, Shapes::ShapeRef.new(shape: NextMarker, location_name: "NextMarker"))
760
791
  ListRateBasedRulesRequest.add_member(:limit, Shapes::ShapeRef.new(shape: PaginationLimit, location_name: "Limit"))
761
792
  ListRateBasedRulesRequest.struct_class = Types::ListRateBasedRulesRequest
@@ -842,6 +873,15 @@ module Aws::WAFRegional
842
873
  ListXssMatchSetsResponse.add_member(:xss_match_sets, Shapes::ShapeRef.new(shape: XssMatchSetSummaries, location_name: "XssMatchSets"))
843
874
  ListXssMatchSetsResponse.struct_class = Types::ListXssMatchSetsResponse
844
875
 
876
+ LogDestinationConfigs.member = Shapes::ShapeRef.new(shape: ResourceArn)
877
+
878
+ LoggingConfiguration.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
879
+ LoggingConfiguration.add_member(:log_destination_configs, Shapes::ShapeRef.new(shape: LogDestinationConfigs, required: true, location_name: "LogDestinationConfigs"))
880
+ LoggingConfiguration.add_member(:redacted_fields, Shapes::ShapeRef.new(shape: RedactedFields, location_name: "RedactedFields"))
881
+ LoggingConfiguration.struct_class = Types::LoggingConfiguration
882
+
883
+ LoggingConfigurations.member = Shapes::ShapeRef.new(shape: LoggingConfiguration)
884
+
845
885
  ManagedKeys.member = Shapes::ShapeRef.new(shape: ManagedKey)
846
886
 
847
887
  Predicate.add_member(:negated, Shapes::ShapeRef.new(shape: Negated, required: true, location_name: "Negated"))
@@ -851,6 +891,12 @@ module Aws::WAFRegional
851
891
 
852
892
  Predicates.member = Shapes::ShapeRef.new(shape: Predicate)
853
893
 
894
+ PutLoggingConfigurationRequest.add_member(:logging_configuration, Shapes::ShapeRef.new(shape: LoggingConfiguration, required: true, location_name: "LoggingConfiguration"))
895
+ PutLoggingConfigurationRequest.struct_class = Types::PutLoggingConfigurationRequest
896
+
897
+ PutLoggingConfigurationResponse.add_member(:logging_configuration, Shapes::ShapeRef.new(shape: LoggingConfiguration, location_name: "LoggingConfiguration"))
898
+ PutLoggingConfigurationResponse.struct_class = Types::PutLoggingConfigurationResponse
899
+
854
900
  PutPermissionPolicyRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
855
901
  PutPermissionPolicyRequest.add_member(:policy, Shapes::ShapeRef.new(shape: PolicyString, required: true, location_name: "Policy"))
856
902
  PutPermissionPolicyRequest.struct_class = Types::PutPermissionPolicyRequest
@@ -865,6 +911,8 @@ module Aws::WAFRegional
865
911
  RateBasedRule.add_member(:rate_limit, Shapes::ShapeRef.new(shape: RateLimit, required: true, location_name: "RateLimit"))
866
912
  RateBasedRule.struct_class = Types::RateBasedRule
867
913
 
914
+ RedactedFields.member = Shapes::ShapeRef.new(shape: FieldToMatch)
915
+
868
916
  RegexMatchSet.add_member(:regex_match_set_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "RegexMatchSetId"))
869
917
  RegexMatchSet.add_member(:name, Shapes::ShapeRef.new(shape: ResourceName, location_name: "Name"))
870
918
  RegexMatchSet.add_member(:regex_match_tuples, Shapes::ShapeRef.new(shape: RegexMatchTuples, location_name: "RegexMatchTuples"))
@@ -1389,6 +1437,17 @@ module Aws::WAFRegional
1389
1437
  o.errors << Shapes::ShapeRef.new(shape: WAFNonEmptyEntityException)
1390
1438
  end)
1391
1439
 
1440
+ api.add_operation(:delete_logging_configuration, Seahorse::Model::Operation.new.tap do |o|
1441
+ o.name = "DeleteLoggingConfiguration"
1442
+ o.http_method = "POST"
1443
+ o.http_request_uri = "/"
1444
+ o.input = Shapes::ShapeRef.new(shape: DeleteLoggingConfigurationRequest)
1445
+ o.output = Shapes::ShapeRef.new(shape: DeleteLoggingConfigurationResponse)
1446
+ o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
1447
+ o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
1448
+ o.errors << Shapes::ShapeRef.new(shape: WAFStaleDataException)
1449
+ end)
1450
+
1392
1451
  api.add_operation(:delete_permission_policy, Seahorse::Model::Operation.new.tap do |o|
1393
1452
  o.name = "DeletePermissionPolicy"
1394
1453
  o.http_method = "POST"
@@ -1467,6 +1526,7 @@ module Aws::WAFRegional
1467
1526
  o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
1468
1527
  o.errors << Shapes::ShapeRef.new(shape: WAFReferencedItemException)
1469
1528
  o.errors << Shapes::ShapeRef.new(shape: WAFNonEmptyEntityException)
1529
+ o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
1470
1530
  end)
1471
1531
 
1472
1532
  api.add_operation(:delete_size_constraint_set, Seahorse::Model::Operation.new.tap do |o|
@@ -1589,6 +1649,16 @@ module Aws::WAFRegional
1589
1649
  o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
1590
1650
  end)
1591
1651
 
1652
+ api.add_operation(:get_logging_configuration, Seahorse::Model::Operation.new.tap do |o|
1653
+ o.name = "GetLoggingConfiguration"
1654
+ o.http_method = "POST"
1655
+ o.http_request_uri = "/"
1656
+ o.input = Shapes::ShapeRef.new(shape: GetLoggingConfigurationRequest)
1657
+ o.output = Shapes::ShapeRef.new(shape: GetLoggingConfigurationResponse)
1658
+ o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
1659
+ o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
1660
+ end)
1661
+
1592
1662
  api.add_operation(:get_permission_policy, Seahorse::Model::Operation.new.tap do |o|
1593
1663
  o.name = "GetPermissionPolicy"
1594
1664
  o.http_method = "POST"
@@ -1773,6 +1843,17 @@ module Aws::WAFRegional
1773
1843
  o.errors << Shapes::ShapeRef.new(shape: WAFInvalidAccountException)
1774
1844
  end)
1775
1845
 
1846
+ api.add_operation(:list_logging_configurations, Seahorse::Model::Operation.new.tap do |o|
1847
+ o.name = "ListLoggingConfigurations"
1848
+ o.http_method = "POST"
1849
+ o.http_request_uri = "/"
1850
+ o.input = Shapes::ShapeRef.new(shape: ListLoggingConfigurationsRequest)
1851
+ o.output = Shapes::ShapeRef.new(shape: ListLoggingConfigurationsResponse)
1852
+ o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
1853
+ o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
1854
+ o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
1855
+ end)
1856
+
1776
1857
  api.add_operation(:list_rate_based_rules, Seahorse::Model::Operation.new.tap do |o|
1777
1858
  o.name = "ListRateBasedRules"
1778
1859
  o.http_method = "POST"
@@ -1883,6 +1964,17 @@ module Aws::WAFRegional
1883
1964
  o.errors << Shapes::ShapeRef.new(shape: WAFInvalidAccountException)
1884
1965
  end)
1885
1966
 
1967
+ api.add_operation(:put_logging_configuration, Seahorse::Model::Operation.new.tap do |o|
1968
+ o.name = "PutLoggingConfiguration"
1969
+ o.http_method = "POST"
1970
+ o.http_request_uri = "/"
1971
+ o.input = Shapes::ShapeRef.new(shape: PutLoggingConfigurationRequest)
1972
+ o.output = Shapes::ShapeRef.new(shape: PutLoggingConfigurationResponse)
1973
+ o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
1974
+ o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
1975
+ o.errors << Shapes::ShapeRef.new(shape: WAFStaleDataException)
1976
+ end)
1977
+
1886
1978
  api.add_operation(:put_permission_policy, Seahorse::Model::Operation.new.tap do |o|
1887
1979
  o.name = "PutPermissionPolicy"
1888
1980
  o.http_method = "POST"
@@ -219,7 +219,7 @@ module Aws::WAFRegional
219
219
  # action: "INSERT", # required, accepts INSERT, DELETE
220
220
  # byte_match_tuple: { # required
221
221
  # field_to_match: { # required
222
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
222
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
223
223
  # data: "MatchFieldData",
224
224
  # },
225
225
  # target_string: "data", # required
@@ -257,7 +257,7 @@ module Aws::WAFRegional
257
257
  #
258
258
  # {
259
259
  # field_to_match: { # required
260
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
260
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
261
261
  # data: "MatchFieldData",
262
262
  # },
263
263
  # target_string: "data", # required
@@ -305,6 +305,15 @@ module Aws::WAFRegional
305
305
  # size constraint set. For more information, see
306
306
  # CreateSizeConstraintSet.
307
307
  #
308
+ # * `SINGLE_QUERY_ARG`\: The parameter in the query string that you
309
+ # will inspect, such as *UserName* or *SalesRegion*. The maximum
310
+ # length for `SINGLE_QUERY_ARG` is 30 characters.
311
+ #
312
+ # * `ALL_QUERY_ARGS`\: Similar to `SINGLE_QUERY_ARG`, but instead of
313
+ # inspecting a single parameter, AWS WAF inspects all parameters
314
+ # within the query string for the value or regex pattern that you
315
+ # specify in `TargetString`.
316
+ #
308
317
  # If `TargetString` includes alphabetic characters A-Z and a-z, note
309
318
  # that the value is case sensitive.
310
319
  #
@@ -331,10 +340,12 @@ module Aws::WAFRegional
331
340
  # specify a transformation, AWS WAF performs the transformation on
332
341
  # `TargetString` before inspecting a request for a match.
333
342
  #
343
+ # You can only specify a single type of TextTransformation.
344
+ #
334
345
  # **CMD\_LINE**
335
346
  #
336
347
  # When you're concerned that attackers are injecting an operating
337
- # system commandline command and using unusual formatting to disguise
348
+ # system command line command and using unusual formatting to disguise
338
349
  # some or all of the command, use this option to perform the following
339
350
  # transformations:
340
351
  #
@@ -1175,6 +1186,29 @@ module Aws::WAFRegional
1175
1186
  include Aws::Structure
1176
1187
  end
1177
1188
 
1189
+ # @note When making an API call, you may pass DeleteLoggingConfigurationRequest
1190
+ # data as a hash:
1191
+ #
1192
+ # {
1193
+ # resource_arn: "ResourceArn", # required
1194
+ # }
1195
+ #
1196
+ # @!attribute [rw] resource_arn
1197
+ # The Amazon Resource Name (ARN) of the web ACL from which you want to
1198
+ # delete the LoggingConfiguration.
1199
+ # @return [String]
1200
+ #
1201
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteLoggingConfigurationRequest AWS API Documentation
1202
+ #
1203
+ class DeleteLoggingConfigurationRequest < Struct.new(
1204
+ :resource_arn)
1205
+ include Aws::Structure
1206
+ end
1207
+
1208
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteLoggingConfigurationResponse AWS API Documentation
1209
+ #
1210
+ class DeleteLoggingConfigurationResponse < Aws::EmptyStructure; end
1211
+
1178
1212
  # @note When making an API call, you may pass DeletePermissionPolicyRequest
1179
1213
  # data as a hash:
1180
1214
  #
@@ -1588,7 +1622,7 @@ module Aws::WAFRegional
1588
1622
  # data as a hash:
1589
1623
  #
1590
1624
  # {
1591
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
1625
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
1592
1626
  # data: "MatchFieldData",
1593
1627
  # }
1594
1628
  #
@@ -1620,14 +1654,28 @@ module Aws::WAFRegional
1620
1654
  # block requests based on the length of the body, you can create a
1621
1655
  # size constraint set. For more information, see
1622
1656
  # CreateSizeConstraintSet.
1657
+ #
1658
+ # * `SINGLE_QUERY_ARG`\: The parameter in the query string that you
1659
+ # will inspect, such as *UserName* or *SalesRegion*. The maximum
1660
+ # length for `SINGLE_QUERY_ARG` is 30 characters.
1661
+ #
1662
+ # * `ALL_QUERY_ARGS`\: Similar to `SINGLE_QUERY_ARG`, but rather than
1663
+ # inspecting a single parameter, AWS WAF will inspect all parameters
1664
+ # within the query for the value or regex pattern that you specify
1665
+ # in `TargetString`.
1623
1666
  # @return [String]
1624
1667
  #
1625
1668
  # @!attribute [rw] data
1626
1669
  # When the value of `Type` is `HEADER`, enter the name of the header
1627
1670
  # that you want AWS WAF to search, for example, `User-Agent` or
1628
- # `Referer`. If the value of `Type` is any other value, omit `Data`.
1671
+ # `Referer`. The name of the header is not case sensitive.
1672
+ #
1673
+ # When the value of `Type` is `SINGLE_QUERY_ARG`, enter the name of
1674
+ # the parameter that you want AWS WAF to search, for example,
1675
+ # `UserName` or `SalesRegion`. The parameter name is not case
1676
+ # sensitive.
1629
1677
  #
1630
- # The name of the header is not case sensitive.
1678
+ # If the value of `Type` is any other value, omit `Data`.
1631
1679
  # @return [String]
1632
1680
  #
1633
1681
  # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/FieldToMatch AWS API Documentation
@@ -1912,6 +1960,36 @@ module Aws::WAFRegional
1912
1960
  include Aws::Structure
1913
1961
  end
1914
1962
 
1963
+ # @note When making an API call, you may pass GetLoggingConfigurationRequest
1964
+ # data as a hash:
1965
+ #
1966
+ # {
1967
+ # resource_arn: "ResourceArn", # required
1968
+ # }
1969
+ #
1970
+ # @!attribute [rw] resource_arn
1971
+ # The Amazon Resource Name (ARN) of the web ACL for which you want to
1972
+ # get the LoggingConfiguration.
1973
+ # @return [String]
1974
+ #
1975
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetLoggingConfigurationRequest AWS API Documentation
1976
+ #
1977
+ class GetLoggingConfigurationRequest < Struct.new(
1978
+ :resource_arn)
1979
+ include Aws::Structure
1980
+ end
1981
+
1982
+ # @!attribute [rw] logging_configuration
1983
+ # The LoggingConfiguration for the specified web ACL.
1984
+ # @return [Types::LoggingConfiguration]
1985
+ #
1986
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetLoggingConfigurationResponse AWS API Documentation
1987
+ #
1988
+ class GetLoggingConfigurationResponse < Struct.new(
1989
+ :logging_configuration)
1990
+ include Aws::Structure
1991
+ end
1992
+
1915
1993
  # @note When making an API call, you may pass GetPermissionPolicyRequest
1916
1994
  # data as a hash:
1917
1995
  #
@@ -2527,14 +2605,15 @@ module Aws::WAFRegional
2527
2605
 
2528
2606
  # Contains one or more IP addresses or blocks of IP addresses specified
2529
2607
  # in Classless Inter-Domain Routing (CIDR) notation. AWS WAF supports
2530
- # /8, /16, /24, and /32 IP address ranges for IPv4, and /24, /32, /48,
2531
- # /56, /64 and /128 for IPv6.
2608
+ # IPv4 address ranges: /8 and any range between /16 through /32. AWS WAF
2609
+ # supports IPv6 address ranges: /16, /24, /32, /48, /56, /64, and /128.
2532
2610
  #
2533
2611
  # To specify an individual IP address, you specify the four-part IP
2534
2612
  # address followed by a `/32`, for example, 192.0.2.0/31. To block a
2535
- # range of IP addresses, you can specify a `/128`, `/64`, `/56`, `/48`,
2536
- # `/32`, `/24`, `/16`, or `/8` CIDR. For more information about CIDR
2537
- # notation, see the Wikipedia entry [Classless Inter-Domain Routing][1].
2613
+ # range of IP addresses, you can specify /8 or any range between /16
2614
+ # through /32 (for IPv4) or /16, /24, /32, /48, /56, /64, or /128 (for
2615
+ # IPv6). For more information about CIDR notation, see the Wikipedia
2616
+ # entry [Classless Inter-Domain Routing][1].
2538
2617
  #
2539
2618
  #
2540
2619
  #
@@ -2900,6 +2979,61 @@ module Aws::WAFRegional
2900
2979
  include Aws::Structure
2901
2980
  end
2902
2981
 
2982
+ # @note When making an API call, you may pass ListLoggingConfigurationsRequest
2983
+ # data as a hash:
2984
+ #
2985
+ # {
2986
+ # next_marker: "NextMarker",
2987
+ # limit: 1,
2988
+ # }
2989
+ #
2990
+ # @!attribute [rw] next_marker
2991
+ # If you specify a value for `Limit` and you have more
2992
+ # `LoggingConfigurations` than the value of `Limit`, AWS WAF returns a
2993
+ # `NextMarker` value in the response that allows you to list another
2994
+ # group of `LoggingConfigurations`. For the second and subsequent
2995
+ # `ListLoggingConfigurations` requests, specify the value of
2996
+ # `NextMarker` from the previous response to get information about
2997
+ # another batch of `ListLoggingConfigurations`.
2998
+ # @return [String]
2999
+ #
3000
+ # @!attribute [rw] limit
3001
+ # Specifies the number of `LoggingConfigurations` that you want AWS
3002
+ # WAF to return for this request. If you have more
3003
+ # `LoggingConfigurations` than the number that you specify for
3004
+ # `Limit`, the response includes a `NextMarker` value that you can use
3005
+ # to get another batch of `LoggingConfigurations`.
3006
+ # @return [Integer]
3007
+ #
3008
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListLoggingConfigurationsRequest AWS API Documentation
3009
+ #
3010
+ class ListLoggingConfigurationsRequest < Struct.new(
3011
+ :next_marker,
3012
+ :limit)
3013
+ include Aws::Structure
3014
+ end
3015
+
3016
+ # @!attribute [rw] logging_configurations
3017
+ # An array of LoggingConfiguration objects.
3018
+ # @return [Array<Types::LoggingConfiguration>]
3019
+ #
3020
+ # @!attribute [rw] next_marker
3021
+ # If you have more `LoggingConfigurations` than the number that you
3022
+ # specified for `Limit` in the request, the response includes a
3023
+ # `NextMarker` value. To list more `LoggingConfigurations`, submit
3024
+ # another `ListLoggingConfigurations` request, and specify the
3025
+ # `NextMarker` value from the response in the `NextMarker` value in
3026
+ # the next request.
3027
+ # @return [String]
3028
+ #
3029
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListLoggingConfigurationsResponse AWS API Documentation
3030
+ #
3031
+ class ListLoggingConfigurationsResponse < Struct.new(
3032
+ :logging_configurations,
3033
+ :next_marker)
3034
+ include Aws::Structure
3035
+ end
3036
+
2903
3037
  # @note When making an API call, you may pass ListRateBasedRulesRequest
2904
3038
  # data as a hash:
2905
3039
  #
@@ -3478,6 +3612,47 @@ module Aws::WAFRegional
3478
3612
  include Aws::Structure
3479
3613
  end
3480
3614
 
3615
+ # The Amazon Kinesis Data Firehose delivery streams, `RedactedFields`
3616
+ # information, and the web ACL Amazon Resource Name (ARN).
3617
+ #
3618
+ # @note When making an API call, you may pass LoggingConfiguration
3619
+ # data as a hash:
3620
+ #
3621
+ # {
3622
+ # resource_arn: "ResourceArn", # required
3623
+ # log_destination_configs: ["ResourceArn"], # required
3624
+ # redacted_fields: [
3625
+ # {
3626
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
3627
+ # data: "MatchFieldData",
3628
+ # },
3629
+ # ],
3630
+ # }
3631
+ #
3632
+ # @!attribute [rw] resource_arn
3633
+ # The Amazon Resource Name (ARN) of the web ACL that you want to
3634
+ # associate with `LogDestinationConfigs`.
3635
+ # @return [String]
3636
+ #
3637
+ # @!attribute [rw] log_destination_configs
3638
+ # An array of Amazon Kinesis Data Firehose delivery stream ARNs.
3639
+ # @return [Array<String>]
3640
+ #
3641
+ # @!attribute [rw] redacted_fields
3642
+ # The parts of the request that you want redacted from the logs. For
3643
+ # example, if you redact the cookie field, the cookie field in the
3644
+ # delivery stream will be `xxx`.
3645
+ # @return [Array<Types::FieldToMatch>]
3646
+ #
3647
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/LoggingConfiguration AWS API Documentation
3648
+ #
3649
+ class LoggingConfiguration < Struct.new(
3650
+ :resource_arn,
3651
+ :log_destination_configs,
3652
+ :redacted_fields)
3653
+ include Aws::Structure
3654
+ end
3655
+
3481
3656
  # Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet,
3482
3657
  # RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you
3483
3658
  # want to add to a `Rule` and, for each object, indicates whether you
@@ -3510,8 +3685,7 @@ module Aws::WAFRegional
3510
3685
  # @return [Boolean]
3511
3686
  #
3512
3687
  # @!attribute [rw] type
3513
- # The type of predicate in a `Rule`, such as `ByteMatchSet` or
3514
- # `IPSet`.
3688
+ # The type of predicate in a `Rule`, such as `ByteMatch` or `IPSet`.
3515
3689
  # @return [String]
3516
3690
  #
3517
3691
  # @!attribute [rw] data_id
@@ -3529,6 +3703,46 @@ module Aws::WAFRegional
3529
3703
  include Aws::Structure
3530
3704
  end
3531
3705
 
3706
+ # @note When making an API call, you may pass PutLoggingConfigurationRequest
3707
+ # data as a hash:
3708
+ #
3709
+ # {
3710
+ # logging_configuration: { # required
3711
+ # resource_arn: "ResourceArn", # required
3712
+ # log_destination_configs: ["ResourceArn"], # required
3713
+ # redacted_fields: [
3714
+ # {
3715
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
3716
+ # data: "MatchFieldData",
3717
+ # },
3718
+ # ],
3719
+ # },
3720
+ # }
3721
+ #
3722
+ # @!attribute [rw] logging_configuration
3723
+ # The Amazon Kinesis Data Firehose delivery streams that contains the
3724
+ # inspected traffic information, the redacted fields details, and the
3725
+ # Amazon Resource Name (ARN) of the web ACL to monitor.
3726
+ # @return [Types::LoggingConfiguration]
3727
+ #
3728
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/PutLoggingConfigurationRequest AWS API Documentation
3729
+ #
3730
+ class PutLoggingConfigurationRequest < Struct.new(
3731
+ :logging_configuration)
3732
+ include Aws::Structure
3733
+ end
3734
+
3735
+ # @!attribute [rw] logging_configuration
3736
+ # The LoggingConfiguration that you submitted in the request.
3737
+ # @return [Types::LoggingConfiguration]
3738
+ #
3739
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/PutLoggingConfigurationResponse AWS API Documentation
3740
+ #
3741
+ class PutLoggingConfigurationResponse < Struct.new(
3742
+ :logging_configuration)
3743
+ include Aws::Structure
3744
+ end
3745
+
3532
3746
  # @note When making an API call, you may pass PutPermissionPolicyRequest
3533
3747
  # data as a hash:
3534
3748
  #
@@ -3718,7 +3932,7 @@ module Aws::WAFRegional
3718
3932
  # action: "INSERT", # required, accepts INSERT, DELETE
3719
3933
  # regex_match_tuple: { # required
3720
3934
  # field_to_match: { # required
3721
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
3935
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
3722
3936
  # data: "MatchFieldData",
3723
3937
  # },
3724
3938
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -3766,7 +3980,7 @@ module Aws::WAFRegional
3766
3980
  #
3767
3981
  # {
3768
3982
  # field_to_match: { # required
3769
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
3983
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
3770
3984
  # data: "MatchFieldData",
3771
3985
  # },
3772
3986
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -3783,6 +3997,8 @@ module Aws::WAFRegional
3783
3997
  # specify a transformation, AWS WAF performs the transformation on
3784
3998
  # `RegexPatternSet` before inspecting a request for a match.
3785
3999
  #
4000
+ # You can only specify a single type of TextTransformation.
4001
+ #
3786
4002
  # **CMD\_LINE**
3787
4003
  #
3788
4004
  # When you're concerned that attackers are injecting an operating
@@ -4240,7 +4456,7 @@ module Aws::WAFRegional
4240
4456
  #
4241
4457
  # {
4242
4458
  # field_to_match: { # required
4243
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
4459
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
4244
4460
  # data: "MatchFieldData",
4245
4461
  # },
4246
4462
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -4258,6 +4474,8 @@ module Aws::WAFRegional
4258
4474
  # specify a transformation, AWS WAF performs the transformation on
4259
4475
  # `FieldToMatch` before inspecting a request for a match.
4260
4476
  #
4477
+ # You can only specify a single type of TextTransformation.
4478
+ #
4261
4479
  # Note that if you choose `BODY` for the value of `Type`, you must
4262
4480
  # choose `NONE` for `TextTransformation` because CloudFront forwards
4263
4481
  # only the first 8192 bytes for inspection.
@@ -4456,7 +4674,7 @@ module Aws::WAFRegional
4456
4674
  # action: "INSERT", # required, accepts INSERT, DELETE
4457
4675
  # size_constraint: { # required
4458
4676
  # field_to_match: { # required
4459
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
4677
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
4460
4678
  # data: "MatchFieldData",
4461
4679
  # },
4462
4680
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -4565,7 +4783,7 @@ module Aws::WAFRegional
4565
4783
  # action: "INSERT", # required, accepts INSERT, DELETE
4566
4784
  # sql_injection_match_tuple: { # required
4567
4785
  # field_to_match: { # required
4568
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
4786
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
4569
4787
  # data: "MatchFieldData",
4570
4788
  # },
4571
4789
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -4601,7 +4819,7 @@ module Aws::WAFRegional
4601
4819
  #
4602
4820
  # {
4603
4821
  # field_to_match: { # required
4604
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
4822
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
4605
4823
  # data: "MatchFieldData",
4606
4824
  # },
4607
4825
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -4618,10 +4836,12 @@ module Aws::WAFRegional
4618
4836
  # specify a transformation, AWS WAF performs the transformation on
4619
4837
  # `FieldToMatch` before inspecting a request for a match.
4620
4838
  #
4839
+ # You can only specify a single type of TextTransformation.
4840
+ #
4621
4841
  # **CMD\_LINE**
4622
4842
  #
4623
4843
  # When you're concerned that attackers are injecting an operating
4624
- # system commandline command and using unusual formatting to disguise
4844
+ # system command line command and using unusual formatting to disguise
4625
4845
  # some or all of the command, use this option to perform the following
4626
4846
  # transformations:
4627
4847
  #
@@ -4779,7 +4999,7 @@ module Aws::WAFRegional
4779
4999
  # action: "INSERT", # required, accepts INSERT, DELETE
4780
5000
  # byte_match_tuple: { # required
4781
5001
  # field_to_match: { # required
4782
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
5002
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
4783
5003
  # data: "MatchFieldData",
4784
5004
  # },
4785
5005
  # target_string: "data", # required
@@ -4932,6 +5152,8 @@ module Aws::WAFRegional
4932
5152
  # * IPSetUpdate: Contains `Action` and `IPSetDescriptor`
4933
5153
  #
4934
5154
  # * IPSetDescriptor: Contains `Type` and `Value`
5155
+ #
5156
+ # You can insert a maximum of 1000 addresses in a single request.
4935
5157
  # @return [Array<Types::IPSetUpdate>]
4936
5158
  #
4937
5159
  # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateIPSetRequest AWS API Documentation
@@ -5031,7 +5253,7 @@ module Aws::WAFRegional
5031
5253
  # action: "INSERT", # required, accepts INSERT, DELETE
5032
5254
  # regex_match_tuple: { # required
5033
5255
  # field_to_match: { # required
5034
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
5256
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
5035
5257
  # data: "MatchFieldData",
5036
5258
  # },
5037
5259
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -5272,7 +5494,7 @@ module Aws::WAFRegional
5272
5494
  # action: "INSERT", # required, accepts INSERT, DELETE
5273
5495
  # size_constraint: { # required
5274
5496
  # field_to_match: { # required
5275
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
5497
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
5276
5498
  # data: "MatchFieldData",
5277
5499
  # },
5278
5500
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -5342,7 +5564,7 @@ module Aws::WAFRegional
5342
5564
  # action: "INSERT", # required, accepts INSERT, DELETE
5343
5565
  # sql_injection_match_tuple: { # required
5344
5566
  # field_to_match: { # required
5345
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
5567
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
5346
5568
  # data: "MatchFieldData",
5347
5569
  # },
5348
5570
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -5497,7 +5719,7 @@ module Aws::WAFRegional
5497
5719
  # action: "INSERT", # required, accepts INSERT, DELETE
5498
5720
  # xss_match_tuple: { # required
5499
5721
  # field_to_match: { # required
5500
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
5722
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
5501
5723
  # data: "MatchFieldData",
5502
5724
  # },
5503
5725
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -5802,7 +6024,7 @@ module Aws::WAFRegional
5802
6024
  # action: "INSERT", # required, accepts INSERT, DELETE
5803
6025
  # xss_match_tuple: { # required
5804
6026
  # field_to_match: { # required
5805
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
6027
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
5806
6028
  # data: "MatchFieldData",
5807
6029
  # },
5808
6030
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -5837,7 +6059,7 @@ module Aws::WAFRegional
5837
6059
  #
5838
6060
  # {
5839
6061
  # field_to_match: { # required
5840
- # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY
6062
+ # type: "URI", # required, accepts URI, QUERY_STRING, HEADER, METHOD, BODY, SINGLE_QUERY_ARG, ALL_QUERY_ARGS
5841
6063
  # data: "MatchFieldData",
5842
6064
  # },
5843
6065
  # text_transformation: "NONE", # required, accepts NONE, COMPRESS_WHITE_SPACE, HTML_ENTITY_DECODE, LOWERCASE, CMD_LINE, URL_DECODE
@@ -5854,10 +6076,12 @@ module Aws::WAFRegional
5854
6076
  # specify a transformation, AWS WAF performs the transformation on
5855
6077
  # `FieldToMatch` before inspecting a request for a match.
5856
6078
  #
6079
+ # You can only specify a single type of TextTransformation.
6080
+ #
5857
6081
  # **CMD\_LINE**
5858
6082
  #
5859
6083
  # When you're concerned that attackers are injecting an operating
5860
- # system commandline command and using unusual formatting to disguise
6084
+ # system command line command and using unusual formatting to disguise
5861
6085
  # some or all of the command, use this option to perform the following
5862
6086
  # transformations:
5863
6087
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-wafregional
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 1.6.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: 2018-06-26 00:00:00.000000000 Z
11
+ date: 2018-08-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core