aws-sdk-shield 1.25.0 → 1.26.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
  SHA256:
3
- metadata.gz: ab4c1c775ddc9e7eb1d75612ead83ccf3e80dc3d6077b042f5dffa707b9411b4
4
- data.tar.gz: 04a59519bb3f17eb4d59b93b27cbde5d90cafdb85837d61a1d3d7edfca05d2eb
3
+ metadata.gz: d562d25061a6896c4d3012ac213b71d04d07bafe9f2f46881b5a63f353bf2833
4
+ data.tar.gz: b7b0b904731efe4524c06db78ad8c94d17c4aab517532161239a2b244b645c27
5
5
  SHA512:
6
- metadata.gz: 226ac5493ffb7d811ba044e24ea96934f8f9c6cc96ae55575ac2a3a970aa5e247331892fb2750553a7f9e532b0e503c85c1aa8b7cbb669e3992f19a65f8dcdfa
7
- data.tar.gz: 96b63836f50c9c5a0428481bae73e26d409976e9da6abd5669d9d74acf2cc1df1c6746fc9ebc46e9b879d899334cb0a1dc40bd8aff2f82b23cff04a124a57d97
6
+ metadata.gz: 0fc3949723bf67e9323b342cdd47fc56fffd7e2e8d90c6a9b0d88f38803a361ad53ec7f07da6ed50ef3082f9f0b8eef2156d9c8982ca73c7b28d545f5d58ae77
7
+ data.tar.gz: 92fe118ea6d193ee66434137d5eebe23b07b44d51c9ea2d545561822e7ff4d36bcce0281375e26be0cde27d95edd9972ef58f375ffe13f2c7c8bc15efbbf8828
@@ -45,6 +45,6 @@ require_relative 'aws-sdk-shield/customizations'
45
45
  # @service
46
46
  module Aws::Shield
47
47
 
48
- GEM_VERSION = '1.25.0'
48
+ GEM_VERSION = '1.26.0'
49
49
 
50
50
  end
@@ -318,7 +318,7 @@ module Aws::Shield
318
318
 
319
319
  # @!group API Operations
320
320
 
321
- # Authorizes the DDoS Response team (DRT) to access the specified Amazon
321
+ # Authorizes the DDoS Response Team (DRT) to access the specified Amazon
322
322
  # S3 bucket containing your AWS WAF logs. You can associate up to 10
323
323
  # Amazon S3 buckets with your subscription.
324
324
  #
@@ -351,7 +351,7 @@ module Aws::Shield
351
351
  req.send_request(options)
352
352
  end
353
353
 
354
- # Authorizes the DDoS Response team (DRT), using the specified role, to
354
+ # Authorizes the DDoS Response Team (DRT), using the specified role, to
355
355
  # access your AWS account to assist with DDoS attack mitigation during
356
356
  # potential attacks. This enables the DRT to inspect your AWS WAF
357
357
  # configuration and create or update AWS WAF rules and web ACLs.
@@ -463,6 +463,63 @@ module Aws::Shield
463
463
  req.send_request(options)
464
464
  end
465
465
 
