aws-sdk-shield 1.29.0 → 1.34.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 +3 -2
- data/lib/aws-sdk-shield/client.rb +375 -23
- data/lib/aws-sdk-shield/client_api.rb +231 -0
- data/lib/aws-sdk-shield/errors.rb +20 -0
- data/lib/aws-sdk-shield/types.rb +643 -35
- metadata +4 -4
data/lib/aws-sdk-shield/types.rb
CHANGED
@@ -251,7 +251,7 @@ module Aws::Shield
|
|
251
251
|
# @return [String]
|
252
252
|
#
|
253
253
|
# @!attribute [rw] top_contributors
|
254
|
-
# The array of
|
254
|
+
# The array of contributor objects that includes the top five
|
255
255
|
# contributors to an attack.
|
256
256
|
# @return [Array<Types::Contributor>]
|
257
257
|
#
|
@@ -276,6 +276,29 @@ module Aws::Shield
|
|
276
276
|
include Aws::Structure
|
277
277
|
end
|
278
278
|
|
279
|
+
# A single attack statistics data record. This is returned by
|
280
|
+
# DescribeAttackStatistics along with a time range indicating the time
|
281
|
+
# period that the attack statistics apply to.
|
282
|
+
#
|
283
|
+
# @!attribute [rw] attack_volume
|
284
|
+
# Information about the volume of attacks during the time period. If
|
285
|
+
# the accompanying `AttackCount` is zero, this setting might be empty.
|
286
|
+
# @return [Types::AttackVolume]
|
287
|
+
#
|
288
|
+
# @!attribute [rw] attack_count
|
289
|
+
# The number of attacks detected during the time period. This is
|
290
|
+
# always present, but might be zero.
|
291
|
+
# @return [Integer]
|
292
|
+
#
|
293
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AttackStatisticsDataItem AWS API Documentation
|
294
|
+
#
|
295
|
+
class AttackStatisticsDataItem < Struct.new(
|
296
|
+
:attack_volume,
|
297
|
+
:attack_count)
|
298
|
+
SENSITIVE = []
|
299
|
+
include Aws::Structure
|
300
|
+
end
|
301
|
+
|
279
302
|
# Summarizes all DDoS attacks for a specified time period.
|
280
303
|
#
|
281
304
|
# @!attribute [rw] attack_id
|
@@ -370,6 +393,51 @@ module Aws::Shield
|
|
370
393
|
include Aws::Structure
|
371
394
|
end
|
372
395
|
|
396
|
+
# Information about the volume of attacks during the time period,
|
397
|
+
# included in an AttackStatisticsDataItem. If the accompanying
|
398
|
+
# `AttackCount` in the statistics object is zero, this setting might be
|
399
|
+
# empty.
|
400
|
+
#
|
401
|
+
# @!attribute [rw] bits_per_second
|
402
|
+
# A statistics object that uses bits per second as the unit. This is
|
403
|
+
# included for network level attacks.
|
404
|
+
# @return [Types::AttackVolumeStatistics]
|
405
|
+
#
|
406
|
+
# @!attribute [rw] packets_per_second
|
407
|
+
# A statistics object that uses packets per second as the unit. This
|
408
|
+
# is included for network level attacks.
|
409
|
+
# @return [Types::AttackVolumeStatistics]
|
410
|
+
#
|
411
|
+
# @!attribute [rw] requests_per_second
|
412
|
+
# A statistics object that uses requests per second as the unit. This
|
413
|
+
# is included for application level attacks, and is only available for
|
414
|
+
# accounts that are subscribed to Shield Advanced.
|
415
|
+
# @return [Types::AttackVolumeStatistics]
|
416
|
+
#
|
417
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AttackVolume AWS API Documentation
|
418
|
+
#
|
419
|
+
class AttackVolume < Struct.new(
|
420
|
+
:bits_per_second,
|
421
|
+
:packets_per_second,
|
422
|
+
:requests_per_second)
|
423
|
+
SENSITIVE = []
|
424
|
+
include Aws::Structure
|
425
|
+
end
|
426
|
+
|
427
|
+
# Statistics objects for the various data types in AttackVolume.
|
428
|
+
#
|
429
|
+
# @!attribute [rw] max
|
430
|
+
# The maximum attack volume observed for the given unit.
|
431
|
+
# @return [Float]
|
432
|
+
#
|
433
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AttackVolumeStatistics AWS API Documentation
|
434
|
+
#
|
435
|
+
class AttackVolumeStatistics < Struct.new(
|
436
|
+
:max)
|
437
|
+
SENSITIVE = []
|
438
|
+
include Aws::Structure
|
439
|
+
end
|
440
|
+
|
373
441
|
# A contributor to the attack and their contribution.
|
374
442
|
#
|
375
443
|
# @!attribute [rw] name
|
@@ -393,6 +461,80 @@ module Aws::Shield
|
|
393
461
|
include Aws::Structure
|
394
462
|
end
|
395
463
|
|
464
|
+
# @note When making an API call, you may pass CreateProtectionGroupRequest
|
465
|
+
# data as a hash:
|
466
|
+
#
|
467
|
+
# {
|
468
|
+
# protection_group_id: "ProtectionGroupId", # required
|
469
|
+
# aggregation: "SUM", # required, accepts SUM, MEAN, MAX
|
470
|
+
# pattern: "ALL", # required, accepts ALL, ARBITRARY, BY_RESOURCE_TYPE
|
471
|
+
# resource_type: "CLOUDFRONT_DISTRIBUTION", # accepts CLOUDFRONT_DISTRIBUTION, ROUTE_53_HOSTED_ZONE, ELASTIC_IP_ALLOCATION, CLASSIC_LOAD_BALANCER, APPLICATION_LOAD_BALANCER, GLOBAL_ACCELERATOR
|
472
|
+
# members: ["ResourceArn"],
|
473
|
+
# }
|
474
|
+
#
|
475
|
+
# @!attribute [rw] protection_group_id
|
476
|
+
# The name of the protection group. You use this to identify the
|
477
|
+
# protection group in lists and to manage the protection group, for
|
478
|
+
# example to update, delete, or describe it.
|
479
|
+
# @return [String]
|
480
|
+
#
|
481
|
+
# @!attribute [rw] aggregation
|
482
|
+
# Defines how AWS Shield combines resource data for the group in order
|
483
|
+
# to detect, mitigate, and report events.
|
484
|
+
#
|
485
|
+
# * Sum - Use the total traffic across the group. This is a good
|
486
|
+
# choice for most cases. Examples include Elastic IP addresses for
|
487
|
+
# EC2 instances that scale manually or automatically.
|
488
|
+
#
|
489
|
+
# * Mean - Use the average of the traffic across the group. This is a
|
490
|
+
# good choice for resources that share traffic uniformly. Examples
|
491
|
+
# include accelerators and load balancers.
|
492
|
+
#
|
493
|
+
# * Max - Use the highest traffic from each resource. This is useful
|
494
|
+
# for resources that don't share traffic and for resources that
|
495
|
+
# share that traffic in a non-uniform way. Examples include
|
496
|
+
# CloudFront distributions and origin resources for CloudFront
|
497
|
+
# distributions.
|
498
|
+
# @return [String]
|
499
|
+
#
|
500
|
+
# @!attribute [rw] pattern
|
501
|
+
# The criteria to use to choose the protected resources for inclusion
|
502
|
+
# in the group. You can include all resources that have protections,
|
503
|
+
# provide a list of resource Amazon Resource Names (ARNs), or include
|
504
|
+
# all resources of a specified resource type.
|
505
|
+
# @return [String]
|
506
|
+
#
|
507
|
+
# @!attribute [rw] resource_type
|
508
|
+
# The resource type to include in the protection group. All protected
|
509
|
+
# resources of this type are included in the protection group. Newly
|
510
|
+
# protected resources of this type are automatically added to the
|
511
|
+
# group. You must set this when you set `Pattern` to
|
512
|
+
# `BY_RESOURCE_TYPE` and you must not set it for any other `Pattern`
|
513
|
+
# setting.
|
514
|
+
# @return [String]
|
515
|
+
#
|
516
|
+
# @!attribute [rw] members
|
517
|
+
# The Amazon Resource Names (ARNs) of the resources to include in the
|
518
|
+
# protection group. You must set this when you set `Pattern` to
|
519
|
+
# `ARBITRARY` and you must not set it for any other `Pattern` setting.
|
520
|
+
# @return [Array<String>]
|
521
|
+
#
|
522
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateProtectionGroupRequest AWS API Documentation
|
523
|
+
#
|
524
|
+
class CreateProtectionGroupRequest < Struct.new(
|
525
|
+
:protection_group_id,
|
526
|
+
:aggregation,
|
527
|
+
:pattern,
|
528
|
+
:resource_type,
|
529
|
+
:members)
|
530
|
+
SENSITIVE = []
|
531
|
+
include Aws::Structure
|
532
|
+
end
|
533
|
+
|
534
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateProtectionGroupResponse AWS API Documentation
|
535
|
+
#
|
536
|
+
class CreateProtectionGroupResponse < Aws::EmptyStructure; end
|
537
|
+
|
396
538
|
# @note When making an API call, you may pass CreateProtectionRequest
|
397
539
|
# data as a hash:
|
398
540
|
#
|
@@ -464,6 +606,31 @@ module Aws::Shield
|
|
464
606
|
#
|
465
607
|
class CreateSubscriptionResponse < Aws::EmptyStructure; end
|
466
608
|
|
609
|
+
# @note When making an API call, you may pass DeleteProtectionGroupRequest
|
610
|
+
# data as a hash:
|
611
|
+
#
|
612
|
+
# {
|
613
|
+
# protection_group_id: "ProtectionGroupId", # required
|
614
|
+
# }
|
615
|
+
#
|
616
|
+
# @!attribute [rw] protection_group_id
|
617
|
+
# The name of the protection group. You use this to identify the
|
618
|
+
# protection group in lists and to manage the protection group, for
|
619
|
+
# example to update, delete, or describe it.
|
620
|
+
# @return [String]
|
621
|
+
#
|
622
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteProtectionGroupRequest AWS API Documentation
|
623
|
+
#
|
624
|
+
class DeleteProtectionGroupRequest < Struct.new(
|
625
|
+
:protection_group_id)
|
626
|
+
SENSITIVE = []
|
627
|
+
include Aws::Structure
|
628
|
+
end
|
629
|
+
|
630
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteProtectionGroupResponse AWS API Documentation
|
631
|
+
#
|
632
|
+
class DeleteProtectionGroupResponse < Aws::EmptyStructure; end
|
633
|
+
|
467
634
|
# @note When making an API call, you may pass DeleteProtectionRequest
|
468
635
|
# data as a hash:
|
469
636
|
#
|
@@ -528,6 +695,29 @@ module Aws::Shield
|
|
528
695
|
include Aws::Structure
|
529
696
|
end
|
530
697
|
|
698
|
+
# @api private
|
699
|
+
#
|
700
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeAttackStatisticsRequest AWS API Documentation
|
701
|
+
#
|
702
|
+
class DescribeAttackStatisticsRequest < Aws::EmptyStructure; end
|
703
|
+
|
704
|
+
# @!attribute [rw] time_range
|
705
|
+
# The time range.
|
706
|
+
# @return [Types::TimeRange]
|
707
|
+
#
|
708
|
+
# @!attribute [rw] data_items
|
709
|
+
# The data that describes the attacks detected during the time period.
|
710
|
+
# @return [Array<Types::AttackStatisticsDataItem>]
|
711
|
+
#
|
712
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeAttackStatisticsResponse AWS API Documentation
|
713
|
+
#
|
714
|
+
class DescribeAttackStatisticsResponse < Struct.new(
|
715
|
+
:time_range,
|
716
|
+
:data_items)
|
717
|
+
SENSITIVE = []
|
718
|
+
include Aws::Structure
|
719
|
+
end
|
720
|
+
|
531
721
|
# @api private
|
532
722
|
#
|
533
723
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeDRTAccessRequest AWS API Documentation
|
@@ -573,6 +763,41 @@ module Aws::Shield
|
|
573
763
|
include Aws::Structure
|
574
764
|
end
|
575
765
|
|
766
|
+
# @note When making an API call, you may pass DescribeProtectionGroupRequest
|
767
|
+
# data as a hash:
|
768
|
+
#
|
769
|
+
# {
|
770
|
+
# protection_group_id: "ProtectionGroupId", # required
|
771
|
+
# }
|
772
|
+
#
|
773
|
+
# @!attribute [rw] protection_group_id
|
774
|
+
# The name of the protection group. You use this to identify the
|
775
|
+
# protection group in lists and to manage the protection group, for
|
776
|
+
# example to update, delete, or describe it.
|
777
|
+
# @return [String]
|
778
|
+
#
|
779
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtectionGroupRequest AWS API Documentation
|
780
|
+
#
|
781
|
+
class DescribeProtectionGroupRequest < Struct.new(
|
782
|
+
:protection_group_id)
|
783
|
+
SENSITIVE = []
|
784
|
+
include Aws::Structure
|
785
|
+
end
|
786
|
+
|
787
|
+
# @!attribute [rw] protection_group
|
788
|
+
# A grouping of protected resources that you and AWS Shield Advanced
|
789
|
+
# can monitor as a collective. This resource grouping improves the
|
790
|
+
# accuracy of detection and reduces false positives.
|
791
|
+
# @return [Types::ProtectionGroup]
|
792
|
+
#
|
793
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtectionGroupResponse AWS API Documentation
|
794
|
+
#
|
795
|
+
class DescribeProtectionGroupResponse < Struct.new(
|
796
|
+
:protection_group)
|
797
|
+
SENSITIVE = []
|
798
|
+
include Aws::Structure
|
799
|
+
end
|
800
|
+
|
576
801
|
# @note When making an API call, you may pass DescribeProtectionRequest
|
577
802
|
# data as a hash:
|
578
803
|
#
|
@@ -815,15 +1040,26 @@ module Aws::Shield
|
|
815
1040
|
end
|
816
1041
|
|
817
1042
|
# Exception that indicates that the parameters passed to the API are
|
818
|
-
# invalid.
|
1043
|
+
# invalid. If available, this exception includes details in additional
|
1044
|
+
# properties.
|
819
1045
|
#
|
820
1046
|
# @!attribute [rw] message
|
821
1047
|
# @return [String]
|
822
1048
|
#
|
1049
|
+
# @!attribute [rw] reason
|
1050
|
+
# Additional information about the exception.
|
1051
|
+
# @return [String]
|
1052
|
+
#
|
1053
|
+
# @!attribute [rw] fields
|
1054
|
+
# Fields that caused the exception.
|
1055
|
+
# @return [Array<Types::ValidationExceptionField>]
|
1056
|
+
#
|
823
1057
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/InvalidParameterException AWS API Documentation
|
824
1058
|
#
|
825
1059
|
class InvalidParameterException < Struct.new(
|
826
|
-
:message
|
1060
|
+
:message,
|
1061
|
+
:reason,
|
1062
|
+
:fields)
|
827
1063
|
SENSITIVE = []
|
828
1064
|
include Aws::Structure
|
829
1065
|
end
|
@@ -938,15 +1174,15 @@ module Aws::Shield
|
|
938
1174
|
# @return [String]
|
939
1175
|
#
|
940
1176
|
# @!attribute [rw] max_results
|
941
|
-
# The maximum number of AttackSummary objects to
|
942
|
-
#
|
943
|
-
#
|
944
|
-
# This is a maximum value
|
945
|
-
#
|
946
|
-
#
|
947
|
-
#
|
948
|
-
#
|
949
|
-
#
|
1177
|
+
# The maximum number of AttackSummary objects to return. If you leave
|
1178
|
+
# this blank, Shield Advanced returns the first 20 results.
|
1179
|
+
#
|
1180
|
+
# This is a maximum value. Shield Advanced might return the results in
|
1181
|
+
# smaller batches. That is, the number of objects returned could be
|
1182
|
+
# less than `MaxResults`, even if there are still more objects yet to
|
1183
|
+
# return. If there are more objects to return, Shield Advanced returns
|
1184
|
+
# a value in `NextToken` that you can use in your next request, to get
|
1185
|
+
# the next batch of objects.
|
950
1186
|
# @return [Integer]
|
951
1187
|
#
|
952
1188
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListAttacksRequest AWS API Documentation
|
@@ -971,10 +1207,10 @@ module Aws::Shield
|
|
971
1207
|
# value for the `NextMarker` parameter in a subsequent call to
|
972
1208
|
# `ListAttacks` to retrieve the next set of items.
|
973
1209
|
#
|
974
|
-
#
|
975
|
-
# smaller than the number specified by MaxResults. If there
|
976
|
-
#
|
977
|
-
# `NextToken`.
|
1210
|
+
# Shield Advanced might return the list of AttackSummary objects in
|
1211
|
+
# batches smaller than the number specified by MaxResults. If there
|
1212
|
+
# are more attack summary objects to return, Shield Advanced will
|
1213
|
+
# always also return a `NextToken`.
|
978
1214
|
# @return [String]
|
979
1215
|
#
|
980
1216
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListAttacksResponse AWS API Documentation
|
@@ -986,6 +1222,59 @@ module Aws::Shield
|
|
986
1222
|
include Aws::Structure
|
987
1223
|
end
|
988
1224
|
|
1225
|
+
# @note When making an API call, you may pass ListProtectionGroupsRequest
|
1226
|
+
# data as a hash:
|
1227
|
+
#
|
1228
|
+
# {
|
1229
|
+
# next_token: "Token",
|
1230
|
+
# max_results: 1,
|
1231
|
+
# }
|
1232
|
+
#
|
1233
|
+
# @!attribute [rw] next_token
|
1234
|
+
# The next token value from a previous call to `ListProtectionGroups`.
|
1235
|
+
# Pass null if this is the first call.
|
1236
|
+
# @return [String]
|
1237
|
+
#
|
1238
|
+
# @!attribute [rw] max_results
|
1239
|
+
# The maximum number of ProtectionGroup objects to return. If you
|
1240
|
+
# leave this blank, Shield Advanced returns the first 20 results.
|
1241
|
+
#
|
1242
|
+
# This is a maximum value. Shield Advanced might return the results in
|
1243
|
+
# smaller batches. That is, the number of objects returned could be
|
1244
|
+
# less than `MaxResults`, even if there are still more objects yet to
|
1245
|
+
# return. If there are more objects to return, Shield Advanced returns
|
1246
|
+
# a value in `NextToken` that you can use in your next request, to get
|
1247
|
+
# the next batch of objects.
|
1248
|
+
# @return [Integer]
|
1249
|
+
#
|
1250
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtectionGroupsRequest AWS API Documentation
|
1251
|
+
#
|
1252
|
+
class ListProtectionGroupsRequest < Struct.new(
|
1253
|
+
:next_token,
|
1254
|
+
:max_results)
|
1255
|
+
SENSITIVE = []
|
1256
|
+
include Aws::Structure
|
1257
|
+
end
|
1258
|
+
|
1259
|
+
# @!attribute [rw] protection_groups
|
1260
|
+
# @return [Array<Types::ProtectionGroup>]
|
1261
|
+
#
|
1262
|
+
# @!attribute [rw] next_token
|
1263
|
+
# If you specify a value for `MaxResults` and you have more protection
|
1264
|
+
# groups than the value of MaxResults, AWS Shield Advanced returns
|
1265
|
+
# this token that you can use in your next request, to get the next
|
1266
|
+
# batch of objects.
|
1267
|
+
# @return [String]
|
1268
|
+
#
|
1269
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtectionGroupsResponse AWS API Documentation
|
1270
|
+
#
|
1271
|
+
class ListProtectionGroupsResponse < Struct.new(
|
1272
|
+
:protection_groups,
|
1273
|
+
:next_token)
|
1274
|
+
SENSITIVE = []
|
1275
|
+
include Aws::Structure
|
1276
|
+
end
|
1277
|
+
|
989
1278
|
# @note When making an API call, you may pass ListProtectionsRequest
|
990
1279
|
# data as a hash:
|
991
1280
|
#
|
@@ -1000,15 +1289,15 @@ module Aws::Shield
|
|
1000
1289
|
# @return [String]
|
1001
1290
|
#
|
1002
1291
|
# @!attribute [rw] max_results
|
1003
|
-
# The maximum number of Protection objects to
|
1004
|
-
#
|
1005
|
-
#
|
1006
|
-
# This is a maximum value
|
1007
|
-
#
|
1008
|
-
#
|
1009
|
-
#
|
1010
|
-
#
|
1011
|
-
#
|
1292
|
+
# The maximum number of Protection objects to return. If you leave
|
1293
|
+
# this blank, Shield Advanced returns the first 20 results.
|
1294
|
+
#
|
1295
|
+
# This is a maximum value. Shield Advanced might return the results in
|
1296
|
+
# smaller batches. That is, the number of objects returned could be
|
1297
|
+
# less than `MaxResults`, even if there are still more objects yet to
|
1298
|
+
# return. If there are more objects to return, Shield Advanced returns
|
1299
|
+
# a value in `NextToken` that you can use in your next request, to get
|
1300
|
+
# the next batch of objects.
|
1012
1301
|
# @return [Integer]
|
1013
1302
|
#
|
1014
1303
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtectionsRequest AWS API Documentation
|
@@ -1033,10 +1322,10 @@ module Aws::Shield
|
|
1033
1322
|
# previous response to get information about another batch of
|
1034
1323
|
# Protections.
|
1035
1324
|
#
|
1036
|
-
#
|
1037
|
-
# smaller than the number specified by MaxResults. If there
|
1038
|
-
# Protection objects to return,
|
1039
|
-
# `NextToken`.
|
1325
|
+
# Shield Advanced might return the list of Protection objects in
|
1326
|
+
# batches smaller than the number specified by MaxResults. If there
|
1327
|
+
# are more Protection objects to return, Shield Advanced will always
|
1328
|
+
# also return a `NextToken`.
|
1040
1329
|
# @return [String]
|
1041
1330
|
#
|
1042
1331
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtectionsResponse AWS API Documentation
|
@@ -1048,6 +1337,70 @@ module Aws::Shield
|
|
1048
1337
|
include Aws::Structure
|
1049
1338
|
end
|
1050
1339
|
|
1340
|
+
# @note When making an API call, you may pass ListResourcesInProtectionGroupRequest
|
1341
|
+
# data as a hash:
|
1342
|
+
#
|
1343
|
+
# {
|
1344
|
+
# protection_group_id: "ProtectionGroupId", # required
|
1345
|
+
# next_token: "Token",
|
1346
|
+
# max_results: 1,
|
1347
|
+
# }
|
1348
|
+
#
|
1349
|
+
# @!attribute [rw] protection_group_id
|
1350
|
+
# The name of the protection group. You use this to identify the
|
1351
|
+
# protection group in lists and to manage the protection group, for
|
1352
|
+
# example to update, delete, or describe it.
|
1353
|
+
# @return [String]
|
1354
|
+
#
|
1355
|
+
# @!attribute [rw] next_token
|
1356
|
+
# The next token value from a previous call to
|
1357
|
+
# `ListResourcesInProtectionGroup`. Pass null if this is the first
|
1358
|
+
# call.
|
1359
|
+
# @return [String]
|
1360
|
+
#
|
1361
|
+
# @!attribute [rw] max_results
|
1362
|
+
# The maximum number of resource ARN objects to return. If you leave
|
1363
|
+
# this blank, Shield Advanced returns the first 20 results.
|
1364
|
+
#
|
1365
|
+
# This is a maximum value. Shield Advanced might return the results in
|
1366
|
+
# smaller batches. That is, the number of objects returned could be
|
1367
|
+
# less than `MaxResults`, even if there are still more objects yet to
|
1368
|
+
# return. If there are more objects to return, Shield Advanced returns
|
1369
|
+
# a value in `NextToken` that you can use in your next request, to get
|
1370
|
+
# the next batch of objects.
|
1371
|
+
# @return [Integer]
|
1372
|
+
#
|
1373
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListResourcesInProtectionGroupRequest AWS API Documentation
|
1374
|
+
#
|
1375
|
+
class ListResourcesInProtectionGroupRequest < Struct.new(
|
1376
|
+
:protection_group_id,
|
1377
|
+
:next_token,
|
1378
|
+
:max_results)
|
1379
|
+
SENSITIVE = []
|
1380
|
+
include Aws::Structure
|
1381
|
+
end
|
1382
|
+
|
1383
|
+
# @!attribute [rw] resource_arns
|
1384
|
+
# The Amazon Resource Names (ARNs) of the resources that are included
|
1385
|
+
# in the protection group.
|
1386
|
+
# @return [Array<String>]
|
1387
|
+
#
|
1388
|
+
# @!attribute [rw] next_token
|
1389
|
+
# If you specify a value for `MaxResults` and you have more resources
|
1390
|
+
# in the protection group than the value of MaxResults, AWS Shield
|
1391
|
+
# Advanced returns this token that you can use in your next request,
|
1392
|
+
# to get the next batch of objects.
|
1393
|
+
# @return [String]
|
1394
|
+
#
|
1395
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListResourcesInProtectionGroupResponse AWS API Documentation
|
1396
|
+
#
|
1397
|
+
class ListResourcesInProtectionGroupResponse < Struct.new(
|
1398
|
+
:resource_arns,
|
1399
|
+
:next_token)
|
1400
|
+
SENSITIVE = []
|
1401
|
+
include Aws::Structure
|
1402
|
+
end
|
1403
|
+
|
1051
1404
|
# You are trying to update a subscription that has not yet completed the
|
1052
1405
|
# 1-year commitment. You can change the `AutoRenew` parameter during the
|
1053
1406
|
# last 30 days of your subscription. This exception indicates that you
|
@@ -1112,7 +1465,7 @@ module Aws::Shield
|
|
1112
1465
|
# @return [String]
|
1113
1466
|
#
|
1114
1467
|
# @!attribute [rw] name
|
1115
|
-
# The
|
1468
|
+
# The name of the protection. For example, `My CloudFront
|
1116
1469
|
# distributions`.
|
1117
1470
|
# @return [String]
|
1118
1471
|
#
|
@@ -1137,28 +1490,167 @@ module Aws::Shield
|
|
1137
1490
|
include Aws::Structure
|
1138
1491
|
end
|
1139
1492
|
|
1140
|
-
#
|
1493
|
+
# A grouping of protected resources that you and AWS Shield Advanced can
|
1494
|
+
# monitor as a collective. This resource grouping improves the accuracy
|
1495
|
+
# of detection and reduces false positives.
|
1496
|
+
#
|
1497
|
+
# @!attribute [rw] protection_group_id
|
1498
|
+
# The name of the protection group. You use this to identify the
|
1499
|
+
# protection group in lists and to manage the protection group, for
|
1500
|
+
# example to update, delete, or describe it.
|
1501
|
+
# @return [String]
|
1502
|
+
#
|
1503
|
+
# @!attribute [rw] aggregation
|
1504
|
+
# Defines how AWS Shield combines resource data for the group in order
|
1505
|
+
# to detect, mitigate, and report events.
|
1506
|
+
#
|
1507
|
+
# * Sum - Use the total traffic across the group. This is a good
|
1508
|
+
# choice for most cases. Examples include Elastic IP addresses for
|
1509
|
+
# EC2 instances that scale manually or automatically.
|
1510
|
+
#
|
1511
|
+
# * Mean - Use the average of the traffic across the group. This is a
|
1512
|
+
# good choice for resources that share traffic uniformly. Examples
|
1513
|
+
# include accelerators and load balancers.
|
1514
|
+
#
|
1515
|
+
# * Max - Use the highest traffic from each resource. This is useful
|
1516
|
+
# for resources that don't share traffic and for resources that
|
1517
|
+
# share that traffic in a non-uniform way. Examples include
|
1518
|
+
# CloudFront distributions and origin resources for CloudFront
|
1519
|
+
# distributions.
|
1520
|
+
# @return [String]
|
1521
|
+
#
|
1522
|
+
# @!attribute [rw] pattern
|
1523
|
+
# The criteria to use to choose the protected resources for inclusion
|
1524
|
+
# in the group. You can include all resources that have protections,
|
1525
|
+
# provide a list of resource Amazon Resource Names (ARNs), or include
|
1526
|
+
# all resources of a specified resource type.
|
1527
|
+
# @return [String]
|
1528
|
+
#
|
1529
|
+
# @!attribute [rw] resource_type
|
1530
|
+
# The resource type to include in the protection group. All protected
|
1531
|
+
# resources of this type are included in the protection group. You
|
1532
|
+
# must set this when you set `Pattern` to `BY_RESOURCE_TYPE` and you
|
1533
|
+
# must not set it for any other `Pattern` setting.
|
1534
|
+
# @return [String]
|
1535
|
+
#
|
1536
|
+
# @!attribute [rw] members
|
1537
|
+
# The Amazon Resource Names (ARNs) of the resources to include in the
|
1538
|
+
# protection group. You must set this when you set `Pattern` to
|
1539
|
+
# `ARBITRARY` and you must not set it for any other `Pattern` setting.
|
1540
|
+
# @return [Array<String>]
|
1541
|
+
#
|
1542
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ProtectionGroup AWS API Documentation
|
1543
|
+
#
|
1544
|
+
class ProtectionGroup < Struct.new(
|
1545
|
+
:protection_group_id,
|
1546
|
+
:aggregation,
|
1547
|
+
:pattern,
|
1548
|
+
:resource_type,
|
1549
|
+
:members)
|
1550
|
+
SENSITIVE = []
|
1551
|
+
include Aws::Structure
|
1552
|
+
end
|
1553
|
+
|
1554
|
+
# Limits settings on protection groups with arbitrary pattern type.
|
1555
|
+
#
|
1556
|
+
# @!attribute [rw] max_members
|
1557
|
+
# The maximum number of resources you can specify for a single
|
1558
|
+
# arbitrary pattern in a protection group.
|
1559
|
+
# @return [Integer]
|
1560
|
+
#
|
1561
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ProtectionGroupArbitraryPatternLimits AWS API Documentation
|
1562
|
+
#
|
1563
|
+
class ProtectionGroupArbitraryPatternLimits < Struct.new(
|
1564
|
+
:max_members)
|
1565
|
+
SENSITIVE = []
|
1566
|
+
include Aws::Structure
|
1567
|
+
end
|
1568
|
+
|
1569
|
+
# Limits settings on protection groups for your subscription.
|
1570
|
+
#
|
1571
|
+
# @!attribute [rw] max_protection_groups
|
1572
|
+
# The maximum number of protection groups that you can have at one
|
1573
|
+
# time.
|
1574
|
+
# @return [Integer]
|
1575
|
+
#
|
1576
|
+
# @!attribute [rw] pattern_type_limits
|
1577
|
+
# Limits settings by pattern type in the protection groups for your
|
1578
|
+
# subscription.
|
1579
|
+
# @return [Types::ProtectionGroupPatternTypeLimits]
|
1580
|
+
#
|
1581
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ProtectionGroupLimits AWS API Documentation
|
1582
|
+
#
|
1583
|
+
class ProtectionGroupLimits < Struct.new(
|
1584
|
+
:max_protection_groups,
|
1585
|
+
:pattern_type_limits)
|
1586
|
+
SENSITIVE = []
|
1587
|
+
include Aws::Structure
|
1588
|
+
end
|
1589
|
+
|
1590
|
+
# Limits settings by pattern type in the protection groups for your
|
1591
|
+
# subscription.
|
1592
|
+
#
|
1593
|
+
# @!attribute [rw] arbitrary_pattern_limits
|
1594
|
+
# Limits settings on protection groups with arbitrary pattern type.
|
1595
|
+
# @return [Types::ProtectionGroupArbitraryPatternLimits]
|
1596
|
+
#
|
1597
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ProtectionGroupPatternTypeLimits AWS API Documentation
|
1598
|
+
#
|
1599
|
+
class ProtectionGroupPatternTypeLimits < Struct.new(
|
1600
|
+
:arbitrary_pattern_limits)
|
1601
|
+
SENSITIVE = []
|
1602
|
+
include Aws::Structure
|
1603
|
+
end
|
1604
|
+
|
1605
|
+
# Limits settings on protections for your subscription.
|
1606
|
+
#
|
1607
|
+
# @!attribute [rw] protected_resource_type_limits
|
1608
|
+
# The maximum number of resource types that you can specify in a
|
1609
|
+
# protection.
|
1610
|
+
# @return [Array<Types::Limit>]
|
1611
|
+
#
|
1612
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ProtectionLimits AWS API Documentation
|
1613
|
+
#
|
1614
|
+
class ProtectionLimits < Struct.new(
|
1615
|
+
:protected_resource_type_limits)
|
1616
|
+
SENSITIVE = []
|
1617
|
+
include Aws::Structure
|
1618
|
+
end
|
1619
|
+
|
1620
|
+
# Exception indicating the specified resource already exists. If
|
1621
|
+
# available, this exception includes details in additional properties.
|
1141
1622
|
#
|
1142
1623
|
# @!attribute [rw] message
|
1143
1624
|
# @return [String]
|
1144
1625
|
#
|
1626
|
+
# @!attribute [rw] resource_type
|
1627
|
+
# The type of resource that already exists.
|
1628
|
+
# @return [String]
|
1629
|
+
#
|
1145
1630
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ResourceAlreadyExistsException AWS API Documentation
|
1146
1631
|
#
|
1147
1632
|
class ResourceAlreadyExistsException < Struct.new(
|
1148
|
-
:message
|
1633
|
+
:message,
|
1634
|
+
:resource_type)
|
1149
1635
|
SENSITIVE = []
|
1150
1636
|
include Aws::Structure
|
1151
1637
|
end
|
1152
1638
|
|
1153
|
-
# Exception indicating the specified resource does not exist.
|
1639
|
+
# Exception indicating the specified resource does not exist. If
|
1640
|
+
# available, this exception includes details in additional properties.
|
1154
1641
|
#
|
1155
1642
|
# @!attribute [rw] message
|
1156
1643
|
# @return [String]
|
1157
1644
|
#
|
1645
|
+
# @!attribute [rw] resource_type
|
1646
|
+
# Type of resource.
|
1647
|
+
# @return [String]
|
1648
|
+
#
|
1158
1649
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ResourceNotFoundException AWS API Documentation
|
1159
1650
|
#
|
1160
1651
|
class ResourceNotFoundException < Struct.new(
|
1161
|
-
:message
|
1652
|
+
:message,
|
1653
|
+
:resource_type)
|
1162
1654
|
SENSITIVE = []
|
1163
1655
|
include Aws::Structure
|
1164
1656
|
end
|
@@ -1240,6 +1732,10 @@ module Aws::Shield
|
|
1240
1732
|
# escalations or to initiate proactive customer support.
|
1241
1733
|
# @return [String]
|
1242
1734
|
#
|
1735
|
+
# @!attribute [rw] subscription_limits
|
1736
|
+
# Limits settings for your subscription.
|
1737
|
+
# @return [Types::SubscriptionLimits]
|
1738
|
+
#
|
1243
1739
|
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/Subscription AWS API Documentation
|
1244
1740
|
#
|
1245
1741
|
class Subscription < Struct.new(
|
@@ -1248,7 +1744,27 @@ module Aws::Shield
|
|
1248
1744
|
:time_commitment_in_seconds,
|
1249
1745
|
:auto_renew,
|
1250
1746
|
:limits,
|
1251
|
-
:proactive_engagement_status
|
1747
|
+
:proactive_engagement_status,
|
1748
|
+
:subscription_limits)
|
1749
|
+
SENSITIVE = []
|
1750
|
+
include Aws::Structure
|
1751
|
+
end
|
1752
|
+
|
1753
|
+
# Limits settings for your subscription.
|
1754
|
+
#
|
1755
|
+
# @!attribute [rw] protection_limits
|
1756
|
+
# Limits settings on protections for your subscription.
|
1757
|
+
# @return [Types::ProtectionLimits]
|
1758
|
+
#
|
1759
|
+
# @!attribute [rw] protection_group_limits
|
1760
|
+
# Limits settings on protection groups for your subscription.
|
1761
|
+
# @return [Types::ProtectionGroupLimits]
|
1762
|
+
#
|
1763
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/SubscriptionLimits AWS API Documentation
|
1764
|
+
#
|
1765
|
+
class SubscriptionLimits < Struct.new(
|
1766
|
+
:protection_limits,
|
1767
|
+
:protection_group_limits)
|
1252
1768
|
SENSITIVE = []
|
1253
1769
|
include Aws::Structure
|
1254
1770
|
end
|
@@ -1383,6 +1899,78 @@ module Aws::Shield
|
|
1383
1899
|
#
|
1384
1900
|
class UpdateEmergencyContactSettingsResponse < Aws::EmptyStructure; end
|
1385
1901
|
|
1902
|
+
# @note When making an API call, you may pass UpdateProtectionGroupRequest
|
1903
|
+
# data as a hash:
|
1904
|
+
#
|
1905
|
+
# {
|
1906
|
+
# protection_group_id: "ProtectionGroupId", # required
|
1907
|
+
# aggregation: "SUM", # required, accepts SUM, MEAN, MAX
|
1908
|
+
# pattern: "ALL", # required, accepts ALL, ARBITRARY, BY_RESOURCE_TYPE
|
1909
|
+
# resource_type: "CLOUDFRONT_DISTRIBUTION", # accepts CLOUDFRONT_DISTRIBUTION, ROUTE_53_HOSTED_ZONE, ELASTIC_IP_ALLOCATION, CLASSIC_LOAD_BALANCER, APPLICATION_LOAD_BALANCER, GLOBAL_ACCELERATOR
|
1910
|
+
# members: ["ResourceArn"],
|
1911
|
+
# }
|
1912
|
+
#
|
1913
|
+
# @!attribute [rw] protection_group_id
|
1914
|
+
# The name of the protection group. You use this to identify the
|
1915
|
+
# protection group in lists and to manage the protection group, for
|
1916
|
+
# example to update, delete, or describe it.
|
1917
|
+
# @return [String]
|
1918
|
+
#
|
1919
|
+
# @!attribute [rw] aggregation
|
1920
|
+
# Defines how AWS Shield combines resource data for the group in order
|
1921
|
+
# to detect, mitigate, and report events.
|
1922
|
+
#
|
1923
|
+
# * Sum - Use the total traffic across the group. This is a good
|
1924
|
+
# choice for most cases. Examples include Elastic IP addresses for
|
1925
|
+
# EC2 instances that scale manually or automatically.
|
1926
|
+
#
|
1927
|
+
# * Mean - Use the average of the traffic across the group. This is a
|
1928
|
+
# good choice for resources that share traffic uniformly. Examples
|
1929
|
+
# include accelerators and load balancers.
|
1930
|
+
#
|
1931
|
+
# * Max - Use the highest traffic from each resource. This is useful
|
1932
|
+
# for resources that don't share traffic and for resources that
|
1933
|
+
# share that traffic in a non-uniform way. Examples include
|
1934
|
+
# CloudFront distributions and origin resources for CloudFront
|
1935
|
+
# distributions.
|
1936
|
+
# @return [String]
|
1937
|
+
#
|
1938
|
+
# @!attribute [rw] pattern
|
1939
|
+
# The criteria to use to choose the protected resources for inclusion
|
1940
|
+
# in the group. You can include all resources that have protections,
|
1941
|
+
# provide a list of resource Amazon Resource Names (ARNs), or include
|
1942
|
+
# all resources of a specified resource type.
|
1943
|
+
# @return [String]
|
1944
|
+
#
|
1945
|
+
# @!attribute [rw] resource_type
|
1946
|
+
# The resource type to include in the protection group. All protected
|
1947
|
+
# resources of this type are included in the protection group. You
|
1948
|
+
# must set this when you set `Pattern` to `BY_RESOURCE_TYPE` and you
|
1949
|
+
# must not set it for any other `Pattern` setting.
|
1950
|
+
# @return [String]
|
1951
|
+
#
|
1952
|
+
# @!attribute [rw] members
|
1953
|
+
# The Amazon Resource Names (ARNs) of the resources to include in the
|
1954
|
+
# protection group. You must set this when you set `Pattern` to
|
1955
|
+
# `ARBITRARY` and you must not set it for any other `Pattern` setting.
|
1956
|
+
# @return [Array<String>]
|
1957
|
+
#
|
1958
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateProtectionGroupRequest AWS API Documentation
|
1959
|
+
#
|
1960
|
+
class UpdateProtectionGroupRequest < Struct.new(
|
1961
|
+
:protection_group_id,
|
1962
|
+
:aggregation,
|
1963
|
+
:pattern,
|
1964
|
+
:resource_type,
|
1965
|
+
:members)
|
1966
|
+
SENSITIVE = []
|
1967
|
+
include Aws::Structure
|
1968
|
+
end
|
1969
|
+
|
1970
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateProtectionGroupResponse AWS API Documentation
|
1971
|
+
#
|
1972
|
+
class UpdateProtectionGroupResponse < Aws::EmptyStructure; end
|
1973
|
+
|
1386
1974
|
# @note When making an API call, you may pass UpdateSubscriptionRequest
|
1387
1975
|
# data as a hash:
|
1388
1976
|
#
|
@@ -1411,5 +1999,25 @@ module Aws::Shield
|
|
1411
1999
|
#
|
1412
2000
|
class UpdateSubscriptionResponse < Aws::EmptyStructure; end
|
1413
2001
|
|
2002
|
+
# Provides information about a particular parameter passed inside a
|
2003
|
+
# request that resulted in an exception.
|
2004
|
+
#
|
2005
|
+
# @!attribute [rw] name
|
2006
|
+
# The name of the parameter that failed validation.
|
2007
|
+
# @return [String]
|
2008
|
+
#
|
2009
|
+
# @!attribute [rw] message
|
2010
|
+
# The message describing why the parameter failed validation.
|
2011
|
+
# @return [String]
|
2012
|
+
#
|
2013
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ValidationExceptionField AWS API Documentation
|
2014
|
+
#
|
2015
|
+
class ValidationExceptionField < Struct.new(
|
2016
|
+
:name,
|
2017
|
+
:message)
|
2018
|
+
SENSITIVE = []
|
2019
|
+
include Aws::Structure
|
2020
|
+
end
|
2021
|
+
|
1414
2022
|
end
|
1415
2023
|
end
|