aws-sdk-waf 1.3.0 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
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