466
+ # Initializes proactive engagement and sets the list of contacts for the
467
+ # DDoS Response Team (DRT) to use. You must provide at least one phone
468
+ # number in the emergency contact list.
469
+ #
470
+ # After you have initialized proactive engagement using this call, to
471
+ # disable or enable proactive engagement, use the calls
472
+ # `DisableProactiveEngagement` and `EnableProactiveEngagement`.
473
+ #
474
+ # <note markdown="1"> This call defines the list of email addresses and phone numbers that
475
+ # the DDoS Response Team (DRT) can use to contact you for escalations to
476
+ # the DRT and to initiate proactive customer support.
477
+ #
478
+ # The contacts that you provide in the request replace any contacts that
479
+ # were already defined. If you already have contacts defined and want to
480
+ # use them, retrieve the list using `DescribeEmergencyContactSettings`
481
+ # and then provide it to this call.
482
+ #
483
+ # </note>
484
+ #
485
+ # @option params [required, Array<Types::EmergencyContact>] :emergency_contact_list
486
+ # A list of email addresses and phone numbers that the DDoS Response
487
+ # Team (DRT) can use to contact you for escalations to the DRT and to
488
+ # initiate proactive customer support.
489
+ #
490
+ # To enable proactive engagement, the contact list must include at least
491
+ # one phone number.
492
+ #
493
+ # <note markdown="1"> The contacts that you provide here replace any contacts that were
494
+ # already defined. If you already have contacts defined and want to use
495
+ # them, retrieve the list using `DescribeEmergencyContactSettings` and
496
+ # then provide it here.
497
+ #
498
+ # </note>
499
+ #
500
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
501
+ #
502
+ # @example Request syntax with placeholder values
503
+ #
504
+ # resp = client.associate_proactive_engagement_details({
505
+ # emergency_contact_list: [ # required
506
+ # {
507
+ # email_address: "EmailAddress", # required
508
+ # phone_number: "PhoneNumber",
509
+ # contact_notes: "ContactNotes",
510
+ # },
511
+ # ],
512
+ # })
513
+ #
514
+ # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateProactiveEngagementDetails AWS API Documentation
515
+ #
516
+ # @overload associate_proactive_engagement_details(params = {})
517
+ # @param [Hash] params ({})
518
+ def associate_proactive_engagement_details(params = {}, options = {})
519
+ req = build_request(:associate_proactive_engagement_details, params)
520
+ req.send_request(options)
521
+ end
522
+
466
523
  # Enables AWS Shield Advanced for a specific AWS resource. The resource
467
524
  # can be an Amazon CloudFront distribution, Elastic Load Balancing load
468
525
  # balancer, AWS Global Accelerator accelerator, Elastic IP Address, or
@@ -669,7 +726,7 @@ module Aws::Shield
669
726
  end
670
727
 
671
728
  # Returns the current role and list of Amazon S3 log buckets used by the
672
- # DDoS Response team (DRT) to access your AWS account while assisting
729
+ # DDoS Response Team (DRT) to access your AWS account while assisting
673
730
  # with attack mitigation.
674
731
  #
675
732
  # @return [Types::DescribeDRTAccessResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -692,8 +749,10 @@ module Aws::Shield
692
749
  req.send_request(options)
693
750
  end
694
751
 
695
- # Lists the email addresses that the DRT can use to contact you during a
696
- # suspected attack.
752
+ # A list of email addresses and phone numbers that the DDoS Response
753
+ # Team (DRT) can use to contact you if you have proactive engagement
754
+ # enabled, for escalations to the DRT and to initiate proactive customer
755
+ # support.
697
756
  #
698
757
  # @return [Types::DescribeEmergencyContactSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
699
758
  #
@@ -703,6 +762,8 @@ module Aws::Shield
703
762
  #
704
763
  # resp.emergency_contact_list #=> Array
705
764
  # resp.emergency_contact_list[0].email_address #=> String
765
+ # resp.emergency_contact_list[0].phone_number #=> String
766
+ # resp.emergency_contact_list[0].contact_notes #=> String
706
767
  #
707
768
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeEmergencyContactSettings AWS API Documentation
708
769
  #
@@ -770,6 +831,7 @@ module Aws::Shield
770
831
  # resp.subscription.limits #=> Array
771
832
  # resp.subscription.limits[0].type #=> String
772
833
  # resp.subscription.limits[0].max #=> Integer
834
+ # resp.subscription.proactive_engagement_status #=> String, one of "ENABLED", "DISABLED", "PENDING"
773
835
  #
774
836
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeSubscription AWS API Documentation
775
837
  #
@@ -780,7 +842,22 @@ module Aws::Shield
780
842
  req.send_request(options)
781
843
  end
782
844
 
783
- # Removes the DDoS Response team's (DRT) access to the specified Amazon
845
+ # Removes authorization from the DDoS Response Team (DRT) to notify
846
+ # contacts about escalations to the DRT and to initiate proactive
847
+ # customer support.
848
+ #
849
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
850
+ #
851
+ # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisableProactiveEngagement AWS API Documentation
852
+ #
853
+ # @overload disable_proactive_engagement(params = {})
854
+ # @param [Hash] params ({})
855
+ def disable_proactive_engagement(params = {}, options = {})
856
+ req = build_request(:disable_proactive_engagement, params)
857
+ req.send_request(options)
858
+ end
859
+
860
+ # Removes the DDoS Response Team's (DRT) access to the specified Amazon
784
861
  # S3 bucket containing your AWS WAF logs.
785
862
  #
