aws-sdk-shield 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/aws-sdk-shield.rb +1 -1
- data/lib/aws-sdk-shield/client.rb +297 -1
- data/lib/aws-sdk-shield/client_api.rb +187 -0
- data/lib/aws-sdk-shield/types.rb +245 -1
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ed949de8a54dd0b10959353797d3113b96701378
|
|
4
|
+
data.tar.gz: 45de422455469ab5a4ec03dae155026a10047db7
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: '009e607231d1542124b50f8b1c7e11f6a2c77cdcb9ebdfed5b47be1e9fee8ad6364f6a78976183a815e01c92210f97f1e3d6d5ee3c9a133da7c4adf6a13d108a'
|
|
7
|
+
data.tar.gz: 703c885a150aee001d02269b5a7e0682e86a67cb1945b1ef03669afdebaad5d3075be46f64ceac433b4d6c6c0ef8960ccaf90197b2a8de311103729b95c9f1a1
|
data/lib/aws-sdk-shield.rb
CHANGED
|
@@ -155,10 +155,126 @@ module Aws::Shield
|
|
|
155
155
|
|
|
156
156
|
# @!group API Operations
|
|
157
157
|
|
|
158
|
+
# Authorizes the DDoS Response team (DRT) to access the specified Amazon
|
|
159
|
+
# S3 bucket containing your flow logs. You can associate up to 10 Amazon
|
|
160
|
+
# S3 buckets with your subscription.
|
|
161
|
+
#
|
|
162
|
+
# To use the services of the DRT and make an `AssociateDRTLogBucket`
|
|
163
|
+
# request, you must be subscribed to the [Business Support plan][1] or
|
|
164
|
+
# the [Enterprise Support plan][2].
|
|
165
|
+
#
|
|
166
|
+
#
|
|
167
|
+
#
|
|
168
|
+
# [1]: https://aws.amazon.com/premiumsupport/business-support/
|
|
169
|
+
# [2]: https://aws.amazon.com/premiumsupport/enterprise-support/
|
|
170
|
+
#
|
|
171
|
+
# @option params [required, String] :log_bucket
|
|
172
|
+
# The Amazon S3 bucket that contains your flow logs.
|
|
173
|
+
#
|
|
174
|
+
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
|
175
|
+
#
|
|
176
|
+
# @example Request syntax with placeholder values
|
|
177
|
+
#
|
|
178
|
+
# resp = client.associate_drt_log_bucket({
|
|
179
|
+
# log_bucket: "LogBucket", # required
|
|
180
|
+
# })
|
|
181
|
+
#
|
|
182
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateDRTLogBucket AWS API Documentation
|
|
183
|
+
#
|
|
184
|
+
# @overload associate_drt_log_bucket(params = {})
|
|
185
|
+
# @param [Hash] params ({})
|
|
186
|
+
def associate_drt_log_bucket(params = {}, options = {})
|
|
187
|
+
req = build_request(:associate_drt_log_bucket, params)
|
|
188
|
+
req.send_request(options)
|
|
189
|
+
end
|
|
190
|
+
|
|
191
|
+
# Authorizes the DDoS Response team (DRT), using the specified role, to
|
|
192
|
+
# access your AWS account to assist with DDoS attack mitigation during
|
|
193
|
+
# potential attacks. This enables the DRT to inspect your AWS WAF
|
|
194
|
+
# configuration and create or update AWS WAF rules and web ACLs.
|
|
195
|
+
#
|
|
196
|
+
# You can associate only one `RoleArn` with your subscription. If you
|
|
197
|
+
# submit an `AssociateDRTRole` request for an account that already has
|
|
198
|
+
# an associated role, the new `RoleArn` will replace the existing
|
|
199
|
+
# `RoleArn`.
|
|
200
|
+
#
|
|
201
|
+
# Prior to making the `AssociateDRTRole` request, you must attach the
|
|
202
|
+
# [AWSShieldDRTAccessPolicy][1] managed policy to the role you will
|
|
203
|
+
# specify in the request. For more information see [Attaching and
|
|
204
|
+
# Detaching IAM Policies](
|
|
205
|
+
# https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html).
|
|
206
|
+
# The role must also trust the service principal `
|
|
207
|
+
# drt.shield.amazonaws.com`. For more information, see [IAM JSON Policy
|
|
208
|
+
# Elements: Principal][2].
|
|
209
|
+
#
|
|
210
|
+
# The DRT will have access only to your AWS WAF and Shield resources. By
|
|
211
|
+
# submitting this request, you authorize the DRT to inspect your AWS WAF
|
|
212
|
+
# and Shield configuration and create and update AWS WAF rules and web
|
|
213
|
+
# ACLs on your behalf. The DRT takes these actions only if explicitly
|
|
214
|
+
# authorized by you.
|
|
215
|
+
#
|
|
216
|
+
# You must have the `iam:PassRole` permission to make an
|
|
217
|
+
# `AssociateDRTRole` request. For more information, see [Granting a User
|
|
218
|
+
# Permissions to Pass a Role to an AWS Service][3].
|
|
219
|
+
#
|
|
220
|
+
# To use the services of the DRT and make an `AssociateDRTRole` request,
|
|
221
|
+
# you must be subscribed to the [Business Support plan][4] or the
|
|
222
|
+
# [Enterprise Support plan][5].
|
|
223
|
+
#
|
|
224
|
+
#
|
|
225
|
+
#
|
|
226
|
+
# [1]: https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/service-role/AWSShieldDRTAccessPolicy
|
|
227
|
+
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html
|
|
228
|
+
# [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html
|
|
229
|
+
# [4]: https://aws.amazon.com/premiumsupport/business-support/
|
|
230
|
+
# [5]: https://aws.amazon.com/premiumsupport/enterprise-support/
|
|
231
|
+
#
|
|
232
|
+
# @option params [required, String] :role_arn
|
|
233
|
+
# The Amazon Resource Name (ARN) of the role the DRT will use to access
|
|
234
|
+
# your AWS account.
|
|
235
|
+
#
|
|
236
|
+
# Prior to making the `AssociateDRTRole` request, you must attach the
|
|
237
|
+
# [AWSShieldDRTAccessPolicy][1] managed policy to this role. For more
|
|
238
|
+
# information see [Attaching and Detaching IAM Policies](
|
|
239
|
+
# https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html).
|
|
240
|
+
#
|
|
241
|
+
#
|
|
242
|
+
#
|
|
243
|
+
# [1]: https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/service-role/AWSShieldDRTAccessPolicy
|
|
244
|
+
#
|
|
245
|
+
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
|
246
|
+
#
|
|
247
|
+
# @example Request syntax with placeholder values
|
|
248
|
+
#
|
|
249
|
+
# resp = client.associate_drt_role({
|
|
250
|
+
# role_arn: "RoleArn", # required
|
|
251
|
+
# })
|
|
252
|
+
#
|
|
253
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateDRTRole AWS API Documentation
|
|
254
|
+
#
|
|
255
|
+
# @overload associate_drt_role(params = {})
|
|
256
|
+
# @param [Hash] params ({})
|
|
257
|
+
def associate_drt_role(params = {}, options = {})
|
|
258
|
+
req = build_request(:associate_drt_role, params)
|
|
259
|
+
req.send_request(options)
|
|
260
|
+
end
|
|
261
|
+
|
|
158
262
|
# Enables AWS Shield Advanced for a specific AWS resource. The resource
|
|
159
263
|
# can be an Amazon CloudFront distribution, Elastic Load Balancing load
|
|
160
264
|
# balancer, Elastic IP Address, or an Amazon Route 53 hosted zone.
|
|
161
265
|
#
|
|
266
|
+
# You can add protection to only a single resource with each
|
|
267
|
+
# CreateProtection request. If you want to add protection to multiple
|
|
268
|
+
# resources at once, use the [AWS WAF console][1]. For more information
|
|
269
|
+
# see [Getting Started with AWS Shield Advanced][2] and [Add AWS Shield
|
|
270
|
+
# Advanced Protection to more AWS Resources][3].
|
|
271
|
+
#
|
|
272
|
+
#
|
|
273
|
+
#
|
|
274
|
+
# [1]: https://console.aws.amazon.com/waf/
|
|
275
|
+
# [2]: https://docs.aws.amazon.com/waf/latest/developerguide/getting-started-ddos.html
|
|
276
|
+
# [3]: https://docs.aws.amazon.com/waf/latest/developerguide/configure-new-protection.html
|
|
277
|
+
#
|
|
162
278
|
# @option params [required, String] :name
|
|
163
279
|
# Friendly name for the `Protection` you are creating.
|
|
164
280
|
#
|
|
@@ -210,6 +326,21 @@ module Aws::Shield
|
|
|
210
326
|
|
|
211
327
|
# Activates AWS Shield Advanced for an account.
|
|
212
328
|
#
|
|
329
|
+
# As part of this request you can specify `EmergencySettings` that
|
|
330
|
+
# automaticaly grant the DDoS response team (DRT) needed permissions to
|
|
331
|
+
# assist you during a suspected DDoS attack. For more information see
|
|
332
|
+
# [Authorize the DDoS Response Team to Create Rules and Web ACLs on Your
|
|
333
|
+
# Behalf][1].
|
|
334
|
+
#
|
|
335
|
+
# When you initally create a subscription, your subscription is set to
|
|
336
|
+
# be automatically renewed at the end of the existing subscription
|
|
337
|
+
# period. You can change this by submitting an `UpdateSubscription`
|
|
338
|
+
# request.
|
|
339
|
+
#
|
|
340
|
+
#
|
|
341
|
+
#
|
|
342
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/authorize-DRT.html
|
|
343
|
+
#
|
|
213
344
|
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
|
214
345
|
#
|
|
215
346
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateSubscription AWS API Documentation
|
|
@@ -325,6 +456,51 @@ module Aws::Shield
|
|
|
325
456
|
req.send_request(options)
|
|
326
457
|
end
|
|
327
458
|
|
|
459
|
+
# Returns the current role and list of Amazon S3 log buckets used by the
|
|
460
|
+
# DDoS Response team (DRT) to access your AWS account while assisting
|
|
461
|
+
# with attack mitigation.
|
|
462
|
+
#
|
|
463
|
+
# @return [Types::DescribeDRTAccessResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
464
|
+
#
|
|
465
|
+
# * {Types::DescribeDRTAccessResponse#role_arn #role_arn} => String
|
|
466
|
+
# * {Types::DescribeDRTAccessResponse#log_bucket_list #log_bucket_list} => Array<String>
|
|
467
|
+
#
|
|
468
|
+
# @example Response structure
|
|
469
|
+
#
|
|
470
|
+
# resp.role_arn #=> String
|
|
471
|
+
# resp.log_bucket_list #=> Array
|
|
472
|
+
# resp.log_bucket_list[0] #=> String
|
|
473
|
+
#
|
|
474
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeDRTAccess AWS API Documentation
|
|
475
|
+
#
|
|
476
|
+
# @overload describe_drt_access(params = {})
|
|
477
|
+
# @param [Hash] params ({})
|
|
478
|
+
def describe_drt_access(params = {}, options = {})
|
|
479
|
+
req = build_request(:describe_drt_access, params)
|
|
480
|
+
req.send_request(options)
|
|
481
|
+
end
|
|
482
|
+
|
|
483
|
+
# Lists the email addresses that the DRT can use to contact you during a
|
|
484
|
+
# suspected attack.
|
|
485
|
+
#
|
|
486
|
+
# @return [Types::DescribeEmergencyContactSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
487
|
+
#
|
|
488
|
+
# * {Types::DescribeEmergencyContactSettingsResponse#emergency_contact_list #emergency_contact_list} => Array<Types::EmergencyContact>
|
|
489
|
+
#
|
|
490
|
+
# @example Response structure
|
|
491
|
+
#
|
|
492
|
+
# resp.emergency_contact_list #=> Array
|
|
493
|
+
# resp.emergency_contact_list[0].email_address #=> String
|
|
494
|
+
#
|
|
495
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeEmergencyContactSettings AWS API Documentation
|
|
496
|
+
#
|
|
497
|
+
# @overload describe_emergency_contact_settings(params = {})
|
|
498
|
+
# @param [Hash] params ({})
|
|
499
|
+
def describe_emergency_contact_settings(params = {}, options = {})
|
|
500
|
+
req = build_request(:describe_emergency_contact_settings, params)
|
|
501
|
+
req.send_request(options)
|
|
502
|
+
end
|
|
503
|
+
|
|
328
504
|
# Lists the details of a Protection object.
|
|
329
505
|
#
|
|
330
506
|
# @option params [required, String] :protection_id
|
|
@@ -366,7 +542,12 @@ module Aws::Shield
|
|
|
366
542
|
# @example Response structure
|
|
367
543
|
#
|
|
368
544
|
# resp.subscription.start_time #=> Time
|
|
545
|
+
# resp.subscription.end_time #=> Time
|
|
369
546
|
# resp.subscription.time_commitment_in_seconds #=> Integer
|
|
547
|
+
# resp.subscription.auto_renew #=> String, one of "ENABLED", "DISABLED"
|
|
548
|
+
# resp.subscription.limits #=> Array
|
|
549
|
+
# resp.subscription.limits[0].type #=> String
|
|
550
|
+
# resp.subscription.limits[0].max #=> Integer
|
|
370
551
|
#
|
|
371
552
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeSubscription AWS API Documentation
|
|
372
553
|
#
|
|
@@ -377,6 +558,65 @@ module Aws::Shield
|
|
|
377
558
|
req.send_request(options)
|
|
378
559
|
end
|
|
379
560
|
|
|
561
|
+
# Removes the DDoS Response team's (DRT) access to the specified Amazon
|
|
562
|
+
# S3 bucket containing your flow logs.
|
|
563
|
+
#
|
|
564
|
+
# To make a `DisassociateDRTLogBucket` request, you must be subscribed
|
|
565
|
+
# to the [Business Support plan][1] or the [Enterprise Support plan][2].
|
|
566
|
+
# However, if you are not subscribed to one of these support plans, but
|
|
567
|
+
# had been previously and had granted the DRT access to your account,
|
|
568
|
+
# you can submit a `DisassociateDRTLogBucket` request to remove this
|
|
569
|
+
# access.
|
|
570
|
+
#
|
|
571
|
+
#
|
|
572
|
+
#
|
|
573
|
+
# [1]: https://aws.amazon.com/premiumsupport/business-support/
|
|
574
|
+
# [2]: https://aws.amazon.com/premiumsupport/enterprise-support/
|
|
575
|
+
#
|
|
576
|
+
# @option params [required, String] :log_bucket
|
|
577
|
+
# The Amazon S3 bucket that contains your flow logs.
|
|
578
|
+
#
|
|
579
|
+
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
|
580
|
+
#
|
|
581
|
+
# @example Request syntax with placeholder values
|
|
582
|
+
#
|
|
583
|
+
# resp = client.disassociate_drt_log_bucket({
|
|
584
|
+
# log_bucket: "LogBucket", # required
|
|
585
|
+
# })
|
|
586
|
+
#
|
|
587
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateDRTLogBucket AWS API Documentation
|
|
588
|
+
#
|
|
589
|
+
# @overload disassociate_drt_log_bucket(params = {})
|
|
590
|
+
# @param [Hash] params ({})
|
|
591
|
+
def disassociate_drt_log_bucket(params = {}, options = {})
|
|
592
|
+
req = build_request(:disassociate_drt_log_bucket, params)
|
|
593
|
+
req.send_request(options)
|
|
594
|
+
end
|
|
595
|
+
|
|
596
|
+
# Removes the DDoS Response team's (DRT) access to your AWS account.
|
|
597
|
+
#
|
|
598
|
+
# To make a `DisassociateDRTRole` request, you must be subscribed to the
|
|
599
|
+
# [Business Support plan][1] or the [Enterprise Support plan][2].
|
|
600
|
+
# However, if you are not subscribed to one of these support plans, but
|
|
601
|
+
# had been previously and had granted the DRT access to your account,
|
|
602
|
+
# you can submit a `DisassociateDRTRole` request to remove this access.
|
|
603
|
+
#
|
|
604
|
+
#
|
|
605
|
+
#
|
|
606
|
+
# [1]: https://aws.amazon.com/premiumsupport/business-support/
|
|
607
|
+
# [2]: https://aws.amazon.com/premiumsupport/enterprise-support/
|
|
608
|
+
#
|
|
609
|
+
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
|
610
|
+
#
|
|
611
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateDRTRole AWS API Documentation
|
|
612
|
+
#
|
|
613
|
+
# @overload disassociate_drt_role(params = {})
|
|
614
|
+
# @param [Hash] params ({})
|
|
615
|
+
def disassociate_drt_role(params = {}, options = {})
|
|
616
|
+
req = build_request(:disassociate_drt_role, params)
|
|
617
|
+
req.send_request(options)
|
|
618
|
+
end
|
|
619
|
+
|
|
380
620
|
# Returns the `SubscriptionState`, either `Active` or `Inactive`.
|
|
381
621
|
#
|
|
382
622
|
# @return [Types::GetSubscriptionStateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
@@ -512,6 +752,62 @@ module Aws::Shield
|
|
|
512
752
|
req.send_request(options)
|
|
513
753
|
end
|
|
514
754
|
|
|
755
|
+
# Updates the details of the list of email addresses that the DRT can
|
|
756
|
+
# use to contact you during a suspected attack.
|
|
757
|
+
#
|
|
758
|
+
# @option params [Array<Types::EmergencyContact>] :emergency_contact_list
|
|
759
|
+
# A list of email addresses that the DRT can use to contact you during a
|
|
760
|
+
# suspected attack.
|
|
761
|
+
#
|
|
762
|
+
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
|
763
|
+
#
|
|
764
|
+
# @example Request syntax with placeholder values
|
|
765
|
+
#
|
|
766
|
+
# resp = client.update_emergency_contact_settings({
|
|
767
|
+
# emergency_contact_list: [
|
|
768
|
+
# {
|
|
769
|
+
# email_address: "EmailAddress", # required
|
|
770
|
+
# },
|
|
771
|
+
# ],
|
|
772
|
+
# })
|
|
773
|
+
#
|
|
774
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateEmergencyContactSettings AWS API Documentation
|
|
775
|
+
#
|
|
776
|
+
# @overload update_emergency_contact_settings(params = {})
|
|
777
|
+
# @param [Hash] params ({})
|
|
778
|
+
def update_emergency_contact_settings(params = {}, options = {})
|
|
779
|
+
req = build_request(:update_emergency_contact_settings, params)
|
|
780
|
+
req.send_request(options)
|
|
781
|
+
end
|
|
782
|
+
|
|
783
|
+
# Updates the details of an existing subscription. Only enter values for
|
|
784
|
+
# parameters you want to change. Empty parameters are not updated.
|
|
785
|
+
#
|
|
786
|
+
# @option params [String] :auto_renew
|
|
787
|
+
# When you initally create a subscription, `AutoRenew` is set to
|
|
788
|
+
# `ENABLED`. If `ENABLED`, the subscription will be automatically
|
|
789
|
+
# renewed at the end of the existing subscription period. You can change
|
|
790
|
+
# this by submitting an `UpdateSubscription` request. If the
|
|
791
|
+
# `UpdateSubscription` request does not included a value for
|
|
792
|
+
# `AutoRenew`, the existing value for `AutoRenew` remains unchanged.
|
|
793
|
+
#
|
|
794
|
+
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
|
795
|
+
#
|
|
796
|
+
# @example Request syntax with placeholder values
|
|
797
|
+
#
|
|
798
|
+
# resp = client.update_subscription({
|
|
799
|
+
# auto_renew: "ENABLED", # accepts ENABLED, DISABLED
|
|
800
|
+
# })
|
|
801
|
+
#
|
|
802
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateSubscription AWS API Documentation
|
|
803
|
+
#
|
|
804
|
+
# @overload update_subscription(params = {})
|
|
805
|
+
# @param [Hash] params ({})
|
|
806
|
+
def update_subscription(params = {}, options = {})
|
|
807
|
+
req = build_request(:update_subscription, params)
|
|
808
|
+
req.send_request(options)
|
|
809
|
+
end
|
|
810
|
+
|
|
515
811
|
# @!endgroup
|
|
516
812
|
|
|
517
813
|
# @param params ({})
|
|
@@ -525,7 +821,7 @@ module Aws::Shield
|
|
|
525
821
|
params: params,
|
|
526
822
|
config: config)
|
|
527
823
|
context[:gem_name] = 'aws-sdk-shield'
|
|
528
|
-
context[:gem_version] = '1.
|
|
824
|
+
context[:gem_version] = '1.2.0'
|
|
529
825
|
Seahorse::Client::Request.new(handlers, context)
|
|
530
826
|
end
|
|
531
827
|
|
|
@@ -11,6 +11,11 @@ module Aws::Shield
|
|
|
11
11
|
|
|
12
12
|
include Seahorse::Model
|
|
13
13
|
|
|
14
|
+
AccessDeniedForDependencyException = Shapes::StructureShape.new(name: 'AccessDeniedForDependencyException')
|
|
15
|
+
AssociateDRTLogBucketRequest = Shapes::StructureShape.new(name: 'AssociateDRTLogBucketRequest')
|
|
16
|
+
AssociateDRTLogBucketResponse = Shapes::StructureShape.new(name: 'AssociateDRTLogBucketResponse')
|
|
17
|
+
AssociateDRTRoleRequest = Shapes::StructureShape.new(name: 'AssociateDRTRoleRequest')
|
|
18
|
+
AssociateDRTRoleResponse = Shapes::StructureShape.new(name: 'AssociateDRTRoleResponse')
|
|
14
19
|
AttackDetail = Shapes::StructureShape.new(name: 'AttackDetail')
|
|
15
20
|
AttackId = Shapes::StringShape.new(name: 'AttackId')
|
|
16
21
|
AttackLayer = Shapes::StringShape.new(name: 'AttackLayer')
|
|
@@ -22,6 +27,7 @@ module Aws::Shield
|
|
|
22
27
|
AttackTimestamp = Shapes::TimestampShape.new(name: 'AttackTimestamp')
|
|
23
28
|
AttackVectorDescription = Shapes::StructureShape.new(name: 'AttackVectorDescription')
|
|
24
29
|
AttackVectorDescriptionList = Shapes::ListShape.new(name: 'AttackVectorDescriptionList')
|
|
30
|
+
AutoRenew = Shapes::StringShape.new(name: 'AutoRenew')
|
|
25
31
|
Contributor = Shapes::StructureShape.new(name: 'Contributor')
|
|
26
32
|
CreateProtectionRequest = Shapes::StructureShape.new(name: 'CreateProtectionRequest')
|
|
27
33
|
CreateProtectionResponse = Shapes::StructureShape.new(name: 'CreateProtectionResponse')
|
|
@@ -33,31 +39,48 @@ module Aws::Shield
|
|
|
33
39
|
DeleteSubscriptionResponse = Shapes::StructureShape.new(name: 'DeleteSubscriptionResponse')
|
|
34
40
|
DescribeAttackRequest = Shapes::StructureShape.new(name: 'DescribeAttackRequest')
|
|
35
41
|
DescribeAttackResponse = Shapes::StructureShape.new(name: 'DescribeAttackResponse')
|
|
42
|
+
DescribeDRTAccessRequest = Shapes::StructureShape.new(name: 'DescribeDRTAccessRequest')
|
|
43
|
+
DescribeDRTAccessResponse = Shapes::StructureShape.new(name: 'DescribeDRTAccessResponse')
|
|
44
|
+
DescribeEmergencyContactSettingsRequest = Shapes::StructureShape.new(name: 'DescribeEmergencyContactSettingsRequest')
|
|
45
|
+
DescribeEmergencyContactSettingsResponse = Shapes::StructureShape.new(name: 'DescribeEmergencyContactSettingsResponse')
|
|
36
46
|
DescribeProtectionRequest = Shapes::StructureShape.new(name: 'DescribeProtectionRequest')
|
|
37
47
|
DescribeProtectionResponse = Shapes::StructureShape.new(name: 'DescribeProtectionResponse')
|
|
38
48
|
DescribeSubscriptionRequest = Shapes::StructureShape.new(name: 'DescribeSubscriptionRequest')
|
|
39
49
|
DescribeSubscriptionResponse = Shapes::StructureShape.new(name: 'DescribeSubscriptionResponse')
|
|
50
|
+
DisassociateDRTLogBucketRequest = Shapes::StructureShape.new(name: 'DisassociateDRTLogBucketRequest')
|
|
51
|
+
DisassociateDRTLogBucketResponse = Shapes::StructureShape.new(name: 'DisassociateDRTLogBucketResponse')
|
|
52
|
+
DisassociateDRTRoleRequest = Shapes::StructureShape.new(name: 'DisassociateDRTRoleRequest')
|
|
53
|
+
DisassociateDRTRoleResponse = Shapes::StructureShape.new(name: 'DisassociateDRTRoleResponse')
|
|
40
54
|
Double = Shapes::FloatShape.new(name: 'Double')
|
|
41
55
|
DurationInSeconds = Shapes::IntegerShape.new(name: 'DurationInSeconds')
|
|
56
|
+
EmailAddress = Shapes::StringShape.new(name: 'EmailAddress')
|
|
57
|
+
EmergencyContact = Shapes::StructureShape.new(name: 'EmergencyContact')
|
|
58
|
+
EmergencyContactList = Shapes::ListShape.new(name: 'EmergencyContactList')
|
|
42
59
|
GetSubscriptionStateRequest = Shapes::StructureShape.new(name: 'GetSubscriptionStateRequest')
|
|
43
60
|
GetSubscriptionStateResponse = Shapes::StructureShape.new(name: 'GetSubscriptionStateResponse')
|
|
44
61
|
Integer = Shapes::IntegerShape.new(name: 'Integer')
|
|
45
62
|
InternalErrorException = Shapes::StructureShape.new(name: 'InternalErrorException')
|
|
46
63
|
InvalidOperationException = Shapes::StructureShape.new(name: 'InvalidOperationException')
|
|
64
|
+
InvalidPaginationTokenException = Shapes::StructureShape.new(name: 'InvalidPaginationTokenException')
|
|
47
65
|
InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
|
|
48
66
|
InvalidResourceException = Shapes::StructureShape.new(name: 'InvalidResourceException')
|
|
67
|
+
Limit = Shapes::StructureShape.new(name: 'Limit')
|
|
49
68
|
LimitNumber = Shapes::IntegerShape.new(name: 'LimitNumber')
|
|
50
69
|
LimitType = Shapes::StringShape.new(name: 'LimitType')
|
|
70
|
+
Limits = Shapes::ListShape.new(name: 'Limits')
|
|
51
71
|
LimitsExceededException = Shapes::StructureShape.new(name: 'LimitsExceededException')
|
|
52
72
|
ListAttacksRequest = Shapes::StructureShape.new(name: 'ListAttacksRequest')
|
|
53
73
|
ListAttacksResponse = Shapes::StructureShape.new(name: 'ListAttacksResponse')
|
|
54
74
|
ListProtectionsRequest = Shapes::StructureShape.new(name: 'ListProtectionsRequest')
|
|
55
75
|
ListProtectionsResponse = Shapes::StructureShape.new(name: 'ListProtectionsResponse')
|
|
56
76
|
LockedSubscriptionException = Shapes::StructureShape.new(name: 'LockedSubscriptionException')
|
|
77
|
+
LogBucket = Shapes::StringShape.new(name: 'LogBucket')
|
|
78
|
+
LogBucketList = Shapes::ListShape.new(name: 'LogBucketList')
|
|
57
79
|
Long = Shapes::IntegerShape.new(name: 'Long')
|
|
58
80
|
MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
|
|
59
81
|
Mitigation = Shapes::StructureShape.new(name: 'Mitigation')
|
|
60
82
|
MitigationList = Shapes::ListShape.new(name: 'MitigationList')
|
|
83
|
+
NoAssociatedRoleException = Shapes::StructureShape.new(name: 'NoAssociatedRoleException')
|
|
61
84
|
OptimisticLockException = Shapes::StructureShape.new(name: 'OptimisticLockException')
|
|
62
85
|
Protection = Shapes::StructureShape.new(name: 'Protection')
|
|
63
86
|
ProtectionId = Shapes::StringShape.new(name: 'ProtectionId')
|
|
@@ -67,6 +90,7 @@ module Aws::Shield
|
|
|
67
90
|
ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
|
|
68
91
|
ResourceArnFilterList = Shapes::ListShape.new(name: 'ResourceArnFilterList')
|
|
69
92
|
ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
|
|
93
|
+
RoleArn = Shapes::StringShape.new(name: 'RoleArn')
|
|
70
94
|
String = Shapes::StringShape.new(name: 'String')
|
|
71
95
|
SubResourceSummary = Shapes::StructureShape.new(name: 'SubResourceSummary')
|
|
72
96
|
SubResourceSummaryList = Shapes::ListShape.new(name: 'SubResourceSummaryList')
|
|
@@ -82,8 +106,22 @@ module Aws::Shield
|
|
|
82
106
|
Token = Shapes::StringShape.new(name: 'Token')
|
|
83
107
|
TopContributors = Shapes::ListShape.new(name: 'TopContributors')
|
|
84
108
|
Unit = Shapes::StringShape.new(name: 'Unit')
|
|
109
|
+
UpdateEmergencyContactSettingsRequest = Shapes::StructureShape.new(name: 'UpdateEmergencyContactSettingsRequest')
|
|
110
|
+
UpdateEmergencyContactSettingsResponse = Shapes::StructureShape.new(name: 'UpdateEmergencyContactSettingsResponse')
|
|
111
|
+
UpdateSubscriptionRequest = Shapes::StructureShape.new(name: 'UpdateSubscriptionRequest')
|
|
112
|
+
UpdateSubscriptionResponse = Shapes::StructureShape.new(name: 'UpdateSubscriptionResponse')
|
|
85
113
|
errorMessage = Shapes::StringShape.new(name: 'errorMessage')
|
|
86
114
|
|
|
115
|
+
AssociateDRTLogBucketRequest.add_member(:log_bucket, Shapes::ShapeRef.new(shape: LogBucket, required: true, location_name: "LogBucket"))
|
|
116
|
+
AssociateDRTLogBucketRequest.struct_class = Types::AssociateDRTLogBucketRequest
|
|
117
|
+
|
|
118
|
+
AssociateDRTLogBucketResponse.struct_class = Types::AssociateDRTLogBucketResponse
|
|
119
|
+
|
|
120
|
+
AssociateDRTRoleRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "RoleArn"))
|
|
121
|
+
AssociateDRTRoleRequest.struct_class = Types::AssociateDRTRoleRequest
|
|
122
|
+
|
|
123
|
+
AssociateDRTRoleResponse.struct_class = Types::AssociateDRTRoleResponse
|
|
124
|
+
|
|
87
125
|
AttackDetail.add_member(:attack_id, Shapes::ShapeRef.new(shape: AttackId, location_name: "AttackId"))
|
|
88
126
|
AttackDetail.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "ResourceArn"))
|
|
89
127
|
AttackDetail.add_member(:sub_resources, Shapes::ShapeRef.new(shape: SubResourceSummaryList, location_name: "SubResources"))
|
|
@@ -147,6 +185,17 @@ module Aws::Shield
|
|
|
147
185
|
DescribeAttackResponse.add_member(:attack, Shapes::ShapeRef.new(shape: AttackDetail, location_name: "Attack"))
|
|
148
186
|
DescribeAttackResponse.struct_class = Types::DescribeAttackResponse
|
|
149
187
|
|
|
188
|
+
DescribeDRTAccessRequest.struct_class = Types::DescribeDRTAccessRequest
|
|
189
|
+
|
|
190
|
+
DescribeDRTAccessResponse.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "RoleArn"))
|
|
191
|
+
DescribeDRTAccessResponse.add_member(:log_bucket_list, Shapes::ShapeRef.new(shape: LogBucketList, location_name: "LogBucketList"))
|
|
192
|
+
DescribeDRTAccessResponse.struct_class = Types::DescribeDRTAccessResponse
|
|
193
|
+
|
|
194
|
+
DescribeEmergencyContactSettingsRequest.struct_class = Types::DescribeEmergencyContactSettingsRequest
|
|
195
|
+
|
|
196
|
+
DescribeEmergencyContactSettingsResponse.add_member(:emergency_contact_list, Shapes::ShapeRef.new(shape: EmergencyContactList, location_name: "EmergencyContactList"))
|
|
197
|
+
DescribeEmergencyContactSettingsResponse.struct_class = Types::DescribeEmergencyContactSettingsResponse
|
|
198
|
+
|
|
150
199
|
DescribeProtectionRequest.add_member(:protection_id, Shapes::ShapeRef.new(shape: ProtectionId, required: true, location_name: "ProtectionId"))
|
|
151
200
|
DescribeProtectionRequest.struct_class = Types::DescribeProtectionRequest
|
|
152
201
|
|
|
@@ -158,11 +207,31 @@ module Aws::Shield
|
|
|
158
207
|
DescribeSubscriptionResponse.add_member(:subscription, Shapes::ShapeRef.new(shape: Subscription, location_name: "Subscription"))
|
|
159
208
|
DescribeSubscriptionResponse.struct_class = Types::DescribeSubscriptionResponse
|
|
160
209
|
|
|
210
|
+
DisassociateDRTLogBucketRequest.add_member(:log_bucket, Shapes::ShapeRef.new(shape: LogBucket, required: true, location_name: "LogBucket"))
|
|
211
|
+
DisassociateDRTLogBucketRequest.struct_class = Types::DisassociateDRTLogBucketRequest
|
|
212
|
+
|
|
213
|
+
DisassociateDRTLogBucketResponse.struct_class = Types::DisassociateDRTLogBucketResponse
|
|
214
|
+
|
|
215
|
+
DisassociateDRTRoleRequest.struct_class = Types::DisassociateDRTRoleRequest
|
|
216
|
+
|
|
217
|
+
DisassociateDRTRoleResponse.struct_class = Types::DisassociateDRTRoleResponse
|
|
218
|
+
|
|
219
|
+
EmergencyContact.add_member(:email_address, Shapes::ShapeRef.new(shape: EmailAddress, required: true, location_name: "EmailAddress"))
|
|
220
|
+
EmergencyContact.struct_class = Types::EmergencyContact
|
|
221
|
+
|
|
222
|
+
EmergencyContactList.member = Shapes::ShapeRef.new(shape: EmergencyContact)
|
|
223
|
+
|
|
161
224
|
GetSubscriptionStateRequest.struct_class = Types::GetSubscriptionStateRequest
|
|
162
225
|
|
|
163
226
|
GetSubscriptionStateResponse.add_member(:subscription_state, Shapes::ShapeRef.new(shape: SubscriptionState, required: true, location_name: "SubscriptionState"))
|
|
164
227
|
GetSubscriptionStateResponse.struct_class = Types::GetSubscriptionStateResponse
|
|
165
228
|
|
|
229
|
+
Limit.add_member(:type, Shapes::ShapeRef.new(shape: String, location_name: "Type"))
|
|
230
|
+
Limit.add_member(:max, Shapes::ShapeRef.new(shape: Long, location_name: "Max"))
|
|
231
|
+
Limit.struct_class = Types::Limit
|
|
232
|
+
|
|
233
|
+
Limits.member = Shapes::ShapeRef.new(shape: Limit)
|
|
234
|
+
|
|
166
235
|
ListAttacksRequest.add_member(:resource_arns, Shapes::ShapeRef.new(shape: ResourceArnFilterList, location_name: "ResourceArns"))
|
|
167
236
|
ListAttacksRequest.add_member(:start_time, Shapes::ShapeRef.new(shape: TimeRange, location_name: "StartTime"))
|
|
168
237
|
ListAttacksRequest.add_member(:end_time, Shapes::ShapeRef.new(shape: TimeRange, location_name: "EndTime"))
|
|
@@ -182,6 +251,8 @@ module Aws::Shield
|
|
|
182
251
|
ListProtectionsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
|
|
183
252
|
ListProtectionsResponse.struct_class = Types::ListProtectionsResponse
|
|
184
253
|
|
|
254
|
+
LogBucketList.member = Shapes::ShapeRef.new(shape: LogBucket)
|
|
255
|
+
|
|
185
256
|
Mitigation.add_member(:mitigation_name, Shapes::ShapeRef.new(shape: String, location_name: "MitigationName"))
|
|
186
257
|
Mitigation.struct_class = Types::Mitigation
|
|
187
258
|
|
|
@@ -205,7 +276,10 @@ module Aws::Shield
|
|
|
205
276
|
SubResourceSummaryList.member = Shapes::ShapeRef.new(shape: SubResourceSummary)
|
|
206
277
|
|
|
207
278
|
Subscription.add_member(:start_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "StartTime"))
|
|
279
|
+
Subscription.add_member(:end_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "EndTime"))
|
|
208
280
|
Subscription.add_member(:time_commitment_in_seconds, Shapes::ShapeRef.new(shape: DurationInSeconds, location_name: "TimeCommitmentInSeconds"))
|
|
281
|
+
Subscription.add_member(:auto_renew, Shapes::ShapeRef.new(shape: AutoRenew, location_name: "AutoRenew"))
|
|
282
|
+
Subscription.add_member(:limits, Shapes::ShapeRef.new(shape: Limits, location_name: "Limits"))
|
|
209
283
|
Subscription.struct_class = Types::Subscription
|
|
210
284
|
|
|
211
285
|
SummarizedAttackVector.add_member(:vector_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "VectorType"))
|
|
@@ -230,6 +304,16 @@ module Aws::Shield
|
|
|
230
304
|
|
|
231
305
|
TopContributors.member = Shapes::ShapeRef.new(shape: Contributor)
|
|
232
306
|
|
|
307
|
+
UpdateEmergencyContactSettingsRequest.add_member(:emergency_contact_list, Shapes::ShapeRef.new(shape: EmergencyContactList, location_name: "EmergencyContactList"))
|
|
308
|
+
UpdateEmergencyContactSettingsRequest.struct_class = Types::UpdateEmergencyContactSettingsRequest
|
|
309
|
+
|
|
310
|
+
UpdateEmergencyContactSettingsResponse.struct_class = Types::UpdateEmergencyContactSettingsResponse
|
|
311
|
+
|
|
312
|
+
UpdateSubscriptionRequest.add_member(:auto_renew, Shapes::ShapeRef.new(shape: AutoRenew, location_name: "AutoRenew"))
|
|
313
|
+
UpdateSubscriptionRequest.struct_class = Types::UpdateSubscriptionRequest
|
|
314
|
+
|
|
315
|
+
UpdateSubscriptionResponse.struct_class = Types::UpdateSubscriptionResponse
|
|
316
|
+
|
|
233
317
|
|
|
234
318
|
# @api private
|
|
235
319
|
API = Seahorse::Model::Api.new.tap do |api|
|
|
@@ -245,6 +329,36 @@ module Aws::Shield
|
|
|
245
329
|
"targetPrefix" => "AWSShield_20160616",
|
|
246
330
|
}
|
|
247
331
|
|
|
332
|
+
api.add_operation(:associate_drt_log_bucket, Seahorse::Model::Operation.new.tap do |o|
|
|
333
|
+
o.name = "AssociateDRTLogBucket"
|
|
334
|
+
o.http_method = "POST"
|
|
335
|
+
o.http_request_uri = "/"
|
|
336
|
+
o.input = Shapes::ShapeRef.new(shape: AssociateDRTLogBucketRequest)
|
|
337
|
+
o.output = Shapes::ShapeRef.new(shape: AssociateDRTLogBucketResponse)
|
|
338
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
|
339
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
|
|
340
|
+
o.errors << Shapes::ShapeRef.new(shape: NoAssociatedRoleException)
|
|
341
|
+
o.errors << Shapes::ShapeRef.new(shape: LimitsExceededException)
|
|
342
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
|
343
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedForDependencyException)
|
|
344
|
+
o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
|
|
345
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
|
346
|
+
end)
|
|
347
|
+
|
|
348
|
+
api.add_operation(:associate_drt_role, Seahorse::Model::Operation.new.tap do |o|
|
|
349
|
+
o.name = "AssociateDRTRole"
|
|
350
|
+
o.http_method = "POST"
|
|
351
|
+
o.http_request_uri = "/"
|
|
352
|
+
o.input = Shapes::ShapeRef.new(shape: AssociateDRTRoleRequest)
|
|
353
|
+
o.output = Shapes::ShapeRef.new(shape: AssociateDRTRoleResponse)
|
|
354
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
|
355
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
|
|
356
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
|
357
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedForDependencyException)
|
|
358
|
+
o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
|
|
359
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
|
360
|
+
end)
|
|
361
|
+
|
|
248
362
|
api.add_operation(:create_protection, Seahorse::Model::Operation.new.tap do |o|
|
|
249
363
|
o.name = "CreateProtection"
|
|
250
364
|
o.http_method = "POST"
|
|
@@ -285,6 +399,7 @@ module Aws::Shield
|
|
|
285
399
|
o.name = "DeleteSubscription"
|
|
286
400
|
o.http_method = "POST"
|
|
287
401
|
o.http_request_uri = "/"
|
|
402
|
+
o.deprecated = true
|
|
288
403
|
o.input = Shapes::ShapeRef.new(shape: DeleteSubscriptionRequest)
|
|
289
404
|
o.output = Shapes::ShapeRef.new(shape: DeleteSubscriptionResponse)
|
|
290
405
|
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
|
@@ -302,6 +417,26 @@ module Aws::Shield
|
|
|
302
417
|
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
|
303
418
|
end)
|
|
304
419
|
|
|
420
|
+
api.add_operation(:describe_drt_access, Seahorse::Model::Operation.new.tap do |o|
|
|
421
|
+
o.name = "DescribeDRTAccess"
|
|
422
|
+
o.http_method = "POST"
|
|
423
|
+
o.http_request_uri = "/"
|
|
424
|
+
o.input = Shapes::ShapeRef.new(shape: DescribeDRTAccessRequest)
|
|
425
|
+
o.output = Shapes::ShapeRef.new(shape: DescribeDRTAccessResponse)
|
|
426
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
|
427
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
|
428
|
+
end)
|
|
429
|
+
|
|
430
|
+
api.add_operation(:describe_emergency_contact_settings, Seahorse::Model::Operation.new.tap do |o|
|
|
431
|
+
o.name = "DescribeEmergencyContactSettings"
|
|
432
|
+
o.http_method = "POST"
|
|
433
|
+
o.http_request_uri = "/"
|
|
434
|
+
o.input = Shapes::ShapeRef.new(shape: DescribeEmergencyContactSettingsRequest)
|
|
435
|
+
o.output = Shapes::ShapeRef.new(shape: DescribeEmergencyContactSettingsResponse)
|
|
436
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
|
437
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
|
438
|
+
end)
|
|
439
|
+
|
|
305
440
|
api.add_operation(:describe_protection, Seahorse::Model::Operation.new.tap do |o|
|
|
306
441
|
o.name = "DescribeProtection"
|
|
307
442
|
o.http_method = "POST"
|
|
@@ -322,6 +457,32 @@ module Aws::Shield
|
|
|
322
457
|
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
|
323
458
|
end)
|
|
324
459
|
|
|
460
|
+
api.add_operation(:disassociate_drt_log_bucket, Seahorse::Model::Operation.new.tap do |o|
|
|
461
|
+
o.name = "DisassociateDRTLogBucket"
|
|
462
|
+
o.http_method = "POST"
|
|
463
|
+
o.http_request_uri = "/"
|
|
464
|
+
o.input = Shapes::ShapeRef.new(shape: DisassociateDRTLogBucketRequest)
|
|
465
|
+
o.output = Shapes::ShapeRef.new(shape: DisassociateDRTLogBucketResponse)
|
|
466
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
|
467
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
|
|
468
|
+
o.errors << Shapes::ShapeRef.new(shape: NoAssociatedRoleException)
|
|
469
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedForDependencyException)
|
|
470
|
+
o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
|
|
471
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
|
472
|
+
end)
|
|
473
|
+
|
|
474
|
+
api.add_operation(:disassociate_drt_role, Seahorse::Model::Operation.new.tap do |o|
|
|
475
|
+
o.name = "DisassociateDRTRole"
|
|
476
|
+
o.http_method = "POST"
|
|
477
|
+
o.http_request_uri = "/"
|
|
478
|
+
o.input = Shapes::ShapeRef.new(shape: DisassociateDRTRoleRequest)
|
|
479
|
+
o.output = Shapes::ShapeRef.new(shape: DisassociateDRTRoleResponse)
|
|
480
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
|
481
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
|
|
482
|
+
o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
|
|
483
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
|
484
|
+
end)
|
|
485
|
+
|
|
325
486
|
api.add_operation(:get_subscription_state, Seahorse::Model::Operation.new.tap do |o|
|
|
326
487
|
o.name = "GetSubscriptionState"
|
|
327
488
|
o.http_method = "POST"
|
|
@@ -350,6 +511,32 @@ module Aws::Shield
|
|
|
350
511
|
o.output = Shapes::ShapeRef.new(shape: ListProtectionsResponse)
|
|
351
512
|
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
|
352
513
|
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
|
514
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidPaginationTokenException)
|
|
515
|
+
end)
|
|
516
|
+
|
|
517
|
+
api.add_operation(:update_emergency_contact_settings, Seahorse::Model::Operation.new.tap do |o|
|
|
518
|
+
o.name = "UpdateEmergencyContactSettings"
|
|
519
|
+
o.http_method = "POST"
|
|
520
|
+
o.http_request_uri = "/"
|
|
521
|
+
o.input = Shapes::ShapeRef.new(shape: UpdateEmergencyContactSettingsRequest)
|
|
522
|
+
o.output = Shapes::ShapeRef.new(shape: UpdateEmergencyContactSettingsResponse)
|
|
523
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
|
524
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
|
525
|
+
o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
|
|
526
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
|
527
|
+
end)
|
|
528
|
+
|
|
529
|
+
api.add_operation(:update_subscription, Seahorse::Model::Operation.new.tap do |o|
|
|
530
|
+
o.name = "UpdateSubscription"
|
|
531
|
+
o.http_method = "POST"
|
|
532
|
+
o.http_request_uri = "/"
|
|
533
|
+
o.input = Shapes::ShapeRef.new(shape: UpdateSubscriptionRequest)
|
|
534
|
+
o.output = Shapes::ShapeRef.new(shape: UpdateSubscriptionResponse)
|
|
535
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
|
536
|
+
o.errors << Shapes::ShapeRef.new(shape: LockedSubscriptionException)
|
|
537
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
|
538
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
|
539
|
+
o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
|
|
353
540
|
end)
|
|
354
541
|
end
|
|
355
542
|
|
data/lib/aws-sdk-shield/types.rb
CHANGED
|
@@ -8,6 +8,60 @@
|
|
|
8
8
|
module Aws::Shield
|
|
9
9
|
module Types
|
|
10
10
|
|
|
11
|
+
# @note When making an API call, you may pass AssociateDRTLogBucketRequest
|
|
12
|
+
# data as a hash:
|
|
13
|
+
#
|
|
14
|
+
# {
|
|
15
|
+
# log_bucket: "LogBucket", # required
|
|
16
|
+
# }
|
|
17
|
+
#
|
|
18
|
+
# @!attribute [rw] log_bucket
|
|
19
|
+
# The Amazon S3 bucket that contains your flow logs.
|
|
20
|
+
# @return [String]
|
|
21
|
+
#
|
|
22
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateDRTLogBucketRequest AWS API Documentation
|
|
23
|
+
#
|
|
24
|
+
class AssociateDRTLogBucketRequest < Struct.new(
|
|
25
|
+
:log_bucket)
|
|
26
|
+
include Aws::Structure
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateDRTLogBucketResponse AWS API Documentation
|
|
30
|
+
#
|
|
31
|
+
class AssociateDRTLogBucketResponse < Aws::EmptyStructure; end
|
|
32
|
+
|
|
33
|
+
# @note When making an API call, you may pass AssociateDRTRoleRequest
|
|
34
|
+
# data as a hash:
|
|
35
|
+
#
|
|
36
|
+
# {
|
|
37
|
+
# role_arn: "RoleArn", # required
|
|
38
|
+
# }
|
|
39
|
+
#
|
|
40
|
+
# @!attribute [rw] role_arn
|
|
41
|
+
# The Amazon Resource Name (ARN) of the role the DRT will use to
|
|
42
|
+
# access your AWS account.
|
|
43
|
+
#
|
|
44
|
+
# Prior to making the `AssociateDRTRole` request, you must attach the
|
|
45
|
+
# [AWSShieldDRTAccessPolicy][1] managed policy to this role. For more
|
|
46
|
+
# information see [Attaching and Detaching IAM Policies](
|
|
47
|
+
# https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html).
|
|
48
|
+
#
|
|
49
|
+
#
|
|
50
|
+
#
|
|
51
|
+
# [1]: https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/service-role/AWSShieldDRTAccessPolicy
|
|
52
|
+
# @return [String]
|
|
53
|
+
#
|
|
54
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateDRTRoleRequest AWS API Documentation
|
|
55
|
+
#
|
|
56
|
+
class AssociateDRTRoleRequest < Struct.new(
|
|
57
|
+
:role_arn)
|
|
58
|
+
include Aws::Structure
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateDRTRoleResponse AWS API Documentation
|
|
62
|
+
#
|
|
63
|
+
class AssociateDRTRoleResponse < Aws::EmptyStructure; end
|
|
64
|
+
|
|
11
65
|
# The details of a DDoS attack.
|
|
12
66
|
#
|
|
13
67
|
# @!attribute [rw] attack_id
|
|
@@ -338,6 +392,47 @@ module Aws::Shield
|
|
|
338
392
|
include Aws::Structure
|
|
339
393
|
end
|
|
340
394
|
|
|
395
|
+
# @api private
|
|
396
|
+
#
|
|
397
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeDRTAccessRequest AWS API Documentation
|
|
398
|
+
#
|
|
399
|
+
class DescribeDRTAccessRequest < Aws::EmptyStructure; end
|
|
400
|
+
|
|
401
|
+
# @!attribute [rw] role_arn
|
|
402
|
+
# The Amazon Resource Name (ARN) of the role the DRT used to access
|
|
403
|
+
# your AWS account.
|
|
404
|
+
# @return [String]
|
|
405
|
+
#
|
|
406
|
+
# @!attribute [rw] log_bucket_list
|
|
407
|
+
# The list of Amazon S3 buckets accessed by the DRT.
|
|
408
|
+
# @return [Array<String>]
|
|
409
|
+
#
|
|
410
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeDRTAccessResponse AWS API Documentation
|
|
411
|
+
#
|
|
412
|
+
class DescribeDRTAccessResponse < Struct.new(
|
|
413
|
+
:role_arn,
|
|
414
|
+
:log_bucket_list)
|
|
415
|
+
include Aws::Structure
|
|
416
|
+
end
|
|
417
|
+
|
|
418
|
+
# @api private
|
|
419
|
+
#
|
|
420
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeEmergencyContactSettingsRequest AWS API Documentation
|
|
421
|
+
#
|
|
422
|
+
class DescribeEmergencyContactSettingsRequest < Aws::EmptyStructure; end
|
|
423
|
+
|
|
424
|
+
# @!attribute [rw] emergency_contact_list
|
|
425
|
+
# A list of email addresses that the DRT can use to contact you during
|
|
426
|
+
# a suspected attack.
|
|
427
|
+
# @return [Array<Types::EmergencyContact>]
|
|
428
|
+
#
|
|
429
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeEmergencyContactSettingsResponse AWS API Documentation
|
|
430
|
+
#
|
|
431
|
+
class DescribeEmergencyContactSettingsResponse < Struct.new(
|
|
432
|
+
:emergency_contact_list)
|
|
433
|
+
include Aws::Structure
|
|
434
|
+
end
|
|
435
|
+
|
|
341
436
|
# @note When making an API call, you may pass DescribeProtectionRequest
|
|
342
437
|
# data as a hash:
|
|
343
438
|
#
|
|
@@ -385,6 +480,60 @@ module Aws::Shield
|
|
|
385
480
|
include Aws::Structure
|
|
386
481
|
end
|
|
387
482
|
|
|
483
|
+
# @note When making an API call, you may pass DisassociateDRTLogBucketRequest
|
|
484
|
+
# data as a hash:
|
|
485
|
+
#
|
|
486
|
+
# {
|
|
487
|
+
# log_bucket: "LogBucket", # required
|
|
488
|
+
# }
|
|
489
|
+
#
|
|
490
|
+
# @!attribute [rw] log_bucket
|
|
491
|
+
# The Amazon S3 bucket that contains your flow logs.
|
|
492
|
+
# @return [String]
|
|
493
|
+
#
|
|
494
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateDRTLogBucketRequest AWS API Documentation
|
|
495
|
+
#
|
|
496
|
+
class DisassociateDRTLogBucketRequest < Struct.new(
|
|
497
|
+
:log_bucket)
|
|
498
|
+
include Aws::Structure
|
|
499
|
+
end
|
|
500
|
+
|
|
501
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateDRTLogBucketResponse AWS API Documentation
|
|
502
|
+
#
|
|
503
|
+
class DisassociateDRTLogBucketResponse < Aws::EmptyStructure; end
|
|
504
|
+
|
|
505
|
+
# @api private
|
|
506
|
+
#
|
|
507
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateDRTRoleRequest AWS API Documentation
|
|
508
|
+
#
|
|
509
|
+
class DisassociateDRTRoleRequest < Aws::EmptyStructure; end
|
|
510
|
+
|
|
511
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateDRTRoleResponse AWS API Documentation
|
|
512
|
+
#
|
|
513
|
+
class DisassociateDRTRoleResponse < Aws::EmptyStructure; end
|
|
514
|
+
|
|
515
|
+
# Contact information that the DRT can use to contact you during a
|
|
516
|
+
# suspected attack.
|
|
517
|
+
#
|
|
518
|
+
# @note When making an API call, you may pass EmergencyContact
|
|
519
|
+
# data as a hash:
|
|
520
|
+
#
|
|
521
|
+
# {
|
|
522
|
+
# email_address: "EmailAddress", # required
|
|
523
|
+
# }
|
|
524
|
+
#
|
|
525
|
+
# @!attribute [rw] email_address
|
|
526
|
+
# An email address that the DRT can use to contact you during a
|
|
527
|
+
# suspected attack.
|
|
528
|
+
# @return [String]
|
|
529
|
+
#
|
|
530
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/EmergencyContact AWS API Documentation
|
|
531
|
+
#
|
|
532
|
+
class EmergencyContact < Struct.new(
|
|
533
|
+
:email_address)
|
|
534
|
+
include Aws::Structure
|
|
535
|
+
end
|
|
536
|
+
|
|
388
537
|
# @api private
|
|
389
538
|
#
|
|
390
539
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/GetSubscriptionStateRequest AWS API Documentation
|
|
@@ -402,6 +551,25 @@ module Aws::Shield
|
|
|
402
551
|
include Aws::Structure
|
|
403
552
|
end
|
|
404
553
|
|
|
554
|
+
# Specifies how many protections of a given type you can create.
|
|
555
|
+
#
|
|
556
|
+
# @!attribute [rw] type
|
|
557
|
+
# The type of protection.
|
|
558
|
+
# @return [String]
|
|
559
|
+
#
|
|
560
|
+
# @!attribute [rw] max
|
|
561
|
+
# The maximum number of protections that can be created for the
|
|
562
|
+
# specified `Type`.
|
|
563
|
+
# @return [Integer]
|
|
564
|
+
#
|
|
565
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/Limit AWS API Documentation
|
|
566
|
+
#
|
|
567
|
+
class Limit < Struct.new(
|
|
568
|
+
:type,
|
|
569
|
+
:max)
|
|
570
|
+
include Aws::Structure
|
|
571
|
+
end
|
|
572
|
+
|
|
405
573
|
# @note When making an API call, you may pass ListAttacksRequest
|
|
406
574
|
# data as a hash:
|
|
407
575
|
#
|
|
@@ -612,16 +780,38 @@ module Aws::Shield
|
|
|
612
780
|
# [1]: http://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#parameter-types
|
|
613
781
|
# @return [Time]
|
|
614
782
|
#
|
|
783
|
+
# @!attribute [rw] end_time
|
|
784
|
+
# The date and time your subscription will end.
|
|
785
|
+
# @return [Time]
|
|
786
|
+
#
|
|
615
787
|
# @!attribute [rw] time_commitment_in_seconds
|
|
616
788
|
# The length, in seconds, of the AWS Shield Advanced subscription for
|
|
617
789
|
# the account.
|
|
618
790
|
# @return [Integer]
|
|
619
791
|
#
|
|
792
|
+
# @!attribute [rw] auto_renew
|
|
793
|
+
# If `ENABLED`, the subscription will be automatically renewed at the
|
|
794
|
+
# end of the existing subscription period.
|
|
795
|
+
#
|
|
796
|
+
# When you initally create a subscription, `AutoRenew` is set to
|
|
797
|
+
# `ENABLED`. You can change this by submitting an `UpdateSubscription`
|
|
798
|
+
# request. If the `UpdateSubscription` request does not included a
|
|
799
|
+
# value for `AutoRenew`, the existing value for `AutoRenew` remains
|
|
800
|
+
# unchanged.
|
|
801
|
+
# @return [String]
|
|
802
|
+
#
|
|
803
|
+
# @!attribute [rw] limits
|
|
804
|
+
# Specifies how many protections of a given type you can create.
|
|
805
|
+
# @return [Array<Types::Limit>]
|
|
806
|
+
#
|
|
620
807
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/Subscription AWS API Documentation
|
|
621
808
|
#
|
|
622
809
|
class Subscription < Struct.new(
|
|
623
810
|
:start_time,
|
|
624
|
-
:
|
|
811
|
+
:end_time,
|
|
812
|
+
:time_commitment_in_seconds,
|
|
813
|
+
:auto_renew,
|
|
814
|
+
:limits)
|
|
625
815
|
include Aws::Structure
|
|
626
816
|
end
|
|
627
817
|
|
|
@@ -717,5 +907,59 @@ module Aws::Shield
|
|
|
717
907
|
include Aws::Structure
|
|
718
908
|
end
|
|
719
909
|
|
|
910
|
+
# @note When making an API call, you may pass UpdateEmergencyContactSettingsRequest
|
|
911
|
+
# data as a hash:
|
|
912
|
+
#
|
|
913
|
+
# {
|
|
914
|
+
# emergency_contact_list: [
|
|
915
|
+
# {
|
|
916
|
+
# email_address: "EmailAddress", # required
|
|
917
|
+
# },
|
|
918
|
+
# ],
|
|
919
|
+
# }
|
|
920
|
+
#
|
|
921
|
+
# @!attribute [rw] emergency_contact_list
|
|
922
|
+
# A list of email addresses that the DRT can use to contact you during
|
|
923
|
+
# a suspected attack.
|
|
924
|
+
# @return [Array<Types::EmergencyContact>]
|
|
925
|
+
#
|
|
926
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateEmergencyContactSettingsRequest AWS API Documentation
|
|
927
|
+
#
|
|
928
|
+
class UpdateEmergencyContactSettingsRequest < Struct.new(
|
|
929
|
+
:emergency_contact_list)
|
|
930
|
+
include Aws::Structure
|
|
931
|
+
end
|
|
932
|
+
|
|
933
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateEmergencyContactSettingsResponse AWS API Documentation
|
|
934
|
+
#
|
|
935
|
+
class UpdateEmergencyContactSettingsResponse < Aws::EmptyStructure; end
|
|
936
|
+
|
|
937
|
+
# @note When making an API call, you may pass UpdateSubscriptionRequest
|
|
938
|
+
# data as a hash:
|
|
939
|
+
#
|
|
940
|
+
# {
|
|
941
|
+
# auto_renew: "ENABLED", # accepts ENABLED, DISABLED
|
|
942
|
+
# }
|
|
943
|
+
#
|
|
944
|
+
# @!attribute [rw] auto_renew
|
|
945
|
+
# When you initally create a subscription, `AutoRenew` is set to
|
|
946
|
+
# `ENABLED`. If `ENABLED`, the subscription will be automatically
|
|
947
|
+
# renewed at the end of the existing subscription period. You can
|
|
948
|
+
# change this by submitting an `UpdateSubscription` request. If the
|
|
949
|
+
# `UpdateSubscription` request does not included a value for
|
|
950
|
+
# `AutoRenew`, the existing value for `AutoRenew` remains unchanged.
|
|
951
|
+
# @return [String]
|
|
952
|
+
#
|
|
953
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateSubscriptionRequest AWS API Documentation
|
|
954
|
+
#
|
|
955
|
+
class UpdateSubscriptionRequest < Struct.new(
|
|
956
|
+
:auto_renew)
|
|
957
|
+
include Aws::Structure
|
|
958
|
+
end
|
|
959
|
+
|
|
960
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateSubscriptionResponse AWS API Documentation
|
|
961
|
+
#
|
|
962
|
+
class UpdateSubscriptionResponse < Aws::EmptyStructure; end
|
|
963
|
+
|
|
720
964
|
end
|
|
721
965
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: aws-sdk-shield
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.2.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:
|
|
11
|
+
date: 2018-06-05 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: aws-sdk-core
|
|
@@ -75,7 +75,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
75
75
|
version: '0'
|
|
76
76
|
requirements: []
|
|
77
77
|
rubyforge_project:
|
|
78
|
-
rubygems_version: 2.5.
|
|
78
|
+
rubygems_version: 2.5.2.3
|
|
79
79
|
signing_key:
|
|
80
80
|
specification_version: 4
|
|
81
81
|
summary: AWS SDK for Ruby - AWS Shield
|