aws-sdk-shield 1.48.0 → 1.49.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: de863a23f6f01d52119af415d7e0ee2a85fdad3b23fc70754e11eecfc5c1abcb
4
- data.tar.gz: bbc5c95481c7e9f6cc7d3fdbb6d0f796dccaffd8376bd6fbf6c8b8b1399d3f3e
3
+ metadata.gz: d8ad08d26320414bbed3455ef9d1e9337010e71a6f6862478320278669dfc421
4
+ data.tar.gz: ad4b4161f2fdfff71852e643ca3e9943ea706d644e54b25d34634d83d38bcd56
5
5
  SHA512:
6
- metadata.gz: acfb2a9d7f7a73b6cf0c61bb1660978ab64b564b237f1fd775fdc5388e6bce173d157ab8d451c697b9fe15f7aa3e6b5b5eb8a6e639765170b664699234e83a0d
7
- data.tar.gz: ee2464b28e34feead2b114d8f130b52ca43dcad6b19fb5c7f11c9de0f5feeb789358647e36bc9bf451626a5cbf5957dd92ecc28381ee6b2de900eae1c4bb0734
6
+ metadata.gz: a3604323eb8f59f924a20bf2d90cea83bb371b5cc86e55cf575c9deee0fa1c6ad78ed0d7bb3b7fd6e98bb13607edf3cdb6d5c80bb68bfb72259ffb894410225f
7
+ data.tar.gz: efb5934418bb058ffa6a72e246d396b4656da0d49afd02baa87bc468fec4a6691ca2f5e3b0c92763a2896e1ab78b66687e2809c44eae56c0ff255d721581a8f8
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.49.0 (2022-07-29)
5
+ ------------------
6
+
7
+ * Feature - AWS Shield Advanced now supports filtering for ListProtections and ListProtectionGroups.
8
+
4
9
  1.48.0 (2022-02-24)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.48.0
1
+ 1.49.0
@@ -372,8 +372,8 @@ module Aws::Shield
372
372
  #
373
373
  #
374
374
  #
375
- # [1]: https://docs.aws.amazon.com/premiumsupport/business-support/
376
- # [2]: https://docs.aws.amazon.com/premiumsupport/enterprise-support/
375
+ # [1]: http://aws.amazon.com/premiumsupport/business-support/
376
+ # [2]: http://aws.amazon.com/premiumsupport/enterprise-support/
377
377
  #
378
378
  # @option params [required, String] :log_bucket
379
379
  # The Amazon S3 bucket that contains the logs that you want to share.
@@ -433,8 +433,8 @@ module Aws::Shield
433
433
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html
434
434
  # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html
435
435
  # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html
436
- # [5]: https://docs.aws.amazon.com/premiumsupport/business-support/
437
- # [6]: https://docs.aws.amazon.com/premiumsupport/enterprise-support/
436
+ # [5]: http://aws.amazon.com/premiumsupport/business-support/
437
+ # [6]: http://aws.amazon.com/premiumsupport/enterprise-support/
438
438
  #
439
439
  # @option params [required, String] :role_arn
440
440
  # The Amazon Resource Name (ARN) of the role the SRT will use to access
@@ -563,9 +563,11 @@ module Aws::Shield
563
563
  end
564
564
 
565
565
  # Enables Shield Advanced for a specific Amazon Web Services resource.
566
- # The resource can be an Amazon CloudFront distribution, Elastic Load
567
- # Balancing load balancer, Global Accelerator accelerator, Elastic IP
568
- # Address, or an Amazon Route 53 hosted zone.
566
+ # The resource can be an Amazon CloudFront distribution, Amazon Route 53
567
+ # hosted zone, Global Accelerator standard accelerator, Elastic IP
568
+ # Address, Application Load Balancer, or a Classic Load Balancer. You
569
+ # can protect Amazon EC2 instances and Network Load Balancers by
570
+ # association with protected Amazon EC2 Elastic IP addresses.
569
571
  #
570
572
  # You can add protection to only a single resource with each
571
573
  # `CreateProtection` request. You can add protection to multiple
@@ -599,7 +601,7 @@ module Aws::Shield
599
601
  # * For an Amazon CloudFront distribution:
600
602
  # `arn:aws:cloudfront::account-id:distribution/distribution-id `
601
603
  #
602
- # * For an Global Accelerator accelerator:
604
+ # * For an Global Accelerator standard accelerator:
603
605
  # `arn:aws:globalaccelerator::account-id:accelerator/accelerator-id `
604
606
  #
605
607
  # * For Amazon Route 53: `arn:aws:route53:::hostedzone/hosted-zone-id `
@@ -717,7 +719,13 @@ module Aws::Shield
717
719
 
718
720
  # Activates Shield Advanced for an account.
719
721
  #
720
- # When you initally create a subscription, your subscription is set to
722
+ # <note markdown="1"> For accounts that are members of an Organizations organization, Shield
723
+ # Advanced subscriptions are billed against the organization's payer
724
+ # account, regardless of whether the payer account itself is subscribed.
725
+ #
726
+ # </note>
727
+ #
728
+ # When you initially create a subscription, your subscription is set to
721
729
  # be automatically renewed at the end of the existing subscription