786
863
  # To make a `DisassociateDRTLogBucket` request, you must be subscribed
@@ -815,7 +892,7 @@ module Aws::Shield
815
892
  req.send_request(options)
816
893
  end
817
894
 
818
- # Removes the DDoS Response team's (DRT) access to your AWS account.
895
+ # Removes the DDoS Response Team's (DRT) access to your AWS account.
819
896
  #
820
897
  # To make a `DisassociateDRTRole` request, you must be subscribed to the
821
898
  # [Business Support plan][1] or the [Enterprise Support plan][2].
@@ -880,6 +957,21 @@ module Aws::Shield
880
957
  req.send_request(options)
881
958
  end
882
959
 
960
+ # Authorizes the DDoS Response Team (DRT) to use email and phone to
961
+ # notify contacts about escalations to the DRT and to initiate proactive
962
+ # customer support.
963
+ #
964
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
965
+ #
966
+ # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/EnableProactiveEngagement AWS API Documentation
967
+ #
968
+ # @overload enable_proactive_engagement(params = {})
969
+ # @param [Hash] params ({})
970
+ def enable_proactive_engagement(params = {}, options = {})
971
+ req = build_request(:enable_proactive_engagement, params)
972
+ req.send_request(options)
973
+ end
974
+
883
975
  # Returns the `SubscriptionState`, either `Active` or `Inactive`.
884
976
  #
885
977
  # @return [Types::GetSubscriptionStateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -947,6 +1039,8 @@ module Aws::Shield
947
1039
  # * {Types::ListAttacksResponse#attack_summaries #attack_summaries} => Array&lt;Types::AttackSummary&gt;
948
1040
  # * {Types::ListAttacksResponse#next_token #next_token} => String
949
1041
  #
1042
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1043
+ #
950
1044
  # @example Request syntax with placeholder values
951
1045
  #
952
1046
  # resp = client.list_attacks({
@@ -1004,6 +1098,8 @@ module Aws::Shield
1004
1098
  # * {Types::ListProtectionsResponse#protections #protections} => Array&lt;Types::Protection&gt;
1005
1099
  # * {Types::ListProtectionsResponse#next_token #next_token} => String
1006
1100
  #
1101
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1102
+ #
1007
1103
  # @example Request syntax with placeholder values
1008
1104
  #
1009
1105
  # resp = client.list_protections({
@@ -1030,12 +1126,19 @@ module Aws::Shield
1030
1126
  req.send_request(options)
1031
1127
  end
1032
1128
 
1033
- # Updates the details of the list of email addresses that the DRT can
1034
- # use to contact you during a suspected attack.
1129
+ # Updates the details of the list of email addresses and phone numbers
1130
+ # that the DDoS Response Team (DRT) can use to contact you if you have
1131
+ # proactive engagement enabled, for escalations to the DRT and to
1132
+ # initiate proactive customer support.
1035
1133
  #
1036
1134
  # @option params [Array<Types::EmergencyContact>] :emergency_contact_list
1037
- # A list of email addresses that the DRT can use to contact you during a
1038
- # suspected attack.
1135
+ # A list of email addresses and phone numbers that the DDoS Response
1136
+ # Team (DRT) can use to contact you if you have proactive engagement
1137
+ # enabled, for escalations to the DRT and to initiate proactive customer
1138
+ # support.
1139
+ #
1140
+ # If you have proactive engagement enabled, the contact list must
1141
+ # include at least one phone number.
1039
1142
  #
1040
1143
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1041
1144
  #
@@ -1045,6 +1148,8 @@ module Aws::Shield
1045
1148
  # emergency_contact_list: [
1046
1149
  # {
1047
1150
  # email_address: "EmailAddress", # required
1151
+ # phone_number: "PhoneNumber",
1152
+ # contact_notes: "ContactNotes",
1048
1153
  # },
1049
1154
  # ],
1050
1155
  # })
@@ -1099,7 +1204,7 @@ module Aws::Shield
1099
1204
  params: params,
1100
1205
  config: config)
1101
1206
  context[:gem_name] = 'aws-sdk-shield'
1102
- context[:gem_version] = '1.25.0'
1207
+ context[:gem_version] = '1.26.0'
1103
1208
  Seahorse::Client::Request.new(handlers, context)
1104
1209
  end
1105
1210
 
