aws-sdk-waf 1.3.0 → 1.4.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: 5245d973d9eea223e03e9a16c9db77af60e27b33
4
- data.tar.gz: d8508271ba6b39384c9d02c395748689b00ddcda
3
+ metadata.gz: 4821014b81bb10189a3856fde1c4676fc93ec0b6
4
+ data.tar.gz: c8555e25418439ff37b5df0f39b24b2f3c2cf45c
5
5
  SHA512:
6
- metadata.gz: fbdbb5c2645dff421f31a1a73235860c1c215c7a9a2c3212dd025d64746a08326306bc7443224f929973312c7c4dff2f44058a4588c154f692f8d3434e95e070
7
- data.tar.gz: c336a8e98274745bde5424c2a47a76051f97550fb4785738bfc3100ef6bf85bfb15f0d58df5bb84e0c3a3fc411115573b1ccb5f8d2082eea30302effa3908aa2
6
+ metadata.gz: 58505a85f4bbf80568c9da2145b3cbcd640b4ff6fa7f4dff5729602daa8bd6b3112463c114607943e082da46d7987372e7f87a6b43f215a0b0599a9d5ddbba19
7
+ data.tar.gz: 976d2e351b160866aacb7fcabcf1ff0a3ca0b5e6086c37d8ac1de4f53be524297ded0b6f6f4efc5d94d9b59f7553a34fa6e111a487e380c43b6a8c7fc88bcf3b
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-waf/customizations'
42
42
  # @service
43
43
  module Aws::WAF
44
44
 
45
- GEM_VERSION = '1.3.0'
45
+ GEM_VERSION = '1.4.0'
46
46
 
47
47
  end
@@ -1416,6 +1416,33 @@ module Aws::WAF
1416
1416
  req.send_request(options)
1417
1417
  end
1418
1418
 
1419
+ # Permanently deletes an IAM policy from the specified RuleGroup.
1420
+ #
1421
+ # The user making the request must be the owner of the RuleGroup.
1422
+ #
1423
+ # @option params [required, String] :resource_arn
1424
+ # The Amazon Resource Name (ARN) of the RuleGroup from which you want to
1425
+ # delete the policy.
1426
+ #
1427
+ # The user making the request must be the owner of the RuleGroup.
1428
+ #
1429
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1430
+ #
1431
+ # @example Request syntax with placeholder values
1432
+ #
1433
+ # resp = client.delete_permission_policy({
1434
+ # resource_arn: "ResourceArn", # required
1435
+ # })
1436
+ #
1437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeletePermissionPolicy AWS API Documentation
1438
+ #
1439
+ # @overload delete_permission_policy(params = {})
1440
+ # @param [Hash] params ({})
1441
+ def delete_permission_policy(params = {}, options = {})
1442
+ req = build_request(:delete_permission_policy, params)
1443
+ req.send_request(options)
1444
+ end
1445
+
1419
1446
  # Permanently deletes a RateBasedRule. You can't delete a rule if it's
1420
1447
  # still used in any `WebACL` objects or if it still includes any
1421
1448
  # predicates, such as `ByteMatchSet` objects.
@@ -2169,6 +2196,35 @@ module Aws::WAF
2169
2196
  req.send_request(options)
2170
2197
  end
2171
2198
 
2199
+ # Returns the IAM policy attached to the RuleGroup.
2200
+ #
2201
+ # @option params [required, String] :resource_arn
2202
+ # The Amazon Resource Name (ARN) of the RuleGroup for which you want to
2203
+ # get the policy.
2204
+ #
2205
+ # @return [Types::GetPermissionPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2206
+ #
2207
+ # * {Types::GetPermissionPolicyResponse#policy #policy} => String
2208
+ #
2209
+ # @example Request syntax with placeholder values
2210
+ #
2211
+ # resp = client.get_permission_policy({
2212
+ # resource_arn: "ResourceArn", # required
2213
+ # })
2214
+ #
2215
+ # @example Response structure
2216
+ #
2217
+ # resp.policy #=> String
2218
+ #
2219
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetPermissionPolicy AWS API Documentation
2220
+ #
2221
+ # @overload get_permission_policy(params = {})
2222
+ # @param [Hash] params ({})
2223
+ def get_permission_policy(params = {}, options = {})
2224
+ req = build_request(:get_permission_policy, params)
2225
+ req.send_request(options)
2226
+ end
2227
+
2172
2228
  # Returns the RateBasedRule that is specified by the `RuleId` that you