722
730
  # period. You can change this by submitting an `UpdateSubscription`
723
731
  # request.
@@ -952,15 +960,14 @@ module Aws::Shield
952
960
  # Lists the details of a Protection object.
953
961
  #
954
962
  # @option params [String] :protection_id
955
- # The unique identifier (ID) for the Protection object that is
956
- # described. When submitting the `DescribeProtection` request you must
957
- # provide either the `ResourceArn` or the `ProtectionID`, but not both.
963
+ # The unique identifier (ID) for the Protection object to describe. You
964
+ # must provide either the `ResourceArn` of the protected resource or the
965
+ # `ProtectionID` of the protection, but not both.
958
966
  #
959
967
  # @option params [String] :resource_arn
960
- # The ARN (Amazon Resource Name) of the Amazon Web Services resource for
961
- # the Protection object that is described. When submitting the
962
- # `DescribeProtection` request you must provide either the `ResourceArn`
963
- # or the `ProtectionID`, but not both.
968
+ # The ARN (Amazon Resource Name) of the protected Amazon Web Services
969
+ # resource. You must provide either the `ResourceArn` of the protected
970
+ # resource or the `ProtectionID` of the protection, but not both.
964
971
  #
965
972
  # @return [Types::DescribeProtectionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
966
973
  #
@@ -1062,12 +1069,12 @@ module Aws::Shield
1062
1069
  end
1063
1070
 
1064
1071
  # Disable the Shield Advanced automatic application layer DDoS
1065
- # mitigation feature for the resource. This stops Shield Advanced from
1066
- # creating, verifying, and applying WAF rules for attacks that it
1067
- # detects for the resource.
1072
+ # mitigation feature for the protected resource. This stops Shield
1073
+ # Advanced from creating, verifying, and applying WAF rules for attacks
1074
+ # that it detects for the resource.
1068
1075
  #
1069
1076
  # @option params [required, String] :resource_arn
1070
- # The ARN (Amazon Resource Name) of the resource.
1077
+ # The ARN (Amazon Resource Name) of the protected resource.
1071
1078
  #
1072
1079
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1073
1080
  #
@@ -1179,9 +1186,10 @@ module Aws::Shield
1179
1186
  end
1180
1187
 
1181
1188
  # Enable the Shield Advanced automatic application layer DDoS mitigation
1182
- # for the resource.
1189
+ # for the protected resource.
1183
1190
  #
1184
- # <note markdown="1"> This feature is available for Amazon CloudFront distributions only.
1191
+ # <note markdown="1"> This feature is available for Amazon CloudFront distributions and
1192
+ # Application Load Balancers only.
1185
1193
  #
1186
1194
  # </note>
1187
1195
  #
@@ -1192,19 +1200,21 @@ module Aws::Shield
1192
1200
  # mitigation works and the requirements for using it, see [Shield
1193
1201
  # Advanced automatic application layer DDoS mitigation][1].
1194
1202
  #
1195
- # Don't use this action to make changes to automatic mitigation
1203
+ # <note markdown="1"> Don't use this action to make changes to automatic mitigation
1196
1204
  # settings when it's already enabled for a resource. Instead, use
1197
1205
  # UpdateApplicationLayerAutomaticResponse.
1198
1206
  #
1207
+ # </note>
1208
+ #
1199
1209
  # To use this feature, you must associate a web ACL with the protected
1200
1210
  # resource. The web ACL must be created using the latest version of WAF
1201
1211
  # (v2). You can associate the web ACL through the Shield Advanced
1202
1212
  # console at [https://console.aws.amazon.com/wafv2/shieldv2#/][2]. For
1203
- # more information, see [Getting Started with Shield Advanced][3].
1204
- #
1205
- # You can also do this through the WAF console or the WAF API, but you
1206
- # must manage Shield Advanced automatic mitigation through Shield
1207
- # Advanced. For information about WAF, see [WAF Developer Guide][4].
1213
+ # more information, see [Getting Started with Shield Advanced][3]. You
1214
+ # can also associate the web ACL to the resource through the WAF console
1215
+ # or the WAF API, but you must manage Shield Advanced automatic
1216
+ # mitigation through Shield Advanced. For information about WAF, see
1217
+ # [WAF Developer Guide][4].
1208
1218
  #
1209
1219
  #
1210
1220
  #
@@ -1214,7 +1224,7 @@ module Aws::Shield
1214
1224
  # [4]: https://docs.aws.amazon.com/waf/latest/developerguide/
1215
1225
  #
1216
1226
  # @option params [required, String] :resource_arn
1217
- # The ARN (Amazon Resource Name) of the resource.
1227
+ # The ARN (Amazon Resource Name) of the protected resource.
1218
1228
  #
1219
1229
  # @option params [required, Types::ResponseAction] :action
1220
1230
  # Specifies the action setting that Shield Advanced should use in the
@@ -1380,7 +1390,9 @@ module Aws::Shield
1380
1390
  req.send_request(options)