@@ -19,6 +19,8 @@ module Aws::Shield
19
19
  AssociateDRTRoleResponse = Shapes::StructureShape.new(name: 'AssociateDRTRoleResponse')
20
20
  AssociateHealthCheckRequest = Shapes::StructureShape.new(name: 'AssociateHealthCheckRequest')
21
21
  AssociateHealthCheckResponse = Shapes::StructureShape.new(name: 'AssociateHealthCheckResponse')
22
+ AssociateProactiveEngagementDetailsRequest = Shapes::StructureShape.new(name: 'AssociateProactiveEngagementDetailsRequest')
23
+ AssociateProactiveEngagementDetailsResponse = Shapes::StructureShape.new(name: 'AssociateProactiveEngagementDetailsResponse')
22
24
  AttackDetail = Shapes::StructureShape.new(name: 'AttackDetail')
23
25
  AttackId = Shapes::StringShape.new(name: 'AttackId')
24
26
  AttackLayer = Shapes::StringShape.new(name: 'AttackLayer')
@@ -31,6 +33,7 @@ module Aws::Shield
31
33
  AttackVectorDescription = Shapes::StructureShape.new(name: 'AttackVectorDescription')
32
34
  AttackVectorDescriptionList = Shapes::ListShape.new(name: 'AttackVectorDescriptionList')
33
35
  AutoRenew = Shapes::StringShape.new(name: 'AutoRenew')
36
+ ContactNotes = Shapes::StringShape.new(name: 'ContactNotes')
34
37
  Contributor = Shapes::StructureShape.new(name: 'Contributor')
35
38
  CreateProtectionRequest = Shapes::StructureShape.new(name: 'CreateProtectionRequest')
36
39
  CreateProtectionResponse = Shapes::StructureShape.new(name: 'CreateProtectionResponse')
@@ -50,6 +53,8 @@ module Aws::Shield
50
53
  DescribeProtectionResponse = Shapes::StructureShape.new(name: 'DescribeProtectionResponse')
51
54
  DescribeSubscriptionRequest = Shapes::StructureShape.new(name: 'DescribeSubscriptionRequest')
52
55
  DescribeSubscriptionResponse = Shapes::StructureShape.new(name: 'DescribeSubscriptionResponse')
56
+ DisableProactiveEngagementRequest = Shapes::StructureShape.new(name: 'DisableProactiveEngagementRequest')
57
+ DisableProactiveEngagementResponse = Shapes::StructureShape.new(name: 'DisableProactiveEngagementResponse')
53
58
  DisassociateDRTLogBucketRequest = Shapes::StructureShape.new(name: 'DisassociateDRTLogBucketRequest')
54
59
  DisassociateDRTLogBucketResponse = Shapes::StructureShape.new(name: 'DisassociateDRTLogBucketResponse')
55
60
  DisassociateDRTRoleRequest = Shapes::StructureShape.new(name: 'DisassociateDRTRoleRequest')
@@ -61,6 +66,8 @@ module Aws::Shield
61
66
  EmailAddress = Shapes::StringShape.new(name: 'EmailAddress')
62
67
  EmergencyContact = Shapes::StructureShape.new(name: 'EmergencyContact')
63
68
  EmergencyContactList = Shapes::ListShape.new(name: 'EmergencyContactList')
69
+ EnableProactiveEngagementRequest = Shapes::StructureShape.new(name: 'EnableProactiveEngagementRequest')
70
+ EnableProactiveEngagementResponse = Shapes::StructureShape.new(name: 'EnableProactiveEngagementResponse')
64
71
  GetSubscriptionStateRequest = Shapes::StructureShape.new(name: 'GetSubscriptionStateRequest')
65
72
  GetSubscriptionStateResponse = Shapes::StructureShape.new(name: 'GetSubscriptionStateResponse')
66
73
  HealthCheckArn = Shapes::StringShape.new(name: 'HealthCheckArn')
@@ -90,6 +97,8 @@ module Aws::Shield
90
97
  MitigationList = Shapes::ListShape.new(name: 'MitigationList')
91
98
  NoAssociatedRoleException = Shapes::StructureShape.new(name: 'NoAssociatedRoleException')
92
99
  OptimisticLockException = Shapes::StructureShape.new(name: 'OptimisticLockException')
