aws-sdk-wafregional 1.12.0 → 1.13.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: c9a830fda2b9a9dd76907f4e645d06bd69b51443
4
- data.tar.gz: 5d41a2363394b6c4dec8dde423ecf0bc54394909
3
+ metadata.gz: 02cf872e8c3310ea6bc3b3a6bcd9d06b4eb803a1
4
+ data.tar.gz: 5eeeba7e5be3d366e5d4ff11cd2fccea9ea4a575
5
5
  SHA512:
6
- metadata.gz: d19fe595dc5977c565c3561f46d7f48818e77252f425ec50b937cfb0d854b3fc50279f13a50d55c1cd8485dace5b7fcfc34f0a6b46ed40403102f896d14f9ff8
7
- data.tar.gz: 851604f0763c4f6d7531fc5176cdabf2d7b5579fb5bc6a258a49f78b0740b0866280d91218d150f7849820ce0a98726bb306609b17b5b95c7a65adaacd112bf9
6
+ metadata.gz: 7c99a5537aaeb43b3f244e68d4c0ea59215397c7cfff98e82c47560cc698369f65d37dc7a043864bd2076596c5ff617e7ab2e937d3968c18f822d4fda45e1663
7
+ data.tar.gz: 215d2254cf03dd4282a61fb7f446dd9fd8f54ce59256f08a9d10f59e59129a0c24936ca36686037a846fe233174f5aefa0c66f15807825904a131e56c5794e3a
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-wafregional/customizations'
42
42
  # @service
43
43
  module Aws::WAFRegional
44
44
 
45
- GEM_VERSION = '1.12.0'
45
+ GEM_VERSION = '1.13.0'
46
46
 
47
47
  end
@@ -215,13 +215,24 @@ module Aws::WAFRegional
215
215
 
216
216
  # @!group API Operations
217
217
 
218
- # Associates a web ACL with a resource.
218
+ # Associates a web ACL with a resource, either an application load
219
+ # balancer or Amazon API Gateway stage.
219
220
  #
220
221
  # @option params [required, String] :web_acl_id
221
222
  # A unique identifier (ID) for the web ACL.
222
223
  #
223
224
  # @option params [required, String] :resource_arn
224
- # The ARN (Amazon Resource Name) of the resource to be protected.
225
+ # The ARN (Amazon Resource Name) of the resource to be protected, either
226
+ # an application load balancer or Amazon API Gateway stage.
227
+ #
228
+ # The ARN should be in one of the following formats:
229
+ #
230
+ # * For an Application Load Balancer:
231
+ # `arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id
232
+ # `
233
+ #
234
+ # * For an Amazon API Gateway stage:
235
+ # `arn:aws:apigateway:region::/restapis/api-id/stages/stage-name `
225
236
  #
226
237
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
227
238
  #
@@ -373,8 +384,8 @@ module Aws::WAFRegional
373
384
  req.send_request(options)
374
385
  end
375
386
 
376
- # Creates an IPSet, which you use to specify which web requests you want
377
- # to allow or block based on the IP addresses that the requests
387
+ # Creates an IPSet, which you use to specify which web requests that you
388
+ # want to allow or block based on the IP addresses that the requests
378
389
  # originate from. For example, if you're receiving a lot of requests
379
390
  # from one or more individual IP addresses or one or more ranges of IP
380
391
  # addresses and you want to block the requests, you can create an
@@ -736,7 +747,7 @@ module Aws::WAFRegional
736
747
  # objects, and other predicates that identify the requests that you want
737
748
  # to block. If you add more than one predicate to a `Rule`, a request
738
749
  # must match all of the specifications to be allowed or blocked. For
739
- # example, suppose you add the following to a `Rule`\:
750
+ # example, suppose that you add the following to a `Rule`\:
740
751
  #
741
752
  # * An `IPSet` that matches the IP address `192.0.2.44/32`
742
753
  #