1381
1391
  end
1382
1392
 
1383
- # Retrieves the ProtectionGroup objects for the account.
1393
+ # Retrieves ProtectionGroup objects for the account. You can retrieve
1394
+ # all protection groups or you can provide filtering criteria and
1395
+ # retrieve just the subset of protection groups that match the criteria.
1384
1396
  #
1385
1397
  # @option params [String] :next_token
1386
1398
  # When you request a list of objects from Shield Advanced, if the
@@ -1409,6 +1421,14 @@ module Aws::Shield
1409
1421
  #
1410
1422
  # The default setting is 20.
1411
1423
  #
1424
+ # @option params [Types::InclusionProtectionGroupFilters] :inclusion_filters
1425
+ # Narrows the set of protection groups that the call retrieves. You can
1426
+ # retrieve a single protection group by its name and you can retrieve
1427
+ # all protection groups that are configured with specific pattern or
1428
+ # aggregation settings. You can provide up to one criteria per filter
1429
+ # type. Shield Advanced returns the protection groups that exactly match
1430
+ # all of the search criteria that you provide.
1431
+ #
1412
1432
  # @return [Types::ListProtectionGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1413
1433
  #
1414
1434
  # * {Types::ListProtectionGroupsResponse#protection_groups #protection_groups} => Array&lt;Types::ProtectionGroup&gt;
@@ -1421,6 +1441,12 @@ module Aws::Shield
1421
1441
  # resp = client.list_protection_groups({
1422
1442
  # next_token: "Token",
1423
1443
  # max_results: 1,
1444
+ # inclusion_filters: {
1445
+ # protection_group_ids: ["ProtectionGroupId"],
1446
+ # patterns: ["ALL"], # accepts ALL, ARBITRARY, BY_RESOURCE_TYPE
1447
+ # resource_types: ["CLOUDFRONT_DISTRIBUTION"], # accepts CLOUDFRONT_DISTRIBUTION, ROUTE_53_HOSTED_ZONE, ELASTIC_IP_ALLOCATION, CLASSIC_LOAD_BALANCER, APPLICATION_LOAD_BALANCER, GLOBAL_ACCELERATOR
1448
+ # aggregations: ["SUM"], # accepts SUM, MEAN, MAX
1449
+ # },
1424
1450
  # })
1425
1451
  #
1426
1452
  # @example Response structure
@@ -1444,7 +1470,9 @@ module Aws::Shield
1444
1470
  req.send_request(options)
1445
1471
  end
1446
1472
 
1447
- # Lists all Protection objects for the account.
1473
+ # Retrieves Protection objects for the account. You can retrieve all
1474
+ # protections or you can provide filtering criteria and retrieve just
1475
+ # the subset of protections that match the criteria.
1448
1476
  #
1449
1477
  # @option params [String] :next_token
1450
1478
  # When you request a list of objects from Shield Advanced, if the
@@ -1473,6 +1501,14 @@ module Aws::Shield
1473
1501
  #
1474
1502
  # The default setting is 20.
1475
1503
  #
1504
+ # @option params [Types::InclusionProtectionFilters] :inclusion_filters
1505
+ # Narrows the set of protections that the call retrieves. You can
1506
+ # retrieve a single protection by providing its name or the ARN (Amazon
1507
+ # Resource Name) of its protected resource. You can also retrieve all
1508
+ # protections for a specific resource type. You can provide up to one
1509
+ # criteria per filter type. Shield Advanced returns protections that
1510
+ # exactly match all of the filter criteria that you provide.
1511
+ #
1476
1512
  # @return [Types::ListProtectionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1477
1513
  #
1478
1514
  # * {Types::ListProtectionsResponse#protections #protections} => Array&lt;Types::Protection&gt;
@@ -1485,6 +1521,11 @@ module Aws::Shield
1485
1521
  # resp = client.list_protections({
1486
1522
  # next_token: "Token",
1487
1523
  # max_results: 1,
1524
+ # inclusion_filters: {
1525
+ # resource_arns: ["ResourceArn"],
1526
+ # protection_names: ["ProtectionName"],
1527
+ # resource_types: ["CLOUDFRONT_DISTRIBUTION"], # accepts CLOUDFRONT_DISTRIBUTION, ROUTE_53_HOSTED_ZONE, ELASTIC_IP_ALLOCATION, CLASSIC_LOAD_BALANCER, APPLICATION_LOAD_BALANCER, GLOBAL_ACCELERATOR
1528
+ # },
1488
1529
  # })
1489
1530
  #
1490
1531
  # @example Response structure
@@ -1806,6 +1847,12 @@ module Aws::Shield
1806
1847
  # Updates the details of an existing subscription. Only enter values for
1807
1848
  # parameters you want to change. Empty parameters are not updated.
1808
1849
  #
1850
+ # <note markdown="1"> For accounts that are members of an Organizations organization, Shield
1851
+ # Advanced subscriptions are billed against the organization's payer
1852
+ # account, regardless of whether the payer account itself is subscribed.
1853
+ #
1854
+ # </note>
1855
+ #
1809
1856
  # @option params [String] :auto_renew