100
+ PhoneNumber = Shapes::StringShape.new(name: 'PhoneNumber')
101
+ ProactiveEngagementStatus = Shapes::StringShape.new(name: 'ProactiveEngagementStatus')
93
102
  Protection = Shapes::StructureShape.new(name: 'Protection')
94
103
  ProtectionId = Shapes::StringShape.new(name: 'ProtectionId')
95
104
  ProtectionName = Shapes::StringShape.new(name: 'ProtectionName')
@@ -142,6 +151,11 @@ module Aws::Shield
142
151
 
143
152
  AssociateHealthCheckResponse.struct_class = Types::AssociateHealthCheckResponse
144
153
 
154
+ AssociateProactiveEngagementDetailsRequest.add_member(:emergency_contact_list, Shapes::ShapeRef.new(shape: EmergencyContactList, required: true, location_name: "EmergencyContactList"))
155
+ AssociateProactiveEngagementDetailsRequest.struct_class = Types::AssociateProactiveEngagementDetailsRequest
156
+
157
+ AssociateProactiveEngagementDetailsResponse.struct_class = Types::AssociateProactiveEngagementDetailsResponse
158
+
145
159
  AttackDetail.add_member(:attack_id, Shapes::ShapeRef.new(shape: AttackId, location_name: "AttackId"))
146
160
  AttackDetail.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "ResourceArn"))
147
161
  AttackDetail.add_member(:sub_resources, Shapes::ShapeRef.new(shape: SubResourceSummaryList, location_name: "SubResources"))
@@ -228,6 +242,10 @@ module Aws::Shield
228
242
  DescribeSubscriptionResponse.add_member(:subscription, Shapes::ShapeRef.new(shape: Subscription, location_name: "Subscription"))
229
243
  DescribeSubscriptionResponse.struct_class = Types::DescribeSubscriptionResponse
230
244
 
245
+ DisableProactiveEngagementRequest.struct_class = Types::DisableProactiveEngagementRequest
246
+
247
+ DisableProactiveEngagementResponse.struct_class = Types::DisableProactiveEngagementResponse
248
+
231
249
  DisassociateDRTLogBucketRequest.add_member(:log_bucket, Shapes::ShapeRef.new(shape: LogBucket, required: true, location_name: "LogBucket"))
232
250
  DisassociateDRTLogBucketRequest.struct_class = Types::DisassociateDRTLogBucketRequest
233
251
 
@@ -244,10 +262,16 @@ module Aws::Shield
244
262
  DisassociateHealthCheckResponse.struct_class = Types::DisassociateHealthCheckResponse
245
263
 
246
264
  EmergencyContact.add_member(:email_address, Shapes::ShapeRef.new(shape: EmailAddress, required: true, location_name: "EmailAddress"))
265
+ EmergencyContact.add_member(:phone_number, Shapes::ShapeRef.new(shape: PhoneNumber, location_name: "PhoneNumber"))
266
+ EmergencyContact.add_member(:contact_notes, Shapes::ShapeRef.new(shape: ContactNotes, location_name: "ContactNotes"))
247
267
  EmergencyContact.struct_class = Types::EmergencyContact
248
268
 
249
269
  EmergencyContactList.member = Shapes::ShapeRef.new(shape: EmergencyContact)
250
270
 
271
+ EnableProactiveEngagementRequest.struct_class = Types::EnableProactiveEngagementRequest
272
+
273
+ EnableProactiveEngagementResponse.struct_class = Types::EnableProactiveEngagementResponse
274
+
251
275
  GetSubscriptionStateRequest.struct_class = Types::GetSubscriptionStateRequest
252
276
 
253
277
  GetSubscriptionStateResponse.add_member(:subscription_state, Shapes::ShapeRef.new(shape: SubscriptionState, required: true, location_name: "SubscriptionState"))
@@ -345,6 +369,7 @@ module Aws::Shield
345
369
  Subscription.add_member(:time_commitment_in_seconds, Shapes::ShapeRef.new(shape: DurationInSeconds, location_name: "TimeCommitmentInSeconds"))
346
370
  Subscription.add_member(:auto_renew, Shapes::ShapeRef.new(shape: AutoRenew, location_name: "AutoRenew"))
347
371
  Subscription.add_member(:limits, Shapes::ShapeRef.new(shape: Limits, location_name: "Limits"))