2173
2229
  # included in the `GetRateBasedRule` request.
2174
2230
  #
@@ -3552,6 +3608,65 @@ module Aws::WAF
3552
3608
  req.send_request(options)
3553
3609
  end
3554
3610
 
3611
+ # Attaches a IAM policy to the specified resource. The only supported
3612
+ # use for this action is to share a RuleGroup across accounts.
3613
+ #
3614
+ # The `PutPermissionPolicy` is subject to the following restrictions:
3615
+ #
3616
+ # * You can attach only one policy with each `PutPermissionPolicy`
3617
+ # request.
3618
+ #
3619
+ # * The policy must include an `Effect`, `Action` and `Principal`.
3620
+ #
3621
+ # * `Effect` must specify `Allow`.
3622
+ #
3623
+ # * The `Action` in the policy must be `waf:UpdateWebACL` and
3624
+ # `waf-regional:UpdateWebACL`. Any extra or wildcard actions in the
3625
+ # policy will be rejected.
3626
+ #
3627
+ # * The policy cannot include a `Resource` parameter.
3628
+ #
3629
+ # * The ARN in the request must be a valid WAF RuleGroup ARN and the
3630
+ # RuleGroup must exist in the same region.
3631
+ #
3632
+ # * The user making the request must be the owner of the RuleGroup.
3633
+ #
3634
+ # * Your policy must be composed using IAM Policy version 2012-10-17.
3635
+ #
3636
+ # For more information, see [IAM Policies][1].
3637
+ #
3638
+ # An example of a valid policy parameter is shown in the Examples
3639
+ # section below.
3640
+ #
3641
+ #
3642
+ #
3643
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html
3644
+ #
3645
+ # @option params [required, String] :resource_arn
3646
+ # The Amazon Resource Name (ARN) of the RuleGroup to which you want to
3647
+ # attach the policy.
3648
+ #
3649
+ # @option params [required, String] :policy
3650
+ # The policy to attach to the specified RuleGroup.
3651
+ #
3652
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3653
+ #
3654
+ # @example Request syntax with placeholder values
3655
+ #
3656
+ # resp = client.put_permission_policy({
3657
+ # resource_arn: "ResourceArn", # required
3658
+ # policy: "PolicyString", # required
3659
+ # })
3660
+ #
3661
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/PutPermissionPolicy AWS API Documentation
3662
+ #
3663
+ # @overload put_permission_policy(params = {})
3664
+ # @param [Hash] params ({})
3665
+ def put_permission_policy(params = {}, options = {})
3666
+ req = build_request(:put_permission_policy, params)
3667
+ req.send_request(options)
3668
+ end
3669
+
3555
3670
  # Inserts or deletes ByteMatchTuple objects (filters) in a ByteMatchSet.
3556
3671
  # For each `ByteMatchTuple` object, you specify the following values:
3557
3672
  #
@@ -4335,9 +4450,11 @@ module Aws::WAF
4335
4450
  #
4336
4451
  # You can only insert `REGULAR` rules into a rule group.
4337
4452
  #
4338
- # The `Action` data type within `ActivatedRule` is used only when
4339
- # submitting an `UpdateWebACL` request. `ActivatedRule|Action` is not
4340
- # applicable and therefore not available for `UpdateRuleGroup`.
4453
+ # `ActivatedRule|OverrideAction` applies only when updating or adding a
4454
+ # `RuleGroup` to a `WebACL`. In this case you do not use
4455
+ # `ActivatedRule|Action`. For all other update requests,
4456
+ # `ActivatedRule|Action` is used instead of
4457
+ # `ActivatedRule|OverrideAction`.
4341
4458
  #
4342
4459
  # @option params [required, String] :change_token
4343
4460
  # The value returned by the most recent call to GetChangeToken.
@@ -4720,11 +4837,12 @@ module Aws::WAF
4720
4837
  #
4721
4838
  # * WebACLUpdate: Contains `Action` and `ActivatedRule`
4722
4839
  #