1810
1857
  # When you initally create a subscription, `AutoRenew` is set to
1811
1858
  # `ENABLED`. If `ENABLED`, the subscription will be automatically
@@ -1844,7 +1891,7 @@ module Aws::Shield
1844
1891
  params: params,
1845
1892
  config: config)
1846
1893
  context[:gem_name] = 'aws-sdk-shield'
1847
- context[:gem_version] = '1.48.0'
1894
+ context[:gem_version] = '1.49.0'
1848
1895
  Seahorse::Client::Request.new(handlers, context)
1849
1896
  end
1850
1897
 
@@ -95,6 +95,8 @@ module Aws::Shield
95
95
  HealthCheckArn = Shapes::StringShape.new(name: 'HealthCheckArn')
96
96
  HealthCheckId = Shapes::StringShape.new(name: 'HealthCheckId')
97
97
  HealthCheckIds = Shapes::ListShape.new(name: 'HealthCheckIds')
98
+ InclusionProtectionFilters = Shapes::StructureShape.new(name: 'InclusionProtectionFilters')
99
+ InclusionProtectionGroupFilters = Shapes::StructureShape.new(name: 'InclusionProtectionGroupFilters')
98
100
  Integer = Shapes::IntegerShape.new(name: 'Integer')
99
101
  InternalErrorException = Shapes::StructureShape.new(name: 'InternalErrorException')
100
102
  InvalidOperationException = Shapes::StructureShape.new(name: 'InvalidOperationException')
@@ -128,23 +130,29 @@ module Aws::Shield
128
130
  PhoneNumber = Shapes::StringShape.new(name: 'PhoneNumber')
129
131
  ProactiveEngagementStatus = Shapes::StringShape.new(name: 'ProactiveEngagementStatus')
130
132
  ProtectedResourceType = Shapes::StringShape.new(name: 'ProtectedResourceType')
133
+ ProtectedResourceTypeFilters = Shapes::ListShape.new(name: 'ProtectedResourceTypeFilters')
131
134
  Protection = Shapes::StructureShape.new(name: 'Protection')
132
135
  ProtectionGroup = Shapes::StructureShape.new(name: 'ProtectionGroup')
133
136
  ProtectionGroupAggregation = Shapes::StringShape.new(name: 'ProtectionGroupAggregation')
137
+ ProtectionGroupAggregationFilters = Shapes::ListShape.new(name: 'ProtectionGroupAggregationFilters')
134
138
  ProtectionGroupArbitraryPatternLimits = Shapes::StructureShape.new(name: 'ProtectionGroupArbitraryPatternLimits')
135
139
  ProtectionGroupId = Shapes::StringShape.new(name: 'ProtectionGroupId')
140
+ ProtectionGroupIdFilters = Shapes::ListShape.new(name: 'ProtectionGroupIdFilters')
136
141
  ProtectionGroupLimits = Shapes::StructureShape.new(name: 'ProtectionGroupLimits')
137
142
  ProtectionGroupMembers = Shapes::ListShape.new(name: 'ProtectionGroupMembers')
138
143
  ProtectionGroupPattern = Shapes::StringShape.new(name: 'ProtectionGroupPattern')
144
+ ProtectionGroupPatternFilters = Shapes::ListShape.new(name: 'ProtectionGroupPatternFilters')
139
145
  ProtectionGroupPatternTypeLimits = Shapes::StructureShape.new(name: 'ProtectionGroupPatternTypeLimits')
140
146
  ProtectionGroups = Shapes::ListShape.new(name: 'ProtectionGroups')
141
147
  ProtectionId = Shapes::StringShape.new(name: 'ProtectionId')
142
148
  ProtectionLimits = Shapes::StructureShape.new(name: 'ProtectionLimits')
143
149
  ProtectionName = Shapes::StringShape.new(name: 'ProtectionName')
150
+ ProtectionNameFilters = Shapes::ListShape.new(name: 'ProtectionNameFilters')
144
151
  Protections = Shapes::ListShape.new(name: 'Protections')
145
152
  ResourceAlreadyExistsException = Shapes::StructureShape.new(name: 'ResourceAlreadyExistsException')
146
153
  ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
147
154
  ResourceArnFilterList = Shapes::ListShape.new(name: 'ResourceArnFilterList')
155
+ ResourceArnFilters = Shapes::ListShape.new(name: 'ResourceArnFilters')
148
156
  ResourceArnList = Shapes::ListShape.new(name: 'ResourceArnList')
149
157
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
150
158
  ResponseAction = Shapes::StructureShape.new(name: 'ResponseAction')
@@ -398,6 +406,17 @@ module Aws::Shield
398
406
 
399
407
  HealthCheckIds.member = Shapes::ShapeRef.new(shape: HealthCheckId)
400
408
 