372
+ Subscription.add_member(:proactive_engagement_status, Shapes::ShapeRef.new(shape: ProactiveEngagementStatus, location_name: "ProactiveEngagementStatus"))
348
373
  Subscription.struct_class = Types::Subscription
349
374
 
350
375
  SummarizedAttackVector.add_member(:vector_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "VectorType"))
@@ -441,6 +466,19 @@ module Aws::Shield
441
466
  o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
442
467
  end)
443
468
 
469
+ api.add_operation(:associate_proactive_engagement_details, Seahorse::Model::Operation.new.tap do |o|
470
+ o.name = "AssociateProactiveEngagementDetails"
471
+ o.http_method = "POST"
472
+ o.http_request_uri = "/"
473
+ o.input = Shapes::ShapeRef.new(shape: AssociateProactiveEngagementDetailsRequest)
474
+ o.output = Shapes::ShapeRef.new(shape: AssociateProactiveEngagementDetailsResponse)
475
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
476
+ o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
477
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
478
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
479
+ o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
480
+ end)
481
+
444
482
  api.add_operation(:create_protection, Seahorse::Model::Operation.new.tap do |o|
445
483
  o.name = "CreateProtection"
446
484
  o.http_method = "POST"
@@ -540,6 +578,19 @@ module Aws::Shield
540
578
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
541
579
  end)
542
580
 
581
+ api.add_operation(:disable_proactive_engagement, Seahorse::Model::Operation.new.tap do |o|
582
+ o.name = "DisableProactiveEngagement"
583
+ o.http_method = "POST"
584
+ o.http_request_uri = "/"
585
+ o.input = Shapes::ShapeRef.new(shape: DisableProactiveEngagementRequest)
586
+ o.output = Shapes::ShapeRef.new(shape: DisableProactiveEngagementResponse)
587
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
588
+ o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
589
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
590
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
591
+ o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
592
+ end)
593
+
543
594
  api.add_operation(:disassociate_drt_log_bucket, Seahorse::Model::Operation.new.tap do |o|
544
595
  o.name = "DisassociateDRTLogBucket"
545
596
  o.http_method = "POST"
@@ -578,6 +629,19 @@ module Aws::Shield
578
629
  o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
579
630
  end)
580
631
 
632
+ api.add_operation(:enable_proactive_engagement, Seahorse::Model::Operation.new.tap do |o|
633
+ o.name = "EnableProactiveEngagement"
634
+ o.http_method = "POST"
635
+ o.http_request_uri = "/"
636
+ o.input = Shapes::ShapeRef.new(shape: EnableProactiveEngagementRequest)
637
+ o.output = Shapes::ShapeRef.new(shape: EnableProactiveEngagementResponse)
638
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
639
+ o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
640
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
641
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
642
+ o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
643
+ end)
644
+
581
645
  api.add_operation(:get_subscription_state, Seahorse::Model::Operation.new.tap do |o|
582
646
  o.name = "GetSubscriptionState"
583
647
  o.http_method = "POST"
@@ -596,6 +660,12 @@ module Aws::Shield
596
660
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
597
661
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
598
662
  o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
663
+ o[:pager] = Aws::Pager.new(
664
+ limit_key: "max_results",
665
+ tokens: {
666
+ "next_token" => "next_token"
667
+ }
668
+ )
599
669
  end)
600
670
 
601
671
  api.add_operation(:list_protections, Seahorse::Model::Operation.new.tap do |o|
@@ -607,6 +677,12 @@ module Aws::Shield
607
677
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
608
678
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
609
679
  o.errors << Shapes::ShapeRef.new(shape: InvalidPaginationTokenException)
680
+ o[:pager] = Aws::Pager.new(
681
+ limit_key: "max_results",
682
+ tokens: {
683
+ "next_token" => "next_token"
684
+ }
685
+ )
610
686
  end)
611
687
 