4723
- # * ActivatedRule: Contains `Action`, `Priority`, `RuleId`, and `Type`.
4724
- # The `OverrideAction` data type within `ActivatedRule` is used only
4725
- # when submitting an `UpdateRuleGroup` request.
4726
- # `ActivatedRule|OverrideAction` is not applicable and therefore not
4727
- # available for `UpdateWebACL`.
4840
+ # * ActivatedRule: Contains `Action`, `OverrideAction`, `Priority`,
4841
+ # `RuleId`, and `Type`. `ActivatedRule|OverrideAction` applies only
4842
+ # when updating or adding a `RuleGroup` to a `WebACL`. In this case
4843
+ # you do not use `ActivatedRule|Action`. For all other update
4844
+ # requests, `ActivatedRule|Action` is used instead of
4845
+ # `ActivatedRule|OverrideAction`.
4728
4846
  #
4729
4847
  # * WafAction: Contains `Type`
4730
4848
  #
@@ -4941,7 +5059,7 @@ module Aws::WAF
4941
5059
  params: params,
4942
5060
  config: config)
4943
5061
  context[:gem_name] = 'aws-sdk-waf'
4944
- context[:gem_version] = '1.3.0'
5062
+ context[:gem_version] = '1.4.0'
4945
5063
  Seahorse::Client::Request.new(handlers, context)
4946
5064
  end
4947
5065
 
@@ -57,6 +57,8 @@ module Aws::WAF
57
57
  DeleteGeoMatchSetResponse = Shapes::StructureShape.new(name: 'DeleteGeoMatchSetResponse')
58
58
  DeleteIPSetRequest = Shapes::StructureShape.new(name: 'DeleteIPSetRequest')
59
59
  DeleteIPSetResponse = Shapes::StructureShape.new(name: 'DeleteIPSetResponse')
60
+ DeletePermissionPolicyRequest = Shapes::StructureShape.new(name: 'DeletePermissionPolicyRequest')
61
+ DeletePermissionPolicyResponse = Shapes::StructureShape.new(name: 'DeletePermissionPolicyResponse')
60
62
  DeleteRateBasedRuleRequest = Shapes::StructureShape.new(name: 'DeleteRateBasedRuleRequest')
61
63
  DeleteRateBasedRuleResponse = Shapes::StructureShape.new(name: 'DeleteRateBasedRuleResponse')
62
64
  DeleteRegexMatchSetRequest = Shapes::StructureShape.new(name: 'DeleteRegexMatchSetRequest')
@@ -95,6 +97,8 @@ module Aws::WAF
95
97
  GetGeoMatchSetResponse = Shapes::StructureShape.new(name: 'GetGeoMatchSetResponse')
96
98
  GetIPSetRequest = Shapes::StructureShape.new(name: 'GetIPSetRequest')
97
99
  GetIPSetResponse = Shapes::StructureShape.new(name: 'GetIPSetResponse')
100
+ GetPermissionPolicyRequest = Shapes::StructureShape.new(name: 'GetPermissionPolicyRequest')
101
+ GetPermissionPolicyResponse = Shapes::StructureShape.new(name: 'GetPermissionPolicyResponse')
98
102
  GetRateBasedRuleManagedKeysRequest = Shapes::StructureShape.new(name: 'GetRateBasedRuleManagedKeysRequest')
99
103
  GetRateBasedRuleManagedKeysResponse = Shapes::StructureShape.new(name: 'GetRateBasedRuleManagedKeysResponse')
100
104
  GetRateBasedRuleRequest = Shapes::StructureShape.new(name: 'GetRateBasedRuleRequest')
@@ -174,11 +178,14 @@ module Aws::WAF
174
178
  ParameterExceptionField = Shapes::StringShape.new(name: 'ParameterExceptionField')
175
179
  ParameterExceptionParameter = Shapes::StringShape.new(name: 'ParameterExceptionParameter')
176
180
  ParameterExceptionReason = Shapes::StringShape.new(name: 'ParameterExceptionReason')
181
+ PolicyString = Shapes::StringShape.new(name: 'PolicyString')
177
182
  PopulationSize = Shapes::IntegerShape.new(name: 'PopulationSize')
178
183
  PositionalConstraint = Shapes::StringShape.new(name: 'PositionalConstraint')