409
+ InclusionProtectionFilters.add_member(:resource_arns, Shapes::ShapeRef.new(shape: ResourceArnFilters, location_name: "ResourceArns"))
410
+ InclusionProtectionFilters.add_member(:protection_names, Shapes::ShapeRef.new(shape: ProtectionNameFilters, location_name: "ProtectionNames"))
411
+ InclusionProtectionFilters.add_member(:resource_types, Shapes::ShapeRef.new(shape: ProtectedResourceTypeFilters, location_name: "ResourceTypes"))
412
+ InclusionProtectionFilters.struct_class = Types::InclusionProtectionFilters
413
+
414
+ InclusionProtectionGroupFilters.add_member(:protection_group_ids, Shapes::ShapeRef.new(shape: ProtectionGroupIdFilters, location_name: "ProtectionGroupIds"))
415
+ InclusionProtectionGroupFilters.add_member(:patterns, Shapes::ShapeRef.new(shape: ProtectionGroupPatternFilters, location_name: "Patterns"))
416
+ InclusionProtectionGroupFilters.add_member(:resource_types, Shapes::ShapeRef.new(shape: ProtectedResourceTypeFilters, location_name: "ResourceTypes"))
417
+ InclusionProtectionGroupFilters.add_member(:aggregations, Shapes::ShapeRef.new(shape: ProtectionGroupAggregationFilters, location_name: "Aggregations"))
418
+ InclusionProtectionGroupFilters.struct_class = Types::InclusionProtectionGroupFilters
419
+
401
420
  InternalErrorException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
402
421
  InternalErrorException.struct_class = Types::InternalErrorException
403
422
 
@@ -439,6 +458,7 @@ module Aws::Shield
439
458
 
440
459
  ListProtectionGroupsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
441
460
  ListProtectionGroupsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
461
+ ListProtectionGroupsRequest.add_member(:inclusion_filters, Shapes::ShapeRef.new(shape: InclusionProtectionGroupFilters, location_name: "InclusionFilters"))
442
462
  ListProtectionGroupsRequest.struct_class = Types::ListProtectionGroupsRequest
443
463
 
444
464
  ListProtectionGroupsResponse.add_member(:protection_groups, Shapes::ShapeRef.new(shape: ProtectionGroups, required: true, location_name: "ProtectionGroups"))
@@ -447,6 +467,7 @@ module Aws::Shield
447
467
 
448
468
  ListProtectionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
449
469
  ListProtectionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
470
+ ListProtectionsRequest.add_member(:inclusion_filters, Shapes::ShapeRef.new(shape: InclusionProtectionFilters, location_name: "InclusionFilters"))
450
471
  ListProtectionsRequest.struct_class = Types::ListProtectionsRequest
451
472
 
452
473
  ListProtectionsResponse.add_member(:protections, Shapes::ShapeRef.new(shape: Protections, location_name: "Protections"))
@@ -484,6 +505,8 @@ module Aws::Shield
484
505
  OptimisticLockException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
485
506
  OptimisticLockException.struct_class = Types::OptimisticLockException
486
507
 
508
+ ProtectedResourceTypeFilters.member = Shapes::ShapeRef.new(shape: ProtectedResourceType)
509
+
487
510
  Protection.add_member(:id, Shapes::ShapeRef.new(shape: ProtectionId, location_name: "Id"))
488
511
  Protection.add_member(:name, Shapes::ShapeRef.new(shape: ProtectionName, location_name: "Name"))
489
512
  Protection.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "ResourceArn"))
@@ -500,15 +523,21 @@ module Aws::Shield
500
523
  ProtectionGroup.add_member(:protection_group_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "ProtectionGroupArn"))
501
524
  ProtectionGroup.struct_class = Types::ProtectionGroup
502
525
 
526
+ ProtectionGroupAggregationFilters.member = Shapes::ShapeRef.new(shape: ProtectionGroupAggregation)
527
+
503
528
  ProtectionGroupArbitraryPatternLimits.add_member(:max_members, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "MaxMembers"))
504
529
  ProtectionGroupArbitraryPatternLimits.struct_class = Types::ProtectionGroupArbitraryPatternLimits
505
530
 
531
+ ProtectionGroupIdFilters.member = Shapes::ShapeRef.new(shape: ProtectionGroupId)
532
+
506
533
  ProtectionGroupLimits.add_member(:max_protection_groups, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "MaxProtectionGroups"))
507
534
  ProtectionGroupLimits.add_member(:pattern_type_limits, Shapes::ShapeRef.new(shape: ProtectionGroupPatternTypeLimits, required: true, location_name: "PatternTypeLimits"))
508
535
  ProtectionGroupLimits.struct_class = Types::ProtectionGroupLimits
509
536
 
510
537
  ProtectionGroupMembers.member = Shapes::ShapeRef.new(shape: ResourceArn)
511
538
 
539
+ ProtectionGroupPatternFilters.member = Shapes::ShapeRef.new(shape: ProtectionGroupPattern)
540
+
512
541
  ProtectionGroupPatternTypeLimits.add_member(:arbitrary_pattern_limits, Shapes::ShapeRef.new(shape: ProtectionGroupArbitraryPatternLimits, required: true, location_name: "ArbitraryPatternLimits"))
513
542
  ProtectionGroupPatternTypeLimits.struct_class = Types::ProtectionGroupPatternTypeLimits
514
543
 