612
688
  api.add_operation(:update_emergency_contact_settings, Seahorse::Model::Operation.new.tap do |o|
@@ -22,9 +22,9 @@ module Aws::Shield
22
22
  include Aws::Structure
23
23
  end
24
24
 
25
- # In order to grant the necessary access to the DDoS Response Team, the
26
- # user submitting the request must have the `iam:PassRole` permission.
27
- # This error indicates the user did not have the appropriate
25
+ # In order to grant the necessary access to the DDoS Response Team
26
+ # (DRT), the user submitting the request must have the `iam:PassRole`
27
+ # permission. This error indicates the user did not have the appropriate
28
28
  # permissions. For more information, see [Granting a User Permissions to
29
29
  # Pass a Role to an AWS Service][1].
30
30
  #
@@ -126,6 +126,46 @@ module Aws::Shield
126
126
  #
127
127
  class AssociateHealthCheckResponse < Aws::EmptyStructure; end
128
128
 
129
+ # @note When making an API call, you may pass AssociateProactiveEngagementDetailsRequest
130
+ # data as a hash:
131
+ #
132
+ # {
133
+ # emergency_contact_list: [ # required
134
+ # {
135
+ # email_address: "EmailAddress", # required
136
+ # phone_number: "PhoneNumber",
137
+ # contact_notes: "ContactNotes",
138
+ # },
139
+ # ],
140
+ # }
141
+ #
142
+ # @!attribute [rw] emergency_contact_list
143
+ # A list of email addresses and phone numbers that the DDoS Response
144
+ # Team (DRT) can use to contact you for escalations to the DRT and to
145
+ # initiate proactive customer support.
146
+ #
147
+ # To enable proactive engagement, the contact list must include at
148
+ # least one phone number.
149
+ #
150
+ # <note markdown="1"> The contacts that you provide here replace any contacts that were
151
+ # already defined. If you already have contacts defined and want to
152
+ # use them, retrieve the list using `DescribeEmergencyContactSettings`
153
+ # and then provide it here.
154
+ #
155
+ # </note>
156
+ # @return [Array<Types::EmergencyContact>]
157
+ #
158
+ # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateProactiveEngagementDetailsRequest AWS API Documentation
159
+ #
160
+ class AssociateProactiveEngagementDetailsRequest < Struct.new(
161
+ :emergency_contact_list)
162
+ include Aws::Structure
163
+ end
164
+
165
+ # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateProactiveEngagementDetailsResponse AWS API Documentation
166
+ #
167
+ class AssociateProactiveEngagementDetailsResponse < Aws::EmptyStructure; end
168
+
129
169
  # The details of a DDoS attack.
130
170
  #
131
171
  # @!attribute [rw] attack_id
@@ -500,8 +540,10 @@ module Aws::Shield
500
540
  class DescribeEmergencyContactSettingsRequest < Aws::EmptyStructure; end
501
541
 
502
542
  # @!attribute [rw] emergency_contact_list
503
- # A list of email addresses that the DRT can use to contact you during
504
- # a suspected attack.
543
+ # A list of email addresses and phone numbers that the DDoS Response
544
+ # Team (DRT) can use to contact you if you have proactive engagement
545
+ # enabled, for escalations to the DRT and to initiate proactive
546
+ # customer support.
505
547
  # @return [Array<Types::EmergencyContact>]
506
548
  #
507
549
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeEmergencyContactSettingsResponse AWS API Documentation
@@ -569,6 +611,16 @@ module Aws::Shield
569
611
  include Aws::Structure
570
612
  end
571
613
 
614
+ # @api private
615
+ #
616
+ # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisableProactiveEngagementRequest AWS API Documentation
617
+ #
618
+ class DisableProactiveEngagementRequest < Aws::EmptyStructure; end
619
+
620
+ # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisableProactiveEngagementResponse AWS API Documentation
621
+ #
622
+ class DisableProactiveEngagementResponse < Aws::EmptyStructure; end
623
+
572
624
  # @note When making an API call, you may pass DisassociateDRTLogBucketRequest
573
625
  # data as a hash:
574
626
  #
@@ -631,28 +683,50 @@ module Aws::Shield
631
683
  #
632
684
  class DisassociateHealthCheckResponse < Aws::EmptyStructure; end
633
685
 
634
- # Contact information that the DRT can use to contact you during a
635
- # suspected attack.
686
+ # Contact information that the DRT can use to contact you if you have
687
+ # proactive engagement enabled, for escalations to the DRT and to
688
+ # initiate proactive customer support.
636
689
  #
637
690
  # @note When making an API call, you may pass EmergencyContact
638
691
  # data as a hash:
639
692
  #
640
693
  # {
641
694
  # email_address: "EmailAddress", # required
695
+ # phone_number: "PhoneNumber",
696
+ # contact_notes: "ContactNotes",
642
697
  # }
643
698
  #
644
699
  # @!attribute [rw] email_address
645
- # An email address that the DRT can use to contact you during a
646
- # suspected attack.
700
+ # The email address for the contact.
701
+ # @return [String]
702
+ #
703
+ # @!attribute [rw] phone_number
704
+ # The phone number for the contact.
705
+ # @return [String]
706
+ #
707
+ # @!attribute [rw] contact_notes
708
+ # Additional notes regarding the contact.
647
709
  # @return [String]
648
710
  #
649
711
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/EmergencyContact AWS API Documentation
650
712
  #
651
713
  class EmergencyContact < Struct.new(
652
- :email_address)
714
+ :email_address,
715
+ :phone_number,
716
+ :contact_notes)
653
717
  include Aws::Structure