@@ -781,7 +792,7 @@ module Aws::WAFRegional
781
792
  # @option params [required, String] :metric_name
782
793
  # A friendly name or description for the metrics for this `Rule`. The
783
794
  # name can contain only alphanumeric characters (A-Z, a-z, 0-9); the
784
- # name can't contain whitespace. You can't change the name of the
795
+ # name can't contain white space. You can't change the name of the
785
796
  # metric after you create the `Rule`.
786
797
  #
787
798
  # @option params [required, String] :change_token
@@ -1149,7 +1160,7 @@ module Aws::WAFRegional
1149
1160
  # @option params [required, String] :metric_name
1150
1161
  # A friendly name or description for the metrics for this `WebACL`. The
1151
1162
  # name can contain only alphanumeric characters (A-Z, a-z, 0-9); the
1152
- # name can't contain whitespace. You can't change `MetricName` after
1163
+ # name can't contain white space. You can't change `MetricName` after
1153
1164
  # you create the `WebACL`.
1154
1165
  #
1155
1166
  # @option params [required, Types::WafAction] :default_action
@@ -1224,6 +1235,8 @@ module Aws::WAFRegional
1224
1235
  # resp.web_acl.rules[0].action.type #=> String, one of "BLOCK", "ALLOW", "COUNT"
1225
1236
  # resp.web_acl.rules[0].override_action.type #=> String, one of "NONE", "COUNT"
1226
1237
  # resp.web_acl.rules[0].type #=> String, one of "REGULAR", "RATE_BASED", "GROUP"
1238
+ # resp.web_acl.rules[0].excluded_rules #=> Array
1239
+ # resp.web_acl.rules[0].excluded_rules[0].rule_id #=> String
1227
1240
  # resp.web_acl.web_acl_arn #=> String
1228
1241
  # resp.change_token #=> String
1229
1242
  #
@@ -2053,11 +2066,22 @@ module Aws::WAFRegional
2053
2066
  req.send_request(options)
2054
2067
  end
2055
2068
 
2056
- # Removes a web ACL from the specified resource.
2069
+ # Removes a web ACL from the specified resource, either an application
2070
+ # load balancer or Amazon API Gateway stage.
2057
2071
  #
2058
2072
  # @option params [required, String] :resource_arn
2059
2073
  # The ARN (Amazon Resource Name) of the resource from which the web ACL
2060
- # is being removed.
2074
+ # is being removed, either an application load balancer or Amazon API
2075
+ # Gateway stage.
2076
+ #
2077
+ # The ARN should be in one of the following formats:
2078
+ #
2079
+ # * For an Application Load Balancer:
2080
+ # `arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id
2081
+ # `
2082
+ #
2083
+ # * For an Amazon API Gateway stage:
2084
+ # `arn:aws:apigateway:region::/restapis/api-id/stages/stage-name `
2061
2085
  #
2062
2086
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2063
2087
  #
@@ -2955,6 +2979,8 @@ module Aws::WAFRegional
2955
2979
  # resp.web_acl.rules[0].action.type #=> String, one of "BLOCK", "ALLOW", "COUNT"
2956
2980
  # resp.web_acl.rules[0].override_action.type #=> String, one of "NONE", "COUNT"
2957
2981
  # resp.web_acl.rules[0].type #=> String, one of "REGULAR", "RATE_BASED", "GROUP"
2982
+ # resp.web_acl.rules[0].excluded_rules #=> Array
2983
+ # resp.web_acl.rules[0].excluded_rules[0].rule_id #=> String
2958
2984
  # resp.web_acl.web_acl_arn #=> String
2959
2985
  #
2960
2986
  # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetWebACL AWS API Documentation
@@ -2966,11 +2992,22 @@ module Aws::WAFRegional
2966
2992
  req.send_request(options)
2967
2993
  end
2968
2994
 