179
184
  Predicate = Shapes::StructureShape.new(name: 'Predicate')
180
185
  PredicateType = Shapes::StringShape.new(name: 'PredicateType')
181
186
  Predicates = Shapes::ListShape.new(name: 'Predicates')
187
+ PutPermissionPolicyRequest = Shapes::StructureShape.new(name: 'PutPermissionPolicyRequest')
188
+ PutPermissionPolicyResponse = Shapes::StructureShape.new(name: 'PutPermissionPolicyResponse')
182
189
  RateBasedRule = Shapes::StructureShape.new(name: 'RateBasedRule')
183
190
  RateKey = Shapes::StringShape.new(name: 'RateKey')
184
191
  RateLimit = Shapes::IntegerShape.new(name: 'RateLimit')
@@ -196,6 +203,7 @@ module Aws::WAF
196
203
  RegexPatternSetUpdates = Shapes::ListShape.new(name: 'RegexPatternSetUpdates')
197
204
  RegexPatternString = Shapes::StringShape.new(name: 'RegexPatternString')
198
205
  RegexPatternStrings = Shapes::ListShape.new(name: 'RegexPatternStrings')
206
+ ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
199
207
  ResourceId = Shapes::StringShape.new(name: 'ResourceId')
200
208
  ResourceName = Shapes::StringShape.new(name: 'ResourceName')
201
209
  Rule = Shapes::StructureShape.new(name: 'Rule')
@@ -262,6 +270,7 @@ module Aws::WAF
262
270
  WAFInvalidAccountException = Shapes::StructureShape.new(name: 'WAFInvalidAccountException')
263
271
  WAFInvalidOperationException = Shapes::StructureShape.new(name: 'WAFInvalidOperationException')
264
272
  WAFInvalidParameterException = Shapes::StructureShape.new(name: 'WAFInvalidParameterException')
273
+ WAFInvalidPermissionPolicyException = Shapes::StructureShape.new(name: 'WAFInvalidPermissionPolicyException')
265
274
  WAFInvalidRegexPatternException = Shapes::StructureShape.new(name: 'WAFInvalidRegexPatternException')
266
275
  WAFLimitsExceededException = Shapes::StructureShape.new(name: 'WAFLimitsExceededException')
267
276
  WAFNonEmptyEntityException = Shapes::StructureShape.new(name: 'WAFNonEmptyEntityException')
@@ -447,6 +456,11 @@ module Aws::WAF
447
456
  DeleteIPSetResponse.add_member(:change_token, Shapes::ShapeRef.new(shape: ChangeToken, location_name: "ChangeToken"))
448
457
  DeleteIPSetResponse.struct_class = Types::DeleteIPSetResponse
449
458
 
459
+ DeletePermissionPolicyRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
460
+ DeletePermissionPolicyRequest.struct_class = Types::DeletePermissionPolicyRequest
461
+
462
+ DeletePermissionPolicyResponse.struct_class = Types::DeletePermissionPolicyResponse
463
+
450
464
  DeleteRateBasedRuleRequest.add_member(:rule_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "RuleId"))
451
465
  DeleteRateBasedRuleRequest.add_member(:change_token, Shapes::ShapeRef.new(shape: ChangeToken, required: true, location_name: "ChangeToken"))
452
466
  DeleteRateBasedRuleRequest.struct_class = Types::DeleteRateBasedRuleRequest
@@ -566,6 +580,12 @@ module Aws::WAF
566
580
  GetIPSetResponse.add_member(:ip_set, Shapes::ShapeRef.new(shape: IPSet, location_name: "IPSet"))
567
581
  GetIPSetResponse.struct_class = Types::GetIPSetResponse
568
582
 
583
+ GetPermissionPolicyRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
584
+ GetPermissionPolicyRequest.struct_class = Types::GetPermissionPolicyRequest
585
+
586
+ GetPermissionPolicyResponse.add_member(:policy, Shapes::ShapeRef.new(shape: PolicyString, location_name: "Policy"))
587
+ GetPermissionPolicyResponse.struct_class = Types::GetPermissionPolicyResponse
588
+
569
589
  GetRateBasedRuleManagedKeysRequest.add_member(:rule_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "RuleId"))
