aws-sdk-shield 1.46.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: 3d6373ad000ef650e2a98a06c6fcd44c468774dbedc8f5f4450bf35f2411e6d0
4
- data.tar.gz: 2794b2131ca23284317bbd039e2e609b6397c3c355b414e59d60a9207c373540
3
+ metadata.gz: d8ad08d26320414bbed3455ef9d1e9337010e71a6f6862478320278669dfc421
4
+ data.tar.gz: ad4b4161f2fdfff71852e643ca3e9943ea706d644e54b25d34634d83d38bcd56
5
5
  SHA512:
6
- metadata.gz: ba883b89690540cc2192236a09bd9f788ba90d500b1ca721625a35536d3944b8eec690565078861da0c420e5be33056c3f7f73fde89d3cfa064e24513f708e60
7
- data.tar.gz: 3d93922ae49a9117f570d86b80e3d16ace1b744954c9b73e5b1d366630f42370c1b697ad2c9a62667115a7c2edabad5c9e8b8fb8f80fb5849288027fe362c391
6
+ metadata.gz: a3604323eb8f59f924a20bf2d90cea83bb371b5cc86e55cf575c9deee0fa1c6ad78ed0d7bb3b7fd6e98bb13607edf3cdb6d5c80bb68bfb72259ffb894410225f
7
+ data.tar.gz: efb5934418bb058ffa6a72e246d396b4656da0d49afd02baa87bc468fec4a6691ca2f5e3b0c92763a2896e1ab78b66687e2809c44eae56c0ff255d721581a8f8
data/CHANGELOG.md CHANGED
@@ -1,6 +1,21 @@
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
+
9
+ 1.48.0 (2022-02-24)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.47.0 (2022-02-03)
15
+ ------------------
16
+
17
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
18
+
4
19
  1.46.0 (2021-12-21)
5
20
  ------------------
6
21
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.46.0
1
+ 1.49.0
@@ -27,7 +27,9 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
30
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
31
33
  require 'aws-sdk-core/plugins/signature_v4.rb'
32
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
33
35
 
@@ -74,7 +76,9 @@ module Aws::Shield
74
76
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
75
77
  add_plugin(Aws::Plugins::TransferEncoding)
76
78
  add_plugin(Aws::Plugins::HttpChecksum)
79
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
77
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
+ add_plugin(Aws::Plugins::RecursionDetection)
78
82
  add_plugin(Aws::Plugins::SignatureV4)
79
83
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
80
84
 
@@ -368,8 +372,8 @@ module Aws::Shield
368
372
  #
369
373
  #
370
374
  #
371
- # [1]: https://docs.aws.amazon.com/premiumsupport/business-support/
372
- # [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/
373
377
  #
374
378
  # @option params [required, String] :log_bucket
375
379
  # The Amazon S3 bucket that contains the logs that you want to share.
@@ -429,8 +433,8 @@ module Aws::Shield
429
433
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html
430
434
  # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html
431
435
  # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html
432
- # [5]: https://docs.aws.amazon.com/premiumsupport/business-support/
433
- # [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/
434
438
  #
435
439
  # @option params [required, String] :role_arn
436
440
  # The Amazon Resource Name (ARN) of the role the SRT will use to access
@@ -559,9 +563,11 @@ module Aws::Shield
559
563
  end
560
564
 
561
565
  # Enables Shield Advanced for a specific Amazon Web Services resource.
562
- # The resource can be an Amazon CloudFront distribution, Elastic Load
563
- # Balancing load balancer, Global Accelerator accelerator, Elastic IP
564
- # 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.
565
571
  #
566
572
  # You can add protection to only a single resource with each
567
573
  # `CreateProtection` request. You can add protection to multiple
@@ -595,7 +601,7 @@ module Aws::Shield
595
601
  # * For an Amazon CloudFront distribution:
596
602
  # `arn:aws:cloudfront::account-id:distribution/distribution-id `
597
603
  #
598
- # * For an Global Accelerator accelerator:
604
+ # * For an Global Accelerator standard accelerator:
599
605
  # `arn:aws:globalaccelerator::account-id:accelerator/accelerator-id `
600
606
  #
601
607
  # * For Amazon Route 53: `arn:aws:route53:::hostedzone/hosted-zone-id `
@@ -713,7 +719,13 @@ module Aws::Shield
713
719
 
714
720
  # Activates Shield Advanced for an account.
715
721
  #
716
- # 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
717
729
  # be automatically renewed at the end of the existing subscription
718
730
  # period. You can change this by submitting an `UpdateSubscription`
719
731
  # request.
@@ -948,15 +960,14 @@ module Aws::Shield
948
960
  # Lists the details of a Protection object.
949
961
  #
950
962
  # @option params [String] :protection_id
951
- # The unique identifier (ID) for the Protection object that is
952
- # described. When submitting the `DescribeProtection` request you must
953
- # 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.
954
966
  #
955
967
  # @option params [String] :resource_arn
956
- # The ARN (Amazon Resource Name) of the Amazon Web Services resource for
957
- # the Protection object that is described. When submitting the
958
- # `DescribeProtection` request you must provide either the `ResourceArn`
959
- # 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.
960
971
  #
961
972
  # @return [Types::DescribeProtectionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
962
973
  #
@@ -1058,12 +1069,12 @@ module Aws::Shield
1058
1069
  end
1059
1070
 
1060
1071
  # Disable the Shield Advanced automatic application layer DDoS