2969
- # Returns the web ACL for the specified resource.
2995
+ # Returns the web ACL for the specified resource, either an application
2996
+ # load balancer or Amazon API Gateway stage.
2970
2997
  #
2971
2998
  # @option params [required, String] :resource_arn
2972
2999
  # The ARN (Amazon Resource Name) of the resource for which to get the
2973
- # web ACL.
3000
+ # web ACL, either an application load balancer or Amazon API Gateway
3001
+ # stage.
3002
+ #
3003
+ # The ARN should be in one of the following formats:
3004
+ #
3005
+ # * For an Application Load Balancer:
3006
+ # `arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id
3007
+ # `
3008
+ #
3009
+ # * For an Amazon API Gateway stage:
3010
+ # `arn:aws:apigateway:region::/restapis/api-id/stages/stage-name `
2974
3011
  #
2975
3012
  # @return [Types::GetWebACLForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2976
3013
  #
@@ -3099,6 +3136,8 @@ module Aws::WAFRegional
3099
3136
  # resp.activated_rules[0].action.type #=> String, one of "BLOCK", "ALLOW", "COUNT"
3100
3137
  # resp.activated_rules[0].override_action.type #=> String, one of "NONE", "COUNT"
3101
3138
  # resp.activated_rules[0].type #=> String, one of "REGULAR", "RATE_BASED", "GROUP"
3139
+ # resp.activated_rules[0].excluded_rules #=> Array
3140
+ # resp.activated_rules[0].excluded_rules[0].rule_id #=> String
3102
3141
  #
3103
3142
  # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListActivatedRulesInRuleGroup AWS API Documentation
3104
3143
  #
@@ -3454,7 +3493,7 @@ module Aws::WAFRegional
3454
3493
  # associated resources.
3455
3494
  #
3456
3495
  # @option params [String] :resource_type
3457
- # The type of resource to list, either and application load balancer or
3496
+ # The type of resource to list, either an application load balancer or
3458
3497
  # Amazon API Gateway.
3459
3498
  #
3460
3499
  # @return [Types::ListResourcesForWebACLResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -4647,7 +4686,7 @@ module Aws::WAFRegional
4647
4686
  # that specifies the web requests that you want to allow, block, or
4648
4687
  # count. If you add more than one predicate to a `Rule`, a request must
4649
4688
  # match all of the specifications to be allowed, blocked, or counted.
4650
- # For example, suppose you add the following to a `Rule`\:
4689
+ # For example, suppose that you add the following to a `Rule`\:
4651
4690
  #
4652
4691
  # * A `ByteMatchSet` that matches the value `BadBot` in the `User-Agent`
4653
4692
  # header
@@ -4831,6 +4870,11 @@ module Aws::WAFRegional
4831
4870
  # type: "NONE", # required, accepts NONE, COUNT
4832
4871
  # },
4833
4872
  # type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
4873
+ # excluded_rules: [
4874
+ # {
4875
+ # rule_id: "ResourceId", # required
4876
+ # },
4877
+ # ],
4834
4878
  # },
4835
4879
  # },
4836
4880
  # ],
@@ -5010,9 +5054,9 @@ module Aws::WAFRegional
5010
5054
  # You can only specify a single type of TextTransformation.
5011
5055
  #
5012
5056
  # You use `SqlInjectionMatchSet` objects to specify which CloudFront
5013
- # requests you want to allow, block, or count. For example, if you're
5014
- # receiving requests that contain snippets of SQL code in the query
5015
- # string and you want to block the requests, you can create a
5057
+ # requests that you want to allow, block, or count. For example, if
5058
+ # you're receiving requests that contain snippets of SQL code in the
5059
+ # query string and you want to block the requests, you can create a
5016
5060
  # `SqlInjectionMatchSet` with the applicable settings, and then
5017
5061
  # configure AWS WAF to block the requests.
5018
5062
  #
@@ -5127,9 +5171,9 @@ module Aws::WAFRegional
5127
5171
  # WAF performs the default action if a request doesn't match the