654
718
  end
655
719
 
720
+ # @api private
721
+ #
722
+ # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/EnableProactiveEngagementRequest AWS API Documentation
723
+ #
724
+ class EnableProactiveEngagementRequest < Aws::EmptyStructure; end
725
+
726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/EnableProactiveEngagementResponse AWS API Documentation
727
+ #
728
+ class EnableProactiveEngagementResponse < Aws::EmptyStructure; end
729
+
656
730
  # @api private
657
731
  #
658
732
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/GetSubscriptionStateRequest AWS API Documentation
@@ -976,8 +1050,8 @@ module Aws::Shield
976
1050
  include Aws::Structure
977
1051
  end
978
1052
 
979
- # Exception that indicates that the protection state has been modified
980
- # by another client. You can retry the request.
1053
+ # Exception that indicates that the resource state has been modified by
1054
+ # another client. Retrieve the resource and then retry your request.
981
1055
  #
982
1056
  # @!attribute [rw] message
983
1057
  # @return [String]
@@ -1107,6 +1181,19 @@ module Aws::Shield
1107
1181
  # Specifies how many protections of a given type you can create.
1108
1182
  # @return [Array<Types::Limit>]
1109
1183
  #
1184
+ # @!attribute [rw] proactive_engagement_status
1185
+ # If `ENABLED`, the DDoS Response Team (DRT) will use email and phone
1186
+ # to notify contacts about escalations to the DRT and to initiate
1187
+ # proactive customer support.
1188
+ #
1189
+ # If `PENDING`, you have requested proactive engagement and the
1190
+ # request is pending. The status changes to `ENABLED` when your
1191
+ # request is fully processed.
1192
+ #
1193
+ # If `DISABLED`, the DRT will not proactively notify contacts about
1194
+ # escalations or to initiate proactive customer support.
1195
+ # @return [String]
1196
+ #
1110
1197
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/Subscription AWS API Documentation
1111
1198
  #
1112
1199
  class Subscription < Struct.new(
@@ -1114,7 +1201,8 @@ module Aws::Shield
1114
1201
  :end_time,
1115
1202
  :time_commitment_in_seconds,
1116
1203
  :auto_renew,
1117
- :limits)
1204
+ :limits,
1205
+ :proactive_engagement_status)
1118
1206
  include Aws::Structure
1119
1207
  end
1120
1208
 
@@ -1217,13 +1305,20 @@ module Aws::Shield
1217
1305
  # emergency_contact_list: [
1218
1306
  # {
1219
1307
  # email_address: "EmailAddress", # required
1308
+ # phone_number: "PhoneNumber",
1309
+ # contact_notes: "ContactNotes",
1220
1310
  # },
1221
1311
  # ],
1222
1312
  # }
1223
1313
  #
1224
1314
  # @!attribute [rw] emergency_contact_list
1225
- # A list of email addresses that the DRT can use to contact you during
1226
- # a suspected attack.
1315
+ # A list of email addresses and phone numbers that the DDoS Response
1316
+ # Team (DRT) can use to contact you if you have proactive engagement
1317
+ # enabled, for escalations to the DRT and to initiate proactive
1318
+ # customer support.
1319
+ #
1320
+ # If you have proactive engagement enabled, the contact list must
1321
+ # include at least one phone number.
1227
1322
  # @return [Array<Types::EmergencyContact>]
1228
1323
  #
1229
1324
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateEmergencyContactSettingsRequest AWS API Documentation
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.25.0
4
+ version: 1.26.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: 2020-05-28 00:00:00.000000000 Z
11
+ date: 2020-06-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core