570
590
  GetRateBasedRuleManagedKeysRequest.add_member(:next_marker, Shapes::ShapeRef.new(shape: NextMarker, location_name: "NextMarker"))
571
591
  GetRateBasedRuleManagedKeysRequest.struct_class = Types::GetRateBasedRuleManagedKeysRequest
@@ -798,6 +818,12 @@ module Aws::WAF
798
818
 
799
819
  Predicates.member = Shapes::ShapeRef.new(shape: Predicate)
800
820
 
821
+ PutPermissionPolicyRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
822
+ PutPermissionPolicyRequest.add_member(:policy, Shapes::ShapeRef.new(shape: PolicyString, required: true, location_name: "Policy"))
823
+ PutPermissionPolicyRequest.struct_class = Types::PutPermissionPolicyRequest
824
+
825
+ PutPermissionPolicyResponse.struct_class = Types::PutPermissionPolicyResponse
826
+
801
827
  RateBasedRule.add_member(:rule_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "RuleId"))
802
828
  RateBasedRule.add_member(:name, Shapes::ShapeRef.new(shape: ResourceName, location_name: "Name"))
803
829
  RateBasedRule.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, location_name: "MetricName"))
@@ -1315,6 +1341,17 @@ module Aws::WAF
1315
1341
  o.errors << Shapes::ShapeRef.new(shape: WAFNonEmptyEntityException)
1316
1342
  end)
1317
1343
 
1344
+ api.add_operation(:delete_permission_policy, Seahorse::Model::Operation.new.tap do |o|
1345
+ o.name = "DeletePermissionPolicy"
1346
+ o.http_method = "POST"
1347
+ o.http_request_uri = "/"
1348
+ o.input = Shapes::ShapeRef.new(shape: DeletePermissionPolicyRequest)
1349
+ o.output = Shapes::ShapeRef.new(shape: DeletePermissionPolicyResponse)
1350
+ o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
1351
+ o.errors << Shapes::ShapeRef.new(shape: WAFStaleDataException)
1352
+ o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
1353
+ end)
1354
+
1318
1355
  api.add_operation(:delete_rate_based_rule, Seahorse::Model::Operation.new.tap do |o|
1319
1356
  o.name = "DeleteRateBasedRule"
1320
1357
  o.http_method = "POST"
@@ -1492,6 +1529,16 @@ module Aws::WAF
1492
1529
  o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
1493
1530
  end)
1494
1531
 
1532
+ api.add_operation(:get_permission_policy, Seahorse::Model::Operation.new.tap do |o|
1533
+ o.name = "GetPermissionPolicy"
1534
+ o.http_method = "POST"
1535
+ o.http_request_uri = "/"
1536
+ o.input = Shapes::ShapeRef.new(shape: GetPermissionPolicyRequest)
1537
+ o.output = Shapes::ShapeRef.new(shape: GetPermissionPolicyResponse)
1538
+ o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
1539
+ o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
1540
+ end)
1541
+
1495
1542
  api.add_operation(:get_rate_based_rule, Seahorse::Model::Operation.new.tap do |o|
1496
1543
  o.name = "GetRateBasedRule"
1497
1544
  o.http_method = "POST"
@@ -1752,6 +1799,18 @@ module Aws::WAF
1752
1799
  o.errors << Shapes::ShapeRef.new(shape: WAFInvalidAccountException)
1753
1800
  end)
1754
1801
 