5128
5172
  # criteria in any of the `Rules` in a `WebACL`.
5129
5173
  #
5130
- # * The `Rules` that you want to add and/or delete. If you want to
5131
- # replace one `Rule` with another, you delete the existing `Rule` and
5132
- # add the new one.
5174
+ # * The `Rules` that you want to add or delete. If you want to replace
5175
+ # one `Rule` with another, you delete the existing `Rule` and add the
5176
+ # new one.
5133
5177
  #
5134
5178
  # * For each `Rule`, whether you want AWS WAF to allow requests, block
5135
5179
  # requests, or count requests that match the conditions in the `Rule`.
@@ -5138,11 +5182,11 @@ module Aws::WAFRegional
5138
5182
  # `WebACL`. If you add more than one `Rule` to a `WebACL`, AWS WAF
5139
5183
  # evaluates each request against the `Rules` in order based on the
5140
5184
  # value of `Priority`. (The `Rule` that has the lowest value for
5141
- # `Priority` is evaluated first.) When a web request matches all of
5142
- # the predicates (such as `ByteMatchSets` and `IPSets`) in a `Rule`,
5143
- # AWS WAF immediately takes the corresponding action, allow or block,
5144
- # and doesn't evaluate the request against the remaining `Rules` in
5145
- # the `WebACL`, if any.
5185
+ # `Priority` is evaluated first.) When a web request matches all the
5186
+ # predicates (such as `ByteMatchSets` and `IPSets`) in a `Rule`, AWS
5187
+ # WAF immediately takes the corresponding action, allow or block, and
5188
+ # doesn't evaluate the request against the remaining `Rules` in the
5189
+ # `WebACL`, if any.
5146
5190
  #
5147
5191
  # To create and configure a `WebACL`, perform the following steps:
5148
5192
  #
@@ -5163,6 +5207,16 @@ module Aws::WAFRegional
5163
5207
  # want to include in the `WebACL`, to specify the default action,
5164
5208
  # and to associate the `WebACL` with a CloudFront distribution.
5165
5209
  #
5210
+ # The `ActivatedRule` can be a rule group. If you specify a rule
5211
+ # group as your `ActivatedRule`, you can exclude specific rules from
5212
+ # that rule group.
5213
+ #
5214
+ # If you already have a rule group associated with a web ACL and
5215
+ # want to submit an `UpdateWebACL` request to exclude certain rules
5216
+ # from that rule group, you must first remove the rule group from
5217
+ # the web ACL, the re-insert it again, specifying the excluded
5218
+ # rules. For details, see ActivatedRule$ExcludedRules.
5219
+ #
5166
5220
  # Be aware that if you try to add a RATE\_BASED rule to a web ACL
5167
5221
  # without setting the rule type when first creating the rule, the
5168
5222
  # UpdateWebACL request will fail because the request tries to add a
@@ -5194,7 +5248,7 @@ module Aws::WAFRegional
5194
5248
  #
5195
5249
  # * ActivatedRule: Contains `Action`, `OverrideAction`, `Priority`,
5196
5250
  # `RuleId`, and `Type`. `ActivatedRule|OverrideAction` applies only
5197
- # when updating or adding a `RuleGroup` to a `WebACL`. In this case
5251
+ # when updating or adding a `RuleGroup` to a `WebACL`. In this case,
5198
5252
  # you do not use `ActivatedRule|Action`. For all other update
5199
5253
  # requests, `ActivatedRule|Action` is used instead of
5200
5254
  # `ActivatedRule|OverrideAction`.
@@ -5258,6 +5312,11 @@ module Aws::WAFRegional
5258
5312
  # type: "NONE", # required, accepts NONE, COUNT
5259
5313
  # },
5260
5314
  # type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
5315
+ # excluded_rules: [
5316
+ # {
5317
+ # rule_id: "ResourceId", # required
5318
+ # },
5319
+ # ],
5261
5320
  # },
