aws-sdk-waf 1.11.0 → 1.12.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|