1802
+ api.add_operation(:put_permission_policy, Seahorse::Model::Operation.new.tap do |o|
1803
+ o.name = "PutPermissionPolicy"
1804
+ o.http_method = "POST"
1805
+ o.http_request_uri = "/"
1806
+ o.input = Shapes::ShapeRef.new(shape: PutPermissionPolicyRequest)
1807
+ o.output = Shapes::ShapeRef.new(shape: PutPermissionPolicyResponse)
1808
+ o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
1809
+ o.errors << Shapes::ShapeRef.new(shape: WAFStaleDataException)
1810
+ o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
1811
+ o.errors << Shapes::ShapeRef.new(shape: WAFInvalidPermissionPolicyException)
1812
+ end)
1813
+
1755
1814
  api.add_operation(:update_byte_match_set, Seahorse::Model::Operation.new.tap do |o|
1756
1815
  o.name = "UpdateByteMatchSet"
1757
1816
  o.http_method = "POST"
@@ -62,9 +62,11 @@ module Aws::WAF
62
62
  # conditions in the rule and then continues to inspect the web
63
63
  # request based on the remaining rules in the web ACL.
64
64
  #
65
- # The `Action` data type within `ActivatedRule` is used only when
66
- # submitting an `UpdateWebACL` request. `ActivatedRule|Action` is not
67
- # applicable and therefore not available for `UpdateRuleGroup`.
65
+ # `ActivatedRule|OverrideAction` applies only when updating or adding
66
+ # a `RuleGroup` to a `WebACL`. In this case you do not use
67
+ # `ActivatedRule|Action`. For all other update requests,
68
+ # `ActivatedRule|Action` is used instead of
69
+ # `ActivatedRule|OverrideAction`.
68
70
  # @return [Types::WafAction]
69
71
  #
70
72
  # @!attribute [rw] override_action
@@ -80,10 +82,11 @@ module Aws::WAF
80
82
  # blocking matching requests, those requests will be counted. You can
81
83
  # view a record of counted requests using GetSampledRequests.
82
84
  #
83
- # The `OverrideAction` data type within `ActivatedRule` is used only
84
- # when submitting an `UpdateRuleGroup` request.
85
- # `ActivatedRule|OverrideAction` is not applicable and therefore not
86
- # available for `UpdateWebACL`.
85
+ # `ActivatedRule|OverrideAction` applies only when updating or adding
86
+ # a `RuleGroup` to a `WebACL`. In this case you do not use
87
+ # `ActivatedRule|Action`. For all other update requests,
88
+ # `ActivatedRule|Action` is used instead of
89
+ # `ActivatedRule|OverrideAction`.
87
90
  # @return [Types::WafOverrideAction]
88
91
  #
89
92
  # @!attribute [rw] type
@@ -1144,6 +1147,31 @@ module Aws::WAF
1144
1147
  include Aws::Structure
1145
1148
  end
1146
1149
 
1150
+ # @note When making an API call, you may pass DeletePermissionPolicyRequest
1151
+ # data as a hash:
1152
+ #
1153
+ # {
1154
+ # resource_arn: "ResourceArn", # required
1155
+ # }
1156
+ #
1157
+ # @!attribute [rw] resource_arn
1158
+ # The Amazon Resource Name (ARN) of the RuleGroup from which you want
1159
+ # to delete the policy.
1160
+ #
1161
+ # The user making the request must be the owner of the RuleGroup.
1162
+ # @return [String]
1163
+ #
1164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeletePermissionPolicyRequest AWS API Documentation
1165
+ #
1166
+ class DeletePermissionPolicyRequest < Struct.new(
1167
+ :resource_arn)
1168
+ include Aws::Structure
1169
+ end
1170
+
1171
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeletePermissionPolicyResponse AWS API Documentation
1172
+ #
1173
+ class DeletePermissionPolicyResponse < Aws::EmptyStructure; end
1174
+
1147
1175
  # @note When making an API call, you may pass DeleteRateBasedRuleRequest
1148
1176
  # data as a hash:
1149
1177
  #
@@ -1833,6 +1861,36 @@ module Aws::WAF
1833
1861
  include Aws::Structure
1834
1862
  end
1835
1863
 
1864
+ # @note When making an API call, you may pass GetPermissionPolicyRequest
1865
+ # data as a hash:
1866
+ #
1867
+ # {
1868
+ # resource_arn: "ResourceArn", # required
1869
+ # }
1870
+ #
1871
+ # @!attribute [rw] resource_arn
1872
+ # The Amazon Resource Name (ARN) of the RuleGroup for which you want
1873
+ # to get the policy.
1874
+ # @return [String]
1875
+ #
1876
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetPermissionPolicyRequest AWS API Documentation
1877
+ #
1878
+ class GetPermissionPolicyRequest < Struct.new(
1879
+ :resource_arn)
1880
+ include Aws::Structure
1881
+ end
1882
+
1883
+ # @!attribute [rw] policy
1884
+ # The IAM policy attached to the specified RuleGroup.
1885
+ # @return [String]
1886
+ #
1887
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetPermissionPolicyResponse AWS API Documentation
1888
+ #
1889
+ class GetPermissionPolicyResponse < Struct.new(
1890
+ :policy)
1891
+ include Aws::Structure
1892
+ end
1893
+
1836
1894
  # @note When making an API call, you may pass GetRateBasedRuleManagedKeysRequest
1837
1895
  # data as a hash:
1838
1896
  #
@@ -3356,6 +3414,35 @@ module Aws::WAF
3356
3414
  include Aws::Structure
3357
3415
  end
3358
3416
 
3417
+ # @note When making an API call, you may pass PutPermissionPolicyRequest
3418
+ # data as a hash:
3419
+ #
3420
+ # {
3421
+ # resource_arn: "ResourceArn", # required
3422
+ # policy: "PolicyString", # required
3423
+ # }
3424
+ #
3425
+ # @!attribute [rw] resource_arn
3426
+ # The Amazon Resource Name (ARN) of the RuleGroup to which you want to
3427
+ # attach the policy.
3428
+ # @return [String]
3429
+ #
3430
+ # @!attribute [rw] policy
3431
+ # The policy to attach to the specified RuleGroup.
3432
+ # @return [String]
3433
+ #
3434
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/PutPermissionPolicyRequest AWS API Documentation
3435
+ #
3436
+ class PutPermissionPolicyRequest < Struct.new(
3437
+ :resource_arn,
3438
+ :policy)
3439
+ include Aws::Structure
3440
+ end
3441
+
3442
+ # @see http://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/PutPermissionPolicyResponse AWS API Documentation
3443
+ #
3444
+ class PutPermissionPolicyResponse < Aws::EmptyStructure; end
3445
+
3359
3446
  # A `RateBasedRule` is identical to a regular Rule, with one addition: a
3360
3447
  # `RateBasedRule` counts the number of requests that arrive from a
3361
3448
  # specified IP address every five minutes. For example, based on recent
@@ -4965,9 +5052,11 @@ module Aws::WAF
4965
5052
  #
4966
5053
  # You can only insert `REGULAR` rules into a rule group.
4967
5054
  #
4968
- # The `Action` data type within `ActivatedRule` is used only when
4969
- # submitting an `UpdateWebACL` request. `ActivatedRule|Action` is not
4970
- # applicable and therefore not available for `UpdateRuleGroup`.
5055
+ # `ActivatedRule|OverrideAction` applies only when updating or adding
5056
+ # a `RuleGroup` to a `WebACL`. In this case you do not use
5057
+ # `ActivatedRule|Action`. For all other update requests,
5058
+ # `ActivatedRule|Action` is used instead of
5059
+ # `ActivatedRule|OverrideAction`.
4971
5060
  # @return [Array<Types::RuleGroupUpdate>]
4972
5061
  #
4973
5062
  # @!attribute [rw] change_token
@@ -5241,11 +5330,12 @@ module Aws::WAF
5241
5330
  #
5242
5331
  # * WebACLUpdate: Contains `Action` and `ActivatedRule`
5243
5332
  #
5244
- # * ActivatedRule: Contains `Action`, `Priority`, `RuleId`, and
5245
- # `Type`. The `OverrideAction` data type within `ActivatedRule` is
5246
- # used only when submitting an `UpdateRuleGroup` request.
5247
- # `ActivatedRule|OverrideAction` is not applicable and therefore not
5248
- # available for `UpdateWebACL`.
5333
+ # * ActivatedRule: Contains `Action`, `OverrideAction`, `Priority`,
5334
+ # `RuleId`, and `Type`. `ActivatedRule|OverrideAction` applies only
5335
+ # when updating or adding a `RuleGroup` to a `WebACL`. In this case
5336
+ # you do not use `ActivatedRule|Action`. For all other update
5337
+ # requests, `ActivatedRule|Action` is used instead of
5338
+ # `ActivatedRule|OverrideAction`.
5249
5339
  #
5250
5340
  # * WafAction: Contains `Type`
5251
5341
  # @return [Array<Types::WebACLUpdate>]
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.3.0
4
+ version: 1.4.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: 2017-11-30 00:00:00.000000000 Z
11
+ date: 2018-02-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core