aws-sdk-waf 1.11.0 → 1.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/aws-sdk-waf.rb +1 -1
- data/lib/aws-sdk-waf/client.rb +66 -41
- data/lib/aws-sdk-waf/client_api.rb +11 -0
- data/lib/aws-sdk-waf/types.rb +115 -17
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b0f22eb70dd62b0bd3e68c33cf3ff62b08cad107
|
4
|
+
data.tar.gz: bdd65e9eb372bab500bb3e91aa54cac2d1bacad8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ba274ad9db9880beca8058f880d3e19f8f8933e6afdfa66e3399fa7875d0e920979676a5501e072d2d3fea74448f92f3ddfb7bf52ccc4f5ee984ec0a07aeb425
|
7
|
+
data.tar.gz: e1120e45498af124d7a361cbdc472b2f7200cceb5928a5c22695eb12bfd594b39fbc2374334017fd960000991f94e61511d8d0889b4d4161f9a062d438a31417
|
data/lib/aws-sdk-waf.rb
CHANGED
data/lib/aws-sdk-waf/client.rb
CHANGED
@@ -347,8 +347,8 @@ module Aws::WAF
|
|
347
347
|
req.send_request(options)
|
348
348
|
end
|
349
349
|
|
350
|
-
# Creates an IPSet, which you use to specify which web requests you
|
351
|
-
# to allow or block based on the IP addresses that the requests
|
350
|
+
# Creates an IPSet, which you use to specify which web requests that you
|
351
|
+
# want to allow or block based on the IP addresses that the requests
|
352
352
|
# originate from. For example, if you're receiving a lot of requests
|
353
353
|
# from one or more individual IP addresses or one or more ranges of IP
|
354
354
|
# addresses and you want to block the requests, you can create an
|
@@ -710,7 +710,7 @@ module Aws::WAF
|
|
710
710
|
# objects, and other predicates that identify the requests that you want
|
711
711
|
# to block. If you add more than one predicate to a `Rule`, a request
|
712
712
|
# must match all of the specifications to be allowed or blocked. For
|
713
|
-
# example, suppose you add the following to a `Rule`\:
|
713
|
+
# example, suppose that you add the following to a `Rule`\:
|
714
714
|
#
|
715
715
|
# * An `IPSet` that matches the IP address `192.0.2.44/32`
|
716
716
|
#
|
@@ -755,7 +755,7 @@ module Aws::WAF
|
|
755
755
|
# @option params [required, String] :metric_name
|
756
756
|
# A friendly name or description for the metrics for this `Rule`. The
|
757
757
|
# name can contain only alphanumeric characters (A-Z, a-z, 0-9); the
|
758
|
-
# name can't contain
|
758
|
+
# name can't contain white space. You can't change the name of the
|
759
759
|
# metric after you create the `Rule`.
|
760
760
|
#
|
761
761
|
# @option params [required, String] :change_token
|
@@ -1123,7 +1123,7 @@ module Aws::WAF
|
|
1123
1123
|
# @option params [required, String] :metric_name
|
1124
1124
|
# A friendly name or description for the metrics for this `WebACL`. The
|
1125
1125
|
# name can contain only alphanumeric characters (A-Z, a-z, 0-9); the
|
1126
|
-
# name can't contain
|
1126
|
+
# name can't contain white space. You can't change `MetricName` after
|
1127
1127
|
# you create the `WebACL`.
|
1128
1128
|
#
|
1129
1129
|
# @option params [required, Types::WafAction] :default_action
|
@@ -1198,6 +1198,9 @@ module Aws::WAF
|
|
1198
1198
|
# resp.web_acl.rules[0].action.type #=> String, one of "BLOCK", "ALLOW", "COUNT"
|
1199
1199
|
# resp.web_acl.rules[0].override_action.type #=> String, one of "NONE", "COUNT"
|
1200
1200
|
# resp.web_acl.rules[0].type #=> String, one of "REGULAR", "RATE_BASED", "GROUP"
|
1201
|
+
# resp.web_acl.rules[0].excluded_rules #=> Array
|
1202
|
+
# resp.web_acl.rules[0].excluded_rules[0].rule_id #=> String
|
1203
|
+
# resp.web_acl.web_acl_arn #=> String
|
1201
1204
|
# resp.change_token #=> String
|
1202
1205
|
#
|
1203
1206
|
# @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateWebACL AWS API Documentation
|
@@ -2905,6 +2908,9 @@ module Aws::WAF
|
|
2905
2908
|
# resp.web_acl.rules[0].action.type #=> String, one of "BLOCK", "ALLOW", "COUNT"
|
2906
2909
|
# resp.web_acl.rules[0].override_action.type #=> String, one of "NONE", "COUNT"
|
2907
2910
|
# resp.web_acl.rules[0].type #=> String, one of "REGULAR", "RATE_BASED", "GROUP"
|
2911
|
+
# resp.web_acl.rules[0].excluded_rules #=> Array
|
2912
|
+
# resp.web_acl.rules[0].excluded_rules[0].rule_id #=> String
|
2913
|
+
# resp.web_acl.web_acl_arn #=> String
|
2908
2914
|
#
|
2909
2915
|
# @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetWebACL AWS API Documentation
|
2910
2916
|
#
|
@@ -3018,6 +3024,8 @@ module Aws::WAF
|
|
3018
3024
|
# resp.activated_rules[0].action.type #=> String, one of "BLOCK", "ALLOW", "COUNT"
|
3019
3025
|
# resp.activated_rules[0].override_action.type #=> String, one of "NONE", "COUNT"
|
3020
3026
|
# resp.activated_rules[0].type #=> String, one of "REGULAR", "RATE_BASED", "GROUP"
|
3027
|
+
# resp.activated_rules[0].excluded_rules #=> Array
|
3028
|
+
# resp.activated_rules[0].excluded_rules[0].rule_id #=> String
|
3021
3029
|
#
|
3022
3030
|
# @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListActivatedRulesInRuleGroup AWS API Documentation
|
3023
3031
|
#
|
@@ -3781,28 +3789,25 @@ module Aws::WAF
|
|
3781
3789
|
# You can access information about all traffic that AWS WAF inspects
|
3782
3790
|
# using the following steps:
|
3783
3791
|
#
|
3784
|
-
# 1. Create an Amazon Kinesis Data Firehose
|
3785
|
-
# information, see [Creating an Amazon Kinesis Data Firehose
|
3786
|
-
# Delivery Stream][1].
|
3792
|
+
# 1. Create an Amazon Kinesis Data Firehose .
|
3787
3793
|
#
|
3788
|
-
# 2. Associate that
|
3794
|
+
# 2. Associate that firehose to your web ACL using a
|
3789
3795
|
# `PutLoggingConfiguration` request.
|
3790
3796
|
#
|
3791
3797
|
# When you successfully enable logging using a `PutLoggingConfiguration`
|
3792
3798
|
# request, AWS WAF will create a service linked role with the necessary
|
3793
|
-
# permissions to write logs to the Amazon Kinesis Data Firehose
|
3794
|
-
#
|
3795
|
-
#
|
3799
|
+
# permissions to write logs to the Amazon Kinesis Data Firehose. For
|
3800
|
+
# more information, see [Logging Web ACL Traffic Information][1] in the
|
3801
|
+
# *AWS WAF Developer Guide*.
|
3796
3802
|
#
|
3797
3803
|
#
|
3798
3804
|
#
|
3799
|
-
# [1]:
|
3800
|
-
# [2]: http://docs.aws.amazon.com/waf/latest/developerguide/logging.html
|
3805
|
+
# [1]: http://docs.aws.amazon.com/waf/latest/developerguide/logging.html
|
3801
3806
|
#
|
3802
3807
|
# @option params [required, Types::LoggingConfiguration] :logging_configuration
|
3803
|
-
# The Amazon Kinesis Data Firehose
|
3804
|
-
#
|
3805
|
-
#
|
3808
|
+
# The Amazon Kinesis Data Firehose that contains the inspected traffic
|
3809
|
+
# information, the redacted fields details, and the Amazon Resource Name
|
3810
|
+
# (ARN) of the web ACL to monitor.
|
3806
3811
|
#
|
3807
3812
|
# @return [Types::PutLoggingConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
3808
3813
|
#
|
@@ -4534,7 +4539,7 @@ module Aws::WAF
|
|
4534
4539
|
# that specifies the web requests that you want to allow, block, or
|
4535
4540
|
# count. If you add more than one predicate to a `Rule`, a request must
|
4536
4541
|
# match all of the specifications to be allowed, blocked, or counted.
|
4537
|
-
# For example, suppose you add the following to a `Rule`\:
|
4542
|
+
# For example, suppose that you add the following to a `Rule`\:
|
4538
4543
|
#
|
4539
4544
|
# * A `ByteMatchSet` that matches the value `BadBot` in the `User-Agent`
|
4540
4545
|
# header
|
@@ -4718,6 +4723,11 @@ module Aws::WAF
|
|
4718
4723
|
# type: "NONE", # required, accepts NONE, COUNT
|
4719
4724
|
# },
|
4720
4725
|
# type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
|
4726
|
+
# excluded_rules: [
|
4727
|
+
# {
|
4728
|
+
# rule_id: "ResourceId", # required
|
4729
|
+
# },
|
4730
|
+
# ],
|
4721
4731
|
# },
|
4722
4732
|
# },
|
4723
4733
|
# ],
|
@@ -4897,9 +4907,9 @@ module Aws::WAF
|
|
4897
4907
|
# You can only specify a single type of TextTransformation.
|
4898
4908
|
#
|
4899
4909
|
# You use `SqlInjectionMatchSet` objects to specify which CloudFront
|
4900
|
-
# requests you want to allow, block, or count. For example, if
|
4901
|
-
# receiving requests that contain snippets of SQL code in the
|
4902
|
-
# string and you want to block the requests, you can create a
|
4910
|
+
# requests that you want to allow, block, or count. For example, if
|
4911
|
+
# you're receiving requests that contain snippets of SQL code in the
|
4912
|
+
# query string and you want to block the requests, you can create a
|
4903
4913
|
# `SqlInjectionMatchSet` with the applicable settings, and then
|
4904
4914
|
# configure AWS WAF to block the requests.
|
4905
4915
|
#
|
@@ -5014,9 +5024,9 @@ module Aws::WAF
|
|
5014
5024
|
# WAF performs the default action if a request doesn't match the
|
5015
5025
|
# criteria in any of the `Rules` in a `WebACL`.
|
5016
5026
|
#
|
5017
|
-
# * The `Rules` that you want to add
|
5018
|
-
#
|
5019
|
-
#
|
5027
|
+
# * The `Rules` that you want to add or delete. If you want to replace
|
5028
|
+
# one `Rule` with another, you delete the existing `Rule` and add the
|
5029
|
+
# new one.
|
5020
5030
|
#
|
5021
5031
|
# * For each `Rule`, whether you want AWS WAF to allow requests, block
|
5022
5032
|
# requests, or count requests that match the conditions in the `Rule`.
|
@@ -5025,11 +5035,11 @@ module Aws::WAF
|
|
5025
5035
|
# `WebACL`. If you add more than one `Rule` to a `WebACL`, AWS WAF
|
5026
5036
|
# evaluates each request against the `Rules` in order based on the
|
5027
5037
|
# value of `Priority`. (The `Rule` that has the lowest value for
|
5028
|
-
# `Priority` is evaluated first.) When a web request matches all
|
5029
|
-
#
|
5030
|
-
#
|
5031
|
-
#
|
5032
|
-
#
|
5038
|
+
# `Priority` is evaluated first.) When a web request matches all the
|
5039
|
+
# predicates (such as `ByteMatchSets` and `IPSets`) in a `Rule`, AWS
|
5040
|
+
# WAF immediately takes the corresponding action, allow or block, and
|
5041
|
+
# doesn't evaluate the request against the remaining `Rules` in the
|
5042
|
+
# `WebACL`, if any.
|
5033
5043
|
#
|
5034
5044
|
# To create and configure a `WebACL`, perform the following steps:
|
5035
5045
|
#
|
@@ -5050,6 +5060,16 @@ module Aws::WAF
|
|
5050
5060
|
# want to include in the `WebACL`, to specify the default action,
|
5051
5061
|
# and to associate the `WebACL` with a CloudFront distribution.
|
5052
5062
|
#
|
5063
|
+
# The `ActivatedRule` can be a rule group. If you specify a rule
|
5064
|
+
# group as your `ActivatedRule`, you can exclude specific rules from
|
5065
|
+
# that rule group.
|
5066
|
+
#
|
5067
|
+
# If you already have a rule group associated with a web ACL and
|
5068
|
+
# want to submit an `UpdateWebACL` request to exclude certain rules
|
5069
|
+
# from that rule group, you must first remove the rule group from
|
5070
|
+
# the web ACL, the re-insert it again, specifying the excluded
|
5071
|
+
# rules. For details, see ActivatedRule$ExcludedRules.
|
5072
|
+
#
|
5053
5073
|
# Be aware that if you try to add a RATE\_BASED rule to a web ACL
|
5054
5074
|
# without setting the rule type when first creating the rule, the
|
5055
5075
|
# UpdateWebACL request will fail because the request tries to add a
|
@@ -5081,7 +5101,7 @@ module Aws::WAF
|
|
5081
5101
|
#
|
5082
5102
|
# * ActivatedRule: Contains `Action`, `OverrideAction`, `Priority`,
|
5083
5103
|
# `RuleId`, and `Type`. `ActivatedRule|OverrideAction` applies only
|
5084
|
-
# when updating or adding a `RuleGroup` to a `WebACL`. In this case
|
5104
|
+
# when updating or adding a `RuleGroup` to a `WebACL`. In this case,
|
5085
5105
|
# you do not use `ActivatedRule|Action`. For all other update
|
5086
5106
|
# requests, `ActivatedRule|Action` is used instead of
|
5087
5107
|
# `ActivatedRule|OverrideAction`.
|
@@ -5145,6 +5165,11 @@ module Aws::WAF
|
|
5145
5165
|
# type: "NONE", # required, accepts NONE, COUNT
|
5146
5166
|
# },
|
5147
5167
|
# type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
|
5168
|
+
# excluded_rules: [
|
5169
|
+
# {
|
5170
|
+
# rule_id: "ResourceId", # required
|
5171
|
+
# },
|
5172
|
+
# ],
|
5148
5173
|
# },
|
5149
5174
|
# },
|
5150
5175
|
# ],
|
@@ -5170,8 +5195,8 @@ module Aws::WAF
|
|
5170
5195
|
# For each `XssMatchTuple` object, you specify the following values:
|
5171
5196
|
#
|
5172
5197
|
# * `Action`\: Whether to insert the object into or delete the object
|
5173
|
-
# from the array. To change
|
5174
|
-
# object and add a new one.
|
5198
|
+
# from the array. To change an `XssMatchTuple`, you delete the
|
5199
|
+
# existing object and add a new one.
|
5175
5200
|
#
|
5176
5201
|
# * `FieldToMatch`\: The part of web requests that you want AWS WAF to
|
5177
5202
|
# inspect and, if you want AWS WAF to inspect a header or custom query
|
@@ -5183,12 +5208,12 @@ module Aws::WAF
|
|
5183
5208
|
#
|
5184
5209
|
# You can only specify a single type of TextTransformation.
|
5185
5210
|
#
|
5186
|
-
# You use `XssMatchSet` objects to specify which CloudFront requests
|
5187
|
-
# want to allow, block, or count. For example, if you're
|
5188
|
-
# requests that contain cross-site scripting attacks in the
|
5189
|
-
# and you want to block the requests, you can create an
|
5190
|
-
# with the applicable settings, and then configure AWS WAF
|
5191
|
-
# requests.
|
5211
|
+
# You use `XssMatchSet` objects to specify which CloudFront requests
|
5212
|
+
# that you want to allow, block, or count. For example, if you're
|
5213
|
+
# receiving requests that contain cross-site scripting attacks in the
|
5214
|
+
# request body and you want to block the requests, you can create an
|
5215
|
+
# `XssMatchSet` with the applicable settings, and then configure AWS WAF
|
5216
|
+
# to block the requests.
|
5192
5217
|
#
|
5193
5218
|
# To create and configure an `XssMatchSet`, perform the following steps:
|
5194
5219
|
#
|
@@ -5218,8 +5243,8 @@ module Aws::WAF
|
|
5218
5243
|
#
|
5219
5244
|
# @option params [required, Array<Types::XssMatchSetUpdate>] :updates
|
5220
5245
|
# An array of `XssMatchSetUpdate` objects that you want to insert into
|
5221
|
-
# or delete from
|
5222
|
-
# data types:
|
5246
|
+
# or delete from an XssMatchSet. For more information, see the
|
5247
|
+
# applicable data types:
|
5223
5248
|
#
|
5224
5249
|
# * XssMatchSetUpdate: Contains `Action` and `XssMatchTuple`
|
5225
5250
|
#
|
@@ -5303,7 +5328,7 @@ module Aws::WAF
|
|
5303
5328
|
params: params,
|
5304
5329
|
config: config)
|
5305
5330
|
context[:gem_name] = 'aws-sdk-waf'
|
5306
|
-
context[:gem_version] = '1.
|
5331
|
+
context[:gem_version] = '1.12.0'
|
5307
5332
|
Seahorse::Client::Request.new(handlers, context)
|
5308
5333
|
end
|
5309
5334
|
|
@@ -79,6 +79,8 @@ module Aws::WAF
|
|
79
79
|
DeleteWebACLResponse = Shapes::StructureShape.new(name: 'DeleteWebACLResponse')
|
80
80
|
DeleteXssMatchSetRequest = Shapes::StructureShape.new(name: 'DeleteXssMatchSetRequest')
|
81
81
|
DeleteXssMatchSetResponse = Shapes::StructureShape.new(name: 'DeleteXssMatchSetResponse')
|
82
|
+
ExcludedRule = Shapes::StructureShape.new(name: 'ExcludedRule')
|
83
|
+
ExcludedRules = Shapes::ListShape.new(name: 'ExcludedRules')
|
82
84
|
FieldToMatch = Shapes::StructureShape.new(name: 'FieldToMatch')
|
83
85
|
GeoMatchConstraint = Shapes::StructureShape.new(name: 'GeoMatchConstraint')
|
84
86
|
GeoMatchConstraintType = Shapes::StringShape.new(name: 'GeoMatchConstraintType')
|
@@ -289,6 +291,7 @@ module Aws::WAF
|
|
289
291
|
WAFNonexistentContainerException = Shapes::StructureShape.new(name: 'WAFNonexistentContainerException')
|
290
292
|
WAFNonexistentItemException = Shapes::StructureShape.new(name: 'WAFNonexistentItemException')
|
291
293
|
WAFReferencedItemException = Shapes::StructureShape.new(name: 'WAFReferencedItemException')
|
294
|
+
WAFServiceLinkedRoleErrorException = Shapes::StructureShape.new(name: 'WAFServiceLinkedRoleErrorException')
|
292
295
|
WAFStaleDataException = Shapes::StructureShape.new(name: 'WAFStaleDataException')
|
293
296
|
WAFSubscriptionNotFoundException = Shapes::StructureShape.new(name: 'WAFSubscriptionNotFoundException')
|
294
297
|
WafAction = Shapes::StructureShape.new(name: 'WafAction')
|
@@ -315,6 +318,7 @@ module Aws::WAF
|
|
315
318
|
ActivatedRule.add_member(:action, Shapes::ShapeRef.new(shape: WafAction, location_name: "Action"))
|
316
319
|
ActivatedRule.add_member(:override_action, Shapes::ShapeRef.new(shape: WafOverrideAction, location_name: "OverrideAction"))
|
317
320
|
ActivatedRule.add_member(:type, Shapes::ShapeRef.new(shape: WafRuleType, location_name: "Type"))
|
321
|
+
ActivatedRule.add_member(:excluded_rules, Shapes::ShapeRef.new(shape: ExcludedRules, location_name: "ExcludedRules"))
|
318
322
|
ActivatedRule.struct_class = Types::ActivatedRule
|
319
323
|
|
320
324
|
ActivatedRules.member = Shapes::ShapeRef.new(shape: ActivatedRule)
|
@@ -541,6 +545,11 @@ module Aws::WAF
|
|
541
545
|
DeleteXssMatchSetResponse.add_member(:change_token, Shapes::ShapeRef.new(shape: ChangeToken, location_name: "ChangeToken"))
|
542
546
|
DeleteXssMatchSetResponse.struct_class = Types::DeleteXssMatchSetResponse
|
543
547
|
|
548
|
+
ExcludedRule.add_member(:rule_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "RuleId"))
|
549
|
+
ExcludedRule.struct_class = Types::ExcludedRule
|
550
|
+
|
551
|
+
ExcludedRules.member = Shapes::ShapeRef.new(shape: ExcludedRule)
|
552
|
+
|
544
553
|
FieldToMatch.add_member(:type, Shapes::ShapeRef.new(shape: MatchFieldType, required: true, location_name: "Type"))
|
545
554
|
FieldToMatch.add_member(:data, Shapes::ShapeRef.new(shape: MatchFieldData, location_name: "Data"))
|
546
555
|
FieldToMatch.struct_class = Types::FieldToMatch
|
@@ -1135,6 +1144,7 @@ module Aws::WAF
|
|
1135
1144
|
WebACL.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, location_name: "MetricName"))
|
1136
1145
|
WebACL.add_member(:default_action, Shapes::ShapeRef.new(shape: WafAction, required: true, location_name: "DefaultAction"))
|
1137
1146
|
WebACL.add_member(:rules, Shapes::ShapeRef.new(shape: ActivatedRules, required: true, location_name: "Rules"))
|
1147
|
+
WebACL.add_member(:web_acl_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "WebACLArn"))
|
1138
1148
|
WebACL.struct_class = Types::WebACL
|
1139
1149
|
|
1140
1150
|
WebACLSummaries.member = Shapes::ShapeRef.new(shape: WebACLSummary)
|
@@ -1893,6 +1903,7 @@ module Aws::WAF
|
|
1893
1903
|
o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
|
1894
1904
|
o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
|
1895
1905
|
o.errors << Shapes::ShapeRef.new(shape: WAFStaleDataException)
|
1906
|
+
o.errors << Shapes::ShapeRef.new(shape: WAFServiceLinkedRoleErrorException)
|
1896
1907
|
end)
|
1897
1908
|
|
1898
1909
|
api.add_operation(:put_permission_policy, Seahorse::Model::Operation.new.tap do |o|
|
data/lib/aws-sdk-waf/types.rb
CHANGED
@@ -29,6 +29,11 @@ module Aws::WAF
|
|
29
29
|
# type: "NONE", # required, accepts NONE, COUNT
|
30
30
|
# },
|
31
31
|
# type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
|
32
|
+
# excluded_rules: [
|
33
|
+
# {
|
34
|
+
# rule_id: "ResourceId", # required
|
35
|
+
# },
|
36
|
+
# ],
|
32
37
|
# }
|
33
38
|
#
|
34
39
|
# @!attribute [rw] priority
|
@@ -63,7 +68,7 @@ module Aws::WAF
|
|
63
68
|
# request based on the remaining rules in the web ACL.
|
64
69
|
#
|
65
70
|
# `ActivatedRule|OverrideAction` applies only when updating or adding
|
66
|
-
# a `RuleGroup` to a `WebACL`. In this case you do not use
|
71
|
+
# a `RuleGroup` to a `WebACL`. In this case, you do not use
|
67
72
|
# `ActivatedRule|Action`. For all other update requests,
|
68
73
|
# `ActivatedRule|Action` is used instead of
|
69
74
|
# `ActivatedRule|OverrideAction`.
|
@@ -99,6 +104,51 @@ module Aws::WAF
|
|
99
104
|
# does not exist.
|
100
105
|
# @return [String]
|
101
106
|
#
|
107
|
+
# @!attribute [rw] excluded_rules
|
108
|
+
# An array of rules to exclude from a rule group. This is applicable
|
109
|
+
# only when the `ActivatedRule` refers to a `RuleGroup`.
|
110
|
+
#
|
111
|
+
# Sometimes it is necessary to troubleshoot rule groups that are
|
112
|
+
# blocking traffic unexpectedly (false positives). One troubleshooting
|
113
|
+
# technique is to identify the specific rule within the rule group
|
114
|
+
# that is blocking the legitimate traffic and then disable (exclude)
|
115
|
+
# that particular rule. You can exclude rules from both your own rule
|
116
|
+
# groups and AWS Marketplace rule groups that have been associated
|
117
|
+
# with a web ACL.
|
118
|
+
#
|
119
|
+
# Specifying `ExcludedRules` does not remove those rules from the rule
|
120
|
+
# group. Rather, it changes the action for the rules to `COUNT`.
|
121
|
+
# Therefore, requests that match an `ExcludedRule` are counted but not
|
122
|
+
# blocked. The `RuleGroup` owner will receive COUNT metrics for each
|
123
|
+
# `ExcludedRule`.
|
124
|
+
#
|
125
|
+
# If you want to exclude rules from a rule group that is already
|
126
|
+
# associated with a web ACL, perform the following steps:
|
127
|
+
#
|
128
|
+
# 1. Use the AWS WAF logs to identify the IDs of the rules that you
|
129
|
+
# want to exclude. For more information about the logs, see
|
130
|
+
# [Logging Web ACL Traffic Information][1].
|
131
|
+
#
|
132
|
+
# 2. Submit an UpdateWebACL request that has two actions:
|
133
|
+
#
|
134
|
+
# * The first action deletes the existing rule group from the web
|
135
|
+
# ACL. That is, in the UpdateWebACL request, the first
|
136
|
+
# `Updates:Action` should be `DELETE` and
|
137
|
+
# `Updates:ActivatedRule:RuleId` should be the rule group that
|
138
|
+
# contains the rules that you want to exclude.
|
139
|
+
#
|
140
|
+
# * The second action inserts the same rule group back in, but
|
141
|
+
# specifying the rules to exclude. That is, the second
|
142
|
+
# `Updates:Action` should be `INSERT`,
|
143
|
+
# `Updates:ActivatedRule:RuleId` should be the rule group that
|
144
|
+
# you just removed, and `ExcludedRules` should contain the rules
|
145
|
+
# that you want to exclude.
|
146
|
+
#
|
147
|
+
#
|
148
|
+
#
|
149
|
+
# [1]: http://docs.aws.amazon.com/waf/latest/developerguide/logging.html
|
150
|
+
# @return [Array<Types::ExcludedRule>]
|
151
|
+
#
|
102
152
|
# @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ActivatedRule AWS API Documentation
|
103
153
|
#
|
104
154
|
class ActivatedRule < Struct.new(
|
@@ -106,7 +156,8 @@ module Aws::WAF
|
|
106
156
|
:rule_id,
|
107
157
|
:action,
|
108
158
|
:override_action,
|
109
|
-
:type
|
159
|
+
:type,
|
160
|
+
:excluded_rules)
|
110
161
|
include Aws::Structure
|
111
162
|
end
|
112
163
|
|
@@ -297,7 +348,7 @@ module Aws::WAF
|
|
297
348
|
# For example, suppose the value of `Type` is `HEADER` and the value
|
298
349
|
# of `Data` is `User-Agent`. If you want to search the `User-Agent`
|
299
350
|
# header for the value `BadBot`, you base64-encode `BadBot` using MIME
|
300
|
-
# base64
|
351
|
+
# base64-encoding and include the resulting value, `QmFkQm90`, in the
|
301
352
|
# value of `TargetString`.
|
302
353
|
#
|
303
354
|
# **If you're using the AWS CLI or one of the AWS SDKs**
|
@@ -804,7 +855,7 @@ module Aws::WAF
|
|
804
855
|
# @!attribute [rw] metric_name
|
805
856
|
# A friendly name or description for the metrics for this `Rule`. The
|
806
857
|
# name can contain only alphanumeric characters (A-Z, a-z, 0-9); the
|
807
|
-
# name can't contain
|
858
|
+
# name can't contain white space. You can't change the name of the
|
808
859
|
# metric after you create the `Rule`.
|
809
860
|
# @return [String]
|
810
861
|
#
|
@@ -952,7 +1003,7 @@ module Aws::WAF
|
|
952
1003
|
# @!attribute [rw] metric_name
|
953
1004
|
# A friendly name or description for the metrics for this `WebACL`.
|
954
1005
|
# The name can contain only alphanumeric characters (A-Z, a-z, 0-9);
|
955
|
-
# the name can't contain
|
1006
|
+
# the name can't contain white space. You can't change `MetricName`
|
956
1007
|
# after you create the `WebACL`.
|
957
1008
|
# @return [String]
|
958
1009
|
#
|
@@ -1565,6 +1616,28 @@ module Aws::WAF
|
|
1565
1616
|
include Aws::Structure
|
1566
1617
|
end
|
1567
1618
|
|
1619
|
+
# The rule to exclude from a rule group. This is applicable only when
|
1620
|
+
# the `ActivatedRule` refers to a `RuleGroup`. The rule must belong to
|
1621
|
+
# the `RuleGroup` that is specified by the `ActivatedRule`.
|
1622
|
+
#
|
1623
|
+
# @note When making an API call, you may pass ExcludedRule
|
1624
|
+
# data as a hash:
|
1625
|
+
#
|
1626
|
+
# {
|
1627
|
+
# rule_id: "ResourceId", # required
|
1628
|
+
# }
|
1629
|
+
#
|
1630
|
+
# @!attribute [rw] rule_id
|
1631
|
+
# The unique identifier for the rule to exclude from the rule group.
|
1632
|
+
# @return [String]
|
1633
|
+
#
|
1634
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ExcludedRule AWS API Documentation
|
1635
|
+
#
|
1636
|
+
class ExcludedRule < Struct.new(
|
1637
|
+
:rule_id)
|
1638
|
+
include Aws::Structure
|
1639
|
+
end
|
1640
|
+
|
1568
1641
|
# Specifies where in a web request to look for `TargetString`.
|
1569
1642
|
#
|
1570
1643
|
# @note When making an API call, you may pass FieldToMatch
|
@@ -3497,8 +3570,8 @@ module Aws::WAF
|
|
3497
3570
|
include Aws::Structure
|
3498
3571
|
end
|
3499
3572
|
|
3500
|
-
# The Amazon Kinesis Data Firehose
|
3501
|
-
#
|
3573
|
+
# The Amazon Kinesis Data Firehose, `RedactedFields` information, and
|
3574
|
+
# the web ACL Amazon Resource Name (ARN).
|
3502
3575
|
#
|
3503
3576
|
# @note When making an API call, you may pass LoggingConfiguration
|
3504
3577
|
# data as a hash:
|
@@ -3520,13 +3593,13 @@ module Aws::WAF
|
|
3520
3593
|
# @return [String]
|
3521
3594
|
#
|
3522
3595
|
# @!attribute [rw] log_destination_configs
|
3523
|
-
# An array of Amazon Kinesis Data Firehose
|
3596
|
+
# An array of Amazon Kinesis Data Firehose ARNs.
|
3524
3597
|
# @return [Array<String>]
|
3525
3598
|
#
|
3526
3599
|
# @!attribute [rw] redacted_fields
|
3527
3600
|
# The parts of the request that you want redacted from the logs. For
|
3528
3601
|
# example, if you redact the cookie field, the cookie field in the
|
3529
|
-
#
|
3602
|
+
# firehose will be `xxx`.
|
3530
3603
|
# @return [Array<Types::FieldToMatch>]
|
3531
3604
|
#
|
3532
3605
|
# @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/LoggingConfiguration AWS API Documentation
|
@@ -3605,9 +3678,9 @@ module Aws::WAF
|
|
3605
3678
|
# }
|
3606
3679
|
#
|
3607
3680
|
# @!attribute [rw] logging_configuration
|
3608
|
-
# The Amazon Kinesis Data Firehose
|
3609
|
-
#
|
3610
|
-
#
|
3681
|
+
# The Amazon Kinesis Data Firehose that contains the inspected traffic
|
3682
|
+
# information, the redacted fields details, and the Amazon Resource
|
3683
|
+
# Name (ARN) of the web ACL to monitor.
|
3611
3684
|
# @return [Types::LoggingConfiguration]
|
3612
3685
|
#
|
3613
3686
|
# @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/PutLoggingConfigurationRequest AWS API Documentation
|
@@ -4203,6 +4276,11 @@ module Aws::WAF
|
|
4203
4276
|
# type: "NONE", # required, accepts NONE, COUNT
|
4204
4277
|
# },
|
4205
4278
|
# type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
|
4279
|
+
# excluded_rules: [
|
4280
|
+
# {
|
4281
|
+
# rule_id: "ResourceId", # required
|
4282
|
+
# },
|
4283
|
+
# ],
|
4206
4284
|
# },
|
4207
4285
|
# }
|
4208
4286
|
#
|
@@ -5257,6 +5335,11 @@ module Aws::WAF
|
|
5257
5335
|
# type: "NONE", # required, accepts NONE, COUNT
|
5258
5336
|
# },
|
5259
5337
|
# type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
|
5338
|
+
# excluded_rules: [
|
5339
|
+
# {
|
5340
|
+
# rule_id: "ResourceId", # required
|
5341
|
+
# },
|
5342
|
+
# ],
|
5260
5343
|
# },
|
5261
5344
|
# },
|
5262
5345
|
# ],
|
@@ -5526,6 +5609,11 @@ module Aws::WAF
|
|
5526
5609
|
# type: "NONE", # required, accepts NONE, COUNT
|
5527
5610
|
# },
|
5528
5611
|
# type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
|
5612
|
+
# excluded_rules: [
|
5613
|
+
# {
|
5614
|
+
# rule_id: "ResourceId", # required
|
5615
|
+
# },
|
5616
|
+
# ],
|
5529
5617
|
# },
|
5530
5618
|
# },
|
5531
5619
|
# ],
|
@@ -5554,7 +5642,7 @@ module Aws::WAF
|
|
5554
5642
|
#
|
5555
5643
|
# * ActivatedRule: Contains `Action`, `OverrideAction`, `Priority`,
|
5556
5644
|
# `RuleId`, and `Type`. `ActivatedRule|OverrideAction` applies only
|
5557
|
-
# when updating or adding a `RuleGroup` to a `WebACL`. In this case
|
5645
|
+
# when updating or adding a `RuleGroup` to a `WebACL`. In this case,
|
5558
5646
|
# you do not use `ActivatedRule|Action`. For all other update
|
5559
5647
|
# requests, `ActivatedRule|Action` is used instead of
|
5560
5648
|
# `ActivatedRule|OverrideAction`.
|
@@ -5625,7 +5713,7 @@ module Aws::WAF
|
|
5625
5713
|
#
|
5626
5714
|
# @!attribute [rw] updates
|
5627
5715
|
# An array of `XssMatchSetUpdate` objects that you want to insert into
|
5628
|
-
# or delete from
|
5716
|
+
# or delete from an XssMatchSet. For more information, see the
|
5629
5717
|
# applicable data types:
|
5630
5718
|
#
|
5631
5719
|
# * XssMatchSetUpdate: Contains `Action` and `XssMatchTuple`
|
@@ -5760,6 +5848,10 @@ module Aws::WAF
|
|
5760
5848
|
# priority of the `Rule`, and the ID of the `Rule`.
|
5761
5849
|
# @return [Array<Types::ActivatedRule>]
|
5762
5850
|
#
|
5851
|
+
# @!attribute [rw] web_acl_arn
|
5852
|
+
# Tha Amazon Resource Name (ARN) of the web ACL.
|
5853
|
+
# @return [String]
|
5854
|
+
#
|
5763
5855
|
# @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/WebACL AWS API Documentation
|
5764
5856
|
#
|
5765
5857
|
class WebACL < Struct.new(
|
@@ -5767,7 +5859,8 @@ module Aws::WAF
|
|
5767
5859
|
:name,
|
5768
5860
|
:metric_name,
|
5769
5861
|
:default_action,
|
5770
|
-
:rules
|
5862
|
+
:rules,
|
5863
|
+
:web_acl_arn)
|
5771
5864
|
include Aws::Structure
|
5772
5865
|
end
|
5773
5866
|
|
@@ -5813,6 +5906,11 @@ module Aws::WAF
|
|
5813
5906
|
# type: "NONE", # required, accepts NONE, COUNT
|
5814
5907
|
# },
|
5815
5908
|
# type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
|
5909
|
+
# excluded_rules: [
|
5910
|
+
# {
|
5911
|
+
# rule_id: "ResourceId", # required
|
5912
|
+
# },
|
5913
|
+
# ],
|
5816
5914
|
# },
|
5817
5915
|
# }
|
5818
5916
|
#
|
@@ -5917,8 +6015,8 @@ module Aws::WAF
|
|
5917
6015
|
# }
|
5918
6016
|
#
|
5919
6017
|
# @!attribute [rw] action
|
5920
|
-
# Specify `INSERT` to add
|
5921
|
-
# `DELETE` to remove
|
6018
|
+
# Specify `INSERT` to add an XssMatchSetUpdate to an XssMatchSet. Use
|
6019
|
+
# `DELETE` to remove an `XssMatchSetUpdate` from an `XssMatchSet`.
|
5922
6020
|
# @return [String]
|
5923
6021
|
#
|
5924
6022
|
# @!attribute [rw] xss_match_tuple
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-waf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.12.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-
|
11
|
+
date: 2018-12-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|