5262
5321
  # },
5263
5322
  # ],
@@ -5283,8 +5342,8 @@ module Aws::WAFRegional
5283
5342
  # For each `XssMatchTuple` object, you specify the following values:
5284
5343
  #
5285
5344
  # * `Action`\: Whether to insert the object into or delete the object
5286
- # from the array. To change a `XssMatchTuple`, you delete the existing
5287
- # object and add a new one.
5345
+ # from the array. To change an `XssMatchTuple`, you delete the
5346
+ # existing object and add a new one.
5288
5347
  #
5289
5348
  # * `FieldToMatch`\: The part of web requests that you want AWS WAF to
5290
5349
  # inspect and, if you want AWS WAF to inspect a header or custom query
@@ -5296,12 +5355,12 @@ module Aws::WAFRegional
5296
5355
  #
5297
5356
  # You can only specify a single type of TextTransformation.
5298
5357
  #
5299
- # You use `XssMatchSet` objects to specify which CloudFront requests you
5300
- # want to allow, block, or count. For example, if you're receiving
5301
- # requests that contain cross-site scripting attacks in the request body
5302
- # and you want to block the requests, you can create an `XssMatchSet`
5303
- # with the applicable settings, and then configure AWS WAF to block the
5304
- # requests.
5358
+ # You use `XssMatchSet` objects to specify which CloudFront requests
5359
+ # that you want to allow, block, or count. For example, if you're
5360
+ # receiving requests that contain cross-site scripting attacks in the
5361
+ # request body and you want to block the requests, you can create an
5362
+ # `XssMatchSet` with the applicable settings, and then configure AWS WAF
5363
+ # to block the requests.
5305
5364
  #
5306
5365
  # To create and configure an `XssMatchSet`, perform the following steps:
5307
5366
  #
@@ -5331,8 +5390,8 @@ module Aws::WAFRegional
5331
5390
  #
5332
5391
  # @option params [required, Array<Types::XssMatchSetUpdate>] :updates
5333
5392
  # An array of `XssMatchSetUpdate` objects that you want to insert into
5334
- # or delete from a XssMatchSet. For more information, see the applicable
5335
- # data types:
5393
+ # or delete from an XssMatchSet. For more information, see the
5394
+ # applicable data types:
5336
5395
  #
5337
5396
  # * XssMatchSetUpdate: Contains `Action` and `XssMatchTuple`
5338
5397
  #
@@ -5416,7 +5475,7 @@ module Aws::WAFRegional
5416
5475
  params: params,
5417
5476
  config: config)
5418
5477
  context[:gem_name] = 'aws-sdk-wafregional'
5419
- context[:gem_version] = '1.12.0'
5478
+ context[:gem_version] = '1.13.0'
5420
5479
  Seahorse::Client::Request.new(handlers, context)
5421
5480
  end
5422
5481
 
@@ -83,6 +83,8 @@ module Aws::WAFRegional
83
83
  DeleteXssMatchSetResponse = Shapes::StructureShape.new(name: 'DeleteXssMatchSetResponse')
84
84
  DisassociateWebACLRequest = Shapes::StructureShape.new(name: 'DisassociateWebACLRequest')
85
85
  DisassociateWebACLResponse = Shapes::StructureShape.new(name: 'DisassociateWebACLResponse')
86
+ ExcludedRule = Shapes::StructureShape.new(name: 'ExcludedRule')
87
+ ExcludedRules = Shapes::ListShape.new(name: 'ExcludedRules')
86
88
  FieldToMatch = Shapes::StructureShape.new(name: 'FieldToMatch')
87
89
  GeoMatchConstraint = Shapes::StructureShape.new(name: 'GeoMatchConstraint')
88
90
  GeoMatchConstraintType = Shapes::StringShape.new(name: 'GeoMatchConstraintType')