@@ -517,6 +546,8 @@ module Aws::Shield
517
546
  ProtectionLimits.add_member(:protected_resource_type_limits, Shapes::ShapeRef.new(shape: Limits, required: true, location_name: "ProtectedResourceTypeLimits"))
518
547
  ProtectionLimits.struct_class = Types::ProtectionLimits
519
548
 
549
+ ProtectionNameFilters.member = Shapes::ShapeRef.new(shape: ProtectionName)
550
+
520
551
  Protections.member = Shapes::ShapeRef.new(shape: Protection)
521
552
 
522
553
  ResourceAlreadyExistsException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -525,6 +556,8 @@ module Aws::Shield
525
556
 
526
557
  ResourceArnFilterList.member = Shapes::ShapeRef.new(shape: ResourceArn)
527
558
 
559
+ ResourceArnFilters.member = Shapes::ShapeRef.new(shape: ResourceArn)
560
+
528
561
  ResourceArnList.member = Shapes::ShapeRef.new(shape: ResourceArn)
529
562
 
530
563
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -636,7 +636,7 @@ module Aws::Shield
636
636
  # * For an Amazon CloudFront distribution:
637
637
  # `arn:aws:cloudfront::account-id:distribution/distribution-id `
638
638
  #
639
- # * For an Global Accelerator accelerator:
639
+ # * For an Global Accelerator standard accelerator:
640
640
  # `arn:aws:globalaccelerator::account-id:accelerator/accelerator-id
641
641
  # `
642
642
  #
@@ -763,7 +763,7 @@ module Aws::Shield
763
763
  end
764
764
 
765
765
  # @!attribute [rw] attack
766
- # The attack that is described.
766
+ # The attack that you requested.
767
767
  # @return [Types::AttackDetail]
768
768
  #
769
769
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeAttackResponse AWS API Documentation
@@ -781,7 +781,7 @@ module Aws::Shield
781
781
  class DescribeAttackStatisticsRequest < Aws::EmptyStructure; end
782
782
 
783
783
  # @!attribute [rw] time_range
784
- # The time range.
784
+ # The time range of the attack.
785
785
  # @return [Types::TimeRange]
786
786
  #
787
787
  # @!attribute [rw] data_items
@@ -886,17 +886,15 @@ module Aws::Shield
886
886
  # }
887
887
  #
888
888
  # @!attribute [rw] protection_id
889
- # The unique identifier (ID) for the Protection object that is
890
- # described. When submitting the `DescribeProtection` request you must
891
- # provide either the `ResourceArn` or the `ProtectionID`, but not
892
- # both.
889
+ # The unique identifier (ID) for the Protection object to describe.
890
+ # You must provide either the `ResourceArn` of the protected resource
891
+ # or the `ProtectionID` of the protection, but not both.
893
892
  # @return [String]
894
893
  #
895
894
  # @!attribute [rw] resource_arn
896
- # The ARN (Amazon Resource Name) of the Amazon Web Services resource
897
- # for the Protection object that is described. When submitting the
898
- # `DescribeProtection` request you must provide either the
899
- # `ResourceArn` or the `ProtectionID`, but not both.
895
+ # The ARN (Amazon Resource Name) of the protected Amazon Web Services
896
+ # resource. You must provide either the `ResourceArn` of the protected
897
+ # resource or the `ProtectionID` of the protection, but not both.
900
898
  # @return [String]
901
899
  #
902
900
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtectionRequest AWS API Documentation
@@ -909,7 +907,7 @@ module Aws::Shield
909
907
  end
910
908
 
911
909
  # @!attribute [rw] protection
912
- # The Protection object that is described.
910
+ # The Protection that you requested.
913
911
  # @return [Types::Protection]
914
912
  #
915
913
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtectionResponse AWS API Documentation
@@ -946,7 +944,7 @@ module Aws::Shield
946
944
  # }
947
945
  #
948
946
  # @!attribute [rw] resource_arn
949
- # The ARN (Amazon Resource Name) of the resource.
947
+ # The ARN (Amazon Resource Name) of the protected resource.
950
948
  # @return [String]
951
949
  #
952
950
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisableApplicationLayerAutomaticResponseRequest AWS API Documentation
@@ -1084,7 +1082,7 @@ module Aws::Shield
1084
1082
  # }
1085
1083
  #
1086
1084
  # @!attribute [rw] resource_arn
1087
- # The ARN (Amazon Resource Name) of the resource.
1085
+ # The ARN (Amazon Resource Name) of the protected resource.
1088
1086
  # @return [String]
1089
1087
  #
1090
1088
  # @!attribute [rw] action
@@ -1139,6 +1137,95 @@ module Aws::Shield
1139
1137
  include Aws::Structure
1140
1138
  end
1141
1139
 