1061
- # mitigation feature for the resource. This stops Shield Advanced from
1062
- # creating, verifying, and applying WAF rules for attacks that it
1063
- # 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.
1064
1075
  #
1065
1076
  # @option params [required, String] :resource_arn
1066
- # The ARN (Amazon Resource Name) of the resource.
1077
+ # The ARN (Amazon Resource Name) of the protected resource.
1067
1078
  #
1068
1079
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1069
1080
  #
@@ -1175,9 +1186,10 @@ module Aws::Shield
1175
1186
  end
1176
1187
 
1177
1188
  # Enable the Shield Advanced automatic application layer DDoS mitigation
1178
- # for the resource.
1189
+ # for the protected resource.
1179
1190
  #
1180
- # <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.
1181
1193
  #
1182
1194
  # </note>
1183
1195
  #
@@ -1188,19 +1200,21 @@ module Aws::Shield
1188
1200
  # mitigation works and the requirements for using it, see [Shield
1189
1201
  # Advanced automatic application layer DDoS mitigation][1].
1190
1202
  #
1191
- # 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
1192
1204
  # settings when it's already enabled for a resource. Instead, use
1193
1205
  # UpdateApplicationLayerAutomaticResponse.
1194
1206
  #
1207
+ # </note>
1208
+ #
1195
1209
  # To use this feature, you must associate a web ACL with the protected
1196
1210
  # resource. The web ACL must be created using the latest version of WAF
1197
1211
  # (v2). You can associate the web ACL through the Shield Advanced
1198
1212
  # console at [https://console.aws.amazon.com/wafv2/shieldv2#/][2]. For
1199
- # more information, see [Getting Started with Shield Advanced][3].
1200
- #
1201
- # You can also do this through the WAF console or the WAF API, but you
1202
- # must manage Shield Advanced automatic mitigation through Shield
1203
- # 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].
1204
1218
  #
1205
1219
  #
1206
1220
  #
@@ -1210,7 +1224,7 @@ module Aws::Shield
1210
1224
  # [4]: https://docs.aws.amazon.com/waf/latest/developerguide/
1211
1225
  #
1212
1226
  # @option params [required, String] :resource_arn
1213
- # The ARN (Amazon Resource Name) of the resource.
1227
+ # The ARN (Amazon Resource Name) of the protected resource.
1214
1228
  #
1215
1229
  # @option params [required, Types::ResponseAction] :action
1216
1230
  # Specifies the action setting that Shield Advanced should use in the
@@ -1376,7 +1390,9 @@ module Aws::Shield
1376
1390
  req.send_request(options)
1377
1391
  end
1378
1392
 
1379
- # 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.
1380
1396
  #
1381
1397
  # @option params [String] :next_token
1382
1398
  # When you request a list of objects from Shield Advanced, if the
@@ -1405,6 +1421,14 @@ module Aws::Shield
1405
1421
  #
1406
1422
  # The default setting is 20.
1407
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
+ #
1408
1432
  # @return [Types::ListProtectionGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1409
1433
  #
1410
1434
  # * {Types::ListProtectionGroupsResponse#protection_groups #protection_groups} => Array&lt;Types::ProtectionGroup&gt;
@@ -1417,6 +1441,12 @@ module Aws::Shield
1417
1441
  # resp = client.list_protection_groups({
1418
1442
  # next_token: "Token",
1419
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
+ # },
1420
1450
  # })
1421
1451
  #
1422
1452
  # @example Response structure
@@ -1440,7 +1470,9 @@ module Aws::Shield
1440
1470
  req.send_request(options)
1441
1471
  end
1442
1472
 
1443
- # 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.
1444
1476
  #
1445
1477
  # @option params [String] :next_token
1446
1478
  # When you request a list of objects from Shield Advanced, if the
@@ -1469,6 +1501,14 @@ module Aws::Shield
1469
1501
  #
1470
1502
  # The default setting is 20.
1471
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
+ #
1472
1512
  # @return [Types::ListProtectionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1473
1513
  #
1474
1514
  # * {Types::ListProtectionsResponse#protections #protections} => Array&lt;Types::Protection&gt;
@@ -1481,6 +1521,11 @@ module Aws::Shield
1481
1521
  # resp = client.list_protections({
1482
1522
  # next_token: "Token",
1483
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
+ # },
1484
1529
  # })
1485
1530
  #
1486
1531
  # @example Response structure
@@ -1802,6 +1847,12 @@ module Aws::Shield
1802
1847
  # Updates the details of an existing subscription. Only enter values for
1803
1848
  # parameters you want to change. Empty parameters are not updated.
1804
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
+ #
1805
1856
  # @option params [String] :auto_renew
1806
1857
  # When you initally create a subscription, `AutoRenew` is set to
1807
1858
  # `ENABLED`. If `ENABLED`, the subscription will be automatically
@@ -1840,7 +1891,7 @@ module Aws::Shield
1840
1891
  params: params,
1841
1892
  config: config)
1842
1893
  context[:gem_name] = 'aws-sdk-shield'
1843
- context[:gem_version] = '1.46.0'
1894
+ context[:gem_version] = '1.49.0'
1844
1895
  Seahorse::Client::Request.new(handlers, context)
1845
1896
  end
1846
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.46.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.46.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: 2021-12-21 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
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.125.0
22
+ version: 3.127.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.125.0
32
+ version: 3.127.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement