aws-sdk-shield 1.28.0 → 1.33.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|