1140
+ # Narrows the set of protections that the call retrieves. You can
1141
+ # retrieve a single protection by providing its name or the ARN (Amazon
1142
+ # Resource Name) of its protected resource. You can also retrieve all
1143
+ # protections for a specific resource type. You can provide up to one
1144
+ # criteria per filter type. Shield Advanced returns protections that
1145
+ # exactly match all of the filter criteria that you provide.
1146
+ #
1147
+ # @note When making an API call, you may pass InclusionProtectionFilters
1148
+ # data as a hash:
1149
+ #
1150
+ # {
1151
+ # resource_arns: ["ResourceArn"],
1152
+ # protection_names: ["ProtectionName"],
1153
+ # resource_types: ["CLOUDFRONT_DISTRIBUTION"], # accepts CLOUDFRONT_DISTRIBUTION, ROUTE_53_HOSTED_ZONE, ELASTIC_IP_ALLOCATION, CLASSIC_LOAD_BALANCER, APPLICATION_LOAD_BALANCER, GLOBAL_ACCELERATOR
1154
+ # }
1155
+ #
1156
+ # @!attribute [rw] resource_arns
1157
+ # The ARN (Amazon Resource Name) of the resource whose protection you
1158
+ # want to retrieve.
1159
+ # @return [Array<String>]
1160
+ #
1161
+ # @!attribute [rw] protection_names
1162
+ # The name of the protection that you want to retrieve.
1163
+ # @return [Array<String>]
1164
+ #
1165
+ # @!attribute [rw] resource_types
1166
+ # The type of protected resource whose protections you want to
1167
+ # retrieve.
1168
+ # @return [Array<String>]
1169
+ #
1170
+ # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/InclusionProtectionFilters AWS API Documentation
1171
+ #
1172
+ class InclusionProtectionFilters < Struct.new(
1173
+ :resource_arns,
1174
+ :protection_names,
1175
+ :resource_types)
1176
+ SENSITIVE = []
1177
+ include Aws::Structure
1178
+ end
1179
+
1180
+ # Narrows the set of protection groups that the call retrieves. You can
1181
+ # retrieve a single protection group by its name and you can retrieve
1182
+ # all protection groups that are configured with a specific pattern,
1183
+ # aggregation, or resource type. You can provide up to one criteria per
1184
+ # filter type. Shield Advanced returns the protection groups that
1185
+ # exactly match all of the search criteria that you provide.
1186
+ #
1187
+ # @note When making an API call, you may pass InclusionProtectionGroupFilters
1188
+ # data as a hash:
1189
+ #
1190
+ # {
1191
+ # protection_group_ids: ["ProtectionGroupId"],
1192
+ # patterns: ["ALL"], # accepts ALL, ARBITRARY, BY_RESOURCE_TYPE
1193
+ # resource_types: ["CLOUDFRONT_DISTRIBUTION"], # accepts CLOUDFRONT_DISTRIBUTION, ROUTE_53_HOSTED_ZONE, ELASTIC_IP_ALLOCATION, CLASSIC_LOAD_BALANCER, APPLICATION_LOAD_BALANCER, GLOBAL_ACCELERATOR
1194
+ # aggregations: ["SUM"], # accepts SUM, MEAN, MAX
1195
+ # }
1196
+ #
1197
+ # @!attribute [rw] protection_group_ids
1198
+ # The ID of the protection group that you want to retrieve.
1199
+ # @return [Array<String>]
1200
+ #
1201
+ # @!attribute [rw] patterns
1202
+ # The pattern specification of the protection groups that you want to
1203
+ # retrieve.
1204
+ # @return [Array<String>]
1205
+ #
1206
+ # @!attribute [rw] resource_types
1207
+ # The resource type configuration of the protection groups that you
1208
+ # want to retrieve. In the protection group configuration, you specify
1209
+ # the resource type when you set the group's `Pattern` to
1210
+ # `BY_RESOURCE_TYPE`.
1211
+ # @return [Array<String>]
1212
+ #
1213
+ # @!attribute [rw] aggregations
1214
+ # The aggregation setting of the protection groups that you want to
1215
+ # retrieve.
1216
+ # @return [Array<String>]
1217
+ #
1218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/InclusionProtectionGroupFilters AWS API Documentation
1219
+ #
1220
+ class InclusionProtectionGroupFilters < Struct.new(
1221
+ :protection_group_ids,
1222
+ :patterns,
1223
+ :resource_types,
1224
+ :aggregations)
1225
+ SENSITIVE = []
1226
+ include Aws::Structure
1227
+ end
1228
+
1142
1229
  # Exception that indicates that a problem occurred with the service
1143
1230
  # infrastructure. You can retry the request.
1144
1231
  #
@@ -1386,6 +1473,12 @@ module Aws::Shield
1386
1473
  # {
1387
1474
  # next_token: "Token",
1388
1475
  # max_results: 1,
1476
+ # inclusion_filters: {
1477
+ # protection_group_ids: ["ProtectionGroupId"],
1478
+ # patterns: ["ALL"], # accepts ALL, ARBITRARY, BY_RESOURCE_TYPE
1479
+ # resource_types: ["CLOUDFRONT_DISTRIBUTION"], # accepts CLOUDFRONT_DISTRIBUTION, ROUTE_53_HOSTED_ZONE, ELASTIC_IP_ALLOCATION, CLASSIC_LOAD_BALANCER, APPLICATION_LOAD_BALANCER, GLOBAL_ACCELERATOR
1480
+ # aggregations: ["SUM"], # accepts SUM, MEAN, MAX
1481
+ # },
1389
1482
  # }