@@ -327,6 +329,7 @@ module Aws::WAFRegional
327
329
  ActivatedRule.add_member(:action, Shapes::ShapeRef.new(shape: WafAction, location_name: "Action"))
328
330
  ActivatedRule.add_member(:override_action, Shapes::ShapeRef.new(shape: WafOverrideAction, location_name: "OverrideAction"))
329
331
  ActivatedRule.add_member(:type, Shapes::ShapeRef.new(shape: WafRuleType, location_name: "Type"))
332
+ ActivatedRule.add_member(:excluded_rules, Shapes::ShapeRef.new(shape: ExcludedRules, location_name: "ExcludedRules"))
330
333
  ActivatedRule.struct_class = Types::ActivatedRule
331
334
 
332
335
  ActivatedRules.member = Shapes::ShapeRef.new(shape: ActivatedRule)
@@ -564,6 +567,11 @@ module Aws::WAFRegional
564
567
 
565
568
  DisassociateWebACLResponse.struct_class = Types::DisassociateWebACLResponse
566
569
 
570
+ ExcludedRule.add_member(:rule_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "RuleId"))
571
+ ExcludedRule.struct_class = Types::ExcludedRule
572
+
573
+ ExcludedRules.member = Shapes::ShapeRef.new(shape: ExcludedRule)
574
+
567
575
  FieldToMatch.add_member(:type, Shapes::ShapeRef.new(shape: MatchFieldType, required: true, location_name: "Type"))
568
576
  FieldToMatch.add_member(:data, Shapes::ShapeRef.new(shape: MatchFieldData, location_name: "Data"))
569
577
  FieldToMatch.struct_class = Types::FieldToMatch
@@ -29,6 +29,11 @@ module Aws::WAFRegional
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::WAFRegional
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::WAFRegional
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-regional-2016-11-28/ActivatedRule AWS API Documentation
103
153
  #