1390
1483
  #
1391
1484
  # @!attribute [rw] next_token
@@ -1417,11 +1510,21 @@ module Aws::Shield
1417
1510
  # The default setting is 20.
1418
1511
  # @return [Integer]
1419
1512
  #
1513
+ # @!attribute [rw] inclusion_filters
1514
+ # Narrows the set of protection groups that the call retrieves. You
1515
+ # can retrieve a single protection group by its name and you can
1516
+ # retrieve all protection groups that are configured with specific
1517
+ # pattern or aggregation settings. You can provide up to one criteria
1518
+ # per filter type. Shield Advanced returns the protection groups that
1519
+ # exactly match all of the search criteria that you provide.
1520
+ # @return [Types::InclusionProtectionGroupFilters]
1521
+ #
1420
1522
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtectionGroupsRequest AWS API Documentation
1421
1523
  #
1422
1524
  class ListProtectionGroupsRequest < Struct.new(
1423
1525
  :next_token,
1424
- :max_results)
1526
+ :max_results,
1527
+ :inclusion_filters)
1425
1528
  SENSITIVE = []
1426
1529
  include Aws::Structure
1427
1530
  end
@@ -1461,6 +1564,11 @@ module Aws::Shield
1461
1564
  # {
1462
1565
  # next_token: "Token",
1463
1566
  # max_results: 1,
1567
+ # inclusion_filters: {
1568
+ # resource_arns: ["ResourceArn"],
1569
+ # protection_names: ["ProtectionName"],
1570
+ # resource_types: ["CLOUDFRONT_DISTRIBUTION"], # accepts CLOUDFRONT_DISTRIBUTION, ROUTE_53_HOSTED_ZONE, ELASTIC_IP_ALLOCATION, CLASSIC_LOAD_BALANCER, APPLICATION_LOAD_BALANCER, GLOBAL_ACCELERATOR
1571
+ # },
1464
1572
  # }
1465
1573
  #
1466
1574
  # @!attribute [rw] next_token
@@ -1492,11 +1600,22 @@ module Aws::Shield
1492
1600
  # The default setting is 20.
1493
1601
  # @return [Integer]
1494
1602
  #
1603
+ # @!attribute [rw] inclusion_filters
1604
+ # Narrows the set of protections that the call retrieves. You can
1605
+ # retrieve a single protection by providing its name or the ARN
1606
+ # (Amazon Resource Name) of its protected resource. You can also
1607
+ # retrieve all protections for a specific resource type. You can
1608
+ # provide up to one criteria per filter type. Shield Advanced returns
1609
+ # protections that exactly match all of the filter criteria that you
1610
+ # provide.
1611
+ # @return [Types::InclusionProtectionFilters]
1612
+ #
1495
1613
  # @see http://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtectionsRequest AWS API Documentation
1496
1614
  #
1497
1615
  class ListProtectionsRequest < Struct.new(
1498
1616
  :next_token,
1499
- :max_results)
1617
+ :max_results,
1618
+ :inclusion_filters)
1500
1619
  SENSITIVE = []
1501
1620
  include Aws::Structure
1502
1621
  end
@@ -1678,7 +1797,7 @@ module Aws::Shield
1678
1797
  include Aws::Structure
1679
1798
  end
1680
1799
 
1681
- # The ARN of the role that you specifed does not exist.
1800
+ # The ARN of the role that you specified does not exist.
1682
1801
  #
1683
1802
  # @!attribute [rw] message
1684
1803
  # @return [String]
@@ -1783,7 +1902,7 @@ module Aws::Shield
1783
1902
  # @!attribute [rw] pattern
1784
1903
  # The criteria to use to choose the protected resources for inclusion
1785
1904
  # in the group. You can include all resources that have protections,
1786
- # provide a list of resource Amazon Resource Names (ARNs), or include
1905
+ # provide a list of resource ARNs (Amazon Resource Names), or include
1787
1906
  # all resources of a specified resource type.
1788
1907
  # @return [String]
1789
1908
  #
@@ -1795,7 +1914,7 @@ module Aws::Shield
1795
1914
  # @return [String]
1796
1915
  #
1797
1916
  # @!attribute [rw] members
1798
- # The Amazon Resource Names (ARNs) of the resources to include in the
1917
+ # The ARNs (Amazon Resource Names) of the resources to include in the
1799
1918
  # protection group. You must set this when you set `Pattern` to
1800
1919
  # `ARBITRARY` and you must not set it for any other `Pattern` setting.
1801
1920
  # @return [Array<String>]
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-shield/customizations'
48
48
  # @!group service
49
49
  module Aws::Shield
50
50
 
51
- GEM_VERSION = '1.48.0'
51
+ GEM_VERSION = '1.49.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-shield
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.48.0
4
+ version: 1.49.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: 2022-02-24 00:00:00.000000000 Z
11
+ date: 2022-07-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core