104
154
  class ActivatedRule < Struct.new(
@@ -106,7 +156,8 @@ module Aws::WAFRegional
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
 
@@ -123,7 +174,17 @@ module Aws::WAFRegional
123
174
  # @return [String]
124
175
  #
125
176
  # @!attribute [rw] resource_arn
126
- # The ARN (Amazon Resource Name) of the resource to be protected.
177
+ # The ARN (Amazon Resource Name) of the resource to be protected,
178
+ # either an application load balancer or Amazon API Gateway stage.
179
+ #
180
+ # The ARN should be in one of the following formats:
181
+ #
182
+ # * For an Application Load Balancer:
183
+ # `arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id
184
+ # `
185
+ #
186
+ # * For an Amazon API Gateway stage:
187
+ # `arn:aws:apigateway:region::/restapis/api-id/stages/stage-name `
127
188
  # @return [String]
128
189
  #
129
190
  # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/AssociateWebACLRequest AWS API Documentation
@@ -325,7 +386,7 @@ module Aws::WAFRegional
325
386
  # For example, suppose the value of `Type` is `HEADER` and the value
326
387
  # of `Data` is `User-Agent`. If you want to search the `User-Agent`
327
388
  # header for the value `BadBot`, you base64-encode `BadBot` using MIME
328
- # base64 encoding and include the resulting value, `QmFkQm90`, in the
389
+ # base64-encoding and include the resulting value, `QmFkQm90`, in the
329
390
  # value of `TargetString`.
330
391
  #
331
392
  # **If you're using the AWS CLI or one of the AWS SDKs**
@@ -832,7 +893,7 @@ module Aws::WAFRegional
832
893
  # @!attribute [rw] metric_name
833
894
  # A friendly name or description for the metrics for this `Rule`. The
834
895
  # name can contain only alphanumeric characters (A-Z, a-z, 0-9); the
835
- # name can't contain whitespace. You can't change the name of the
896
+ # name can't contain white space. You can't change the name of the
836
897
  # metric after you create the `Rule`.
837
898
  # @return [String]
838
899
  #
@@ -980,7 +1041,7 @@ module Aws::WAFRegional
980
1041
  # @!attribute [rw] metric_name
981
1042
  # A friendly name or description for the metrics for this `WebACL`.
982
1043
  # The name can contain only alphanumeric characters (A-Z, a-z, 0-9);
983
- # the name can't contain whitespace. You can't change `MetricName`
1044
+ # the name can't contain white space. You can't change `MetricName`
984
1045
  # after you create the `WebACL`.
985
1046
  # @return [String]
986
1047
  #
@@ -1602,7 +1663,17 @@ module Aws::WAFRegional
1602
1663
  #
1603
1664
  # @!attribute [rw] resource_arn
1604
1665
  # The ARN (Amazon Resource Name) of the resource from which the web
1605
- # ACL is being removed.
1666
+ # ACL is being removed, either an application load balancer or Amazon
1667
+ # API Gateway stage.
1668
+ #
1669
+ # The ARN should be in one of the following formats:
1670
+ #
1671
+ # * For an Application Load Balancer:
1672
+ # `arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id
1673
+ # `
1674
+ #
1675
+ # * For an Amazon API Gateway stage:
1676
+ # `arn:aws:apigateway:region::/restapis/api-id/stages/stage-name `
1606
1677
  # @return [String]
1607
1678
  #
1608
1679
  # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DisassociateWebACLRequest AWS API Documentation
@@ -1616,6 +1687,28 @@ module Aws::WAFRegional
1616
1687
  #
1617
1688
  class DisassociateWebACLResponse < Aws::EmptyStructure; end
1618
1689
 
1690
+ # The rule to exclude from a rule group. This is applicable only when
1691
+ # the `ActivatedRule` refers to a `RuleGroup`. The rule must belong to
1692
+ # the `RuleGroup` that is specified by the `ActivatedRule`.
1693
+ #
1694
+ # @note When making an API call, you may pass ExcludedRule
1695
+ # data as a hash:
1696
+ #
1697
+ # {
1698
+ # rule_id: "ResourceId", # required
1699
+ # }
1700
+ #
1701
+ # @!attribute [rw] rule_id
1702
+ # The unique identifier for the rule to exclude from the rule group.
1703
+ # @return [String]
1704
+ #
1705
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ExcludedRule AWS API Documentation
1706
+ #
1707
+ class ExcludedRule < Struct.new(
1708
+ :rule_id)
1709
+ include Aws::Structure
1710
+ end
1711
+
1619
1712
  # Specifies where in a web request to look for `TargetString`.
1620
1713
  #
1621
1714
  # @note When making an API call, you may pass FieldToMatch
@@ -2411,7 +2504,17 @@ module Aws::WAFRegional
2411
2504
  #
2412
2505
  # @!attribute [rw] resource_arn
2413
2506
  # The ARN (Amazon Resource Name) of the resource for which to get the
2414
- # web ACL.
2507
+ # web ACL, either an application load balancer or Amazon API Gateway
2508
+ # stage.
2509
+ #
2510
+ # The ARN should be in one of the following formats:
2511
+ #
2512
+ # * For an Application Load Balancer:
2513
+ # `arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id
2514
+ # `
2515
+ #
2516
+ # * For an Amazon API Gateway stage:
2517
+ # `arn:aws:apigateway:region::/restapis/api-id/stages/stage-name `
2415
2518
  # @return [String]
2416
2519
  #
2417
2520
  # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetWebACLForResourceRequest AWS API Documentation
@@ -3210,8 +3313,8 @@ module Aws::WAFRegional
3210
3313
  # @return [String]
3211
3314
  #
3212
3315
  # @!attribute [rw] resource_type
3213
- # The type of resource to list, either and application load balancer
3214
- # or Amazon API Gateway.
3316
+ # The type of resource to list, either an application load balancer or
3317
+ # Amazon API Gateway.
3215
3318
  # @return [String]
3216
3319
  #
3217
3320
  # @see http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListResourcesForWebACLRequest AWS API Documentation
@@ -4325,6 +4428,11 @@ module Aws::WAFRegional
4325
4428
  # type: "NONE", # required, accepts NONE, COUNT
4326
4429
  # },
4327
4430
  # type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
4431
+ # excluded_rules: [
4432
+ # {
4433
+ # rule_id: "ResourceId", # required
4434
+ # },
4435
+ # ],
4328
4436
  # },
4329
4437
  # }
4330
4438
  #
@@ -5379,6 +5487,11 @@ module Aws::WAFRegional
5379
5487
  # type: "NONE", # required, accepts NONE, COUNT
5380
5488
  # },
5381
5489
  # type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
5490
+ # excluded_rules: [
5491
+ # {
5492
+ # rule_id: "ResourceId", # required
5493
+ # },
5494
+ # ],
5382
5495
  # },
5383
5496
  # },
5384
5497
  # ],
@@ -5648,6 +5761,11 @@ module Aws::WAFRegional
5648
5761
  # type: "NONE", # required, accepts NONE, COUNT
5649
5762
  # },
5650
5763
  # type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
5764
+ # excluded_rules: [
5765
+ # {
5766
+ # rule_id: "ResourceId", # required
5767
+ # },
5768
+ # ],
5651
5769
  # },
5652
5770
  # },
5653
5771
  # ],
@@ -5676,7 +5794,7 @@ module Aws::WAFRegional
5676
5794
  #
5677
5795
  # * ActivatedRule: Contains `Action`, `OverrideAction`, `Priority`,
5678
5796
  # `RuleId`, and `Type`. `ActivatedRule|OverrideAction` applies only
5679
- # when updating or adding a `RuleGroup` to a `WebACL`. In this case
5797
+ # when updating or adding a `RuleGroup` to a `WebACL`. In this case,
5680
5798
  # you do not use `ActivatedRule|Action`. For all other update
5681
5799
  # requests, `ActivatedRule|Action` is used instead of
5682
5800
  # `ActivatedRule|OverrideAction`.
@@ -5747,7 +5865,7 @@ module Aws::WAFRegional
5747
5865
  #
5748
5866
  # @!attribute [rw] updates
5749
5867
  # An array of `XssMatchSetUpdate` objects that you want to insert into
5750
- # or delete from a XssMatchSet. For more information, see the
5868
+ # or delete from an XssMatchSet. For more information, see the
5751
5869
  # applicable data types:
5752
5870
  #
5753
5871
  # * XssMatchSetUpdate: Contains `Action` and `XssMatchTuple`
@@ -5940,6 +6058,11 @@ module Aws::WAFRegional
5940
6058
  # type: "NONE", # required, accepts NONE, COUNT
5941
6059
  # },
5942
6060
  # type: "REGULAR", # accepts REGULAR, RATE_BASED, GROUP
6061
+ # excluded_rules: [
6062
+ # {
6063
+ # rule_id: "ResourceId", # required
6064
+ # },
6065
+ # ],
5943
6066
  # },
5944
6067
  # }
5945
6068
  #
@@ -6044,8 +6167,8 @@ module Aws::WAFRegional
6044
6167
  # }
6045
6168
  #
6046
6169
  # @!attribute [rw] action
6047
- # Specify `INSERT` to add a XssMatchSetUpdate to an XssMatchSet. Use
6048
- # `DELETE` to remove a `XssMatchSetUpdate` from an `XssMatchSet`.
6170
+ # Specify `INSERT` to add an XssMatchSetUpdate to an XssMatchSet. Use
6171
+ # `DELETE` to remove an `XssMatchSetUpdate` from an `XssMatchSet`.
6049
6172
  # @return [String]
6050
6173
  #
6051
6174
  # @!attribute [rw] xss_match_tuple
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.12.0
4
+ version: 1.13.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-20 00:00:00.000000000 Z
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