aws-sdk-shield 1.48.0 → 1.50.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-shield/client.rb +98 -34
- data/lib/aws-sdk-shield/client_api.rb +33 -0
- data/lib/aws-sdk-shield/endpoint_parameters.rb +66 -0
- data/lib/aws-sdk-shield/endpoint_provider.rb +171 -0
- data/lib/aws-sdk-shield/endpoints.rb +519 -0
- data/lib/aws-sdk-shield/plugins/endpoints.rb +140 -0
- data/lib/aws-sdk-shield/types.rb +138 -19
- data/lib/aws-sdk-shield.rb +5 -1
- metadata +8 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 687b15b2d2ef4603a47582bfc888f4e750aac8aa0df3d52949f50bb6b9b9f008
|
4
|
+
data.tar.gz: c149164ab4bc44c319c65feeac3e8b80dfe3c3f5855c187ddd626f8e1ae80766
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 86db80667efe5d4597d014f1d682dafb798fd3e65ffeeeffb02af29a89e3663ea1ab010b0d6646fecfbdbb1a07e36d02ef408237cb73d07bfab66692458cbe6f
|
7
|
+
data.tar.gz: 6ac2525d465a1d95d29873b828e5ac729a0ab1aa43d6896f645c1733387801e7a3c89d10b45fc74e07f673677da604c7e196bbac9d19628833f3f8f99b86ba83
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,16 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.50.0 (2022-10-25)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
8
|
+
|
9
|
+
1.49.0 (2022-07-29)
|
10
|
+
------------------
|
11
|
+
|
12
|
+
* Feature - AWS Shield Advanced now supports filtering for ListProtections and ListProtectionGroups.
|
13
|
+
|
4
14
|
1.48.0 (2022-02-24)
|
5
15
|
------------------
|
6
16
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.50.0
|
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
|
|
30
30
|
require 'aws-sdk-core/plugins/checksum_algorithm.rb'
|
31
31
|
require 'aws-sdk-core/plugins/defaults_mode.rb'
|
32
32
|
require 'aws-sdk-core/plugins/recursion_detection.rb'
|
33
|
-
require 'aws-sdk-core/plugins/
|
33
|
+
require 'aws-sdk-core/plugins/sign.rb'
|
34
34
|
require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
|
35
35
|
|
36
36
|
Aws::Plugins::GlobalConfiguration.add_identifier(:shield)
|
@@ -79,8 +79,9 @@ module Aws::Shield
|
|
79
79
|
add_plugin(Aws::Plugins::ChecksumAlgorithm)
|
80
80
|
add_plugin(Aws::Plugins::DefaultsMode)
|
81
81
|
add_plugin(Aws::Plugins::RecursionDetection)
|
82
|
-
add_plugin(Aws::Plugins::
|
82
|
+
add_plugin(Aws::Plugins::Sign)
|
83
83
|
add_plugin(Aws::Plugins::Protocols::JsonRpc)
|
84
|
+
add_plugin(Aws::Shield::Plugins::Endpoints)
|
84
85
|
|
85
86
|
# @overload initialize(options)
|
86
87
|
# @param [Hash] options
|
@@ -297,6 +298,19 @@ module Aws::Shield
|
|
297
298
|
# ** Please note ** When response stubbing is enabled, no HTTP
|
298
299
|
# requests are made, and retries are disabled.
|
299
300
|
#
|
301
|
+
# @option options [Aws::TokenProvider] :token_provider
|
302
|
+
# A Bearer Token Provider. This can be an instance of any one of the
|
303
|
+
# following classes:
|
304
|
+
#
|
305
|
+
# * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
|
306
|
+
# tokens.
|
307
|
+
#
|
308
|
+
# * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
|
309
|
+
# access token generated from `aws login`.
|
310
|
+
#
|
311
|
+
# When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
|
312
|
+
# will be used to search for tokens configured for your profile in shared configuration files.
|
313
|
+
#
|
300
314
|
# @option options [Boolean] :use_dualstack_endpoint
|
301
315
|
# When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
|
302
316
|
# will be used if available.
|
@@ -310,6 +324,9 @@ module Aws::Shield
|
|
310
324
|
# When `true`, request parameters are validated before
|
311
325
|
# sending the request.
|
312
326
|
#
|
327
|
+
# @option options [Aws::Shield::EndpointProvider] :endpoint_provider
|
328
|
+
# The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Shield::EndpointParameters`
|
329
|
+
#
|
313
330
|
# @option options [URI::HTTP,String] :http_proxy A proxy to send
|
314
331
|
# requests through. Formatted like 'http://proxy.com:123'.
|
315
332
|
#
|
@@ -372,8 +389,8 @@ module Aws::Shield
|
|
372
389
|
#
|
373
390
|
#
|
374
391
|
#
|
375
|
-
# [1]:
|
376
|
-
# [2]:
|
392
|
+
# [1]: http://aws.amazon.com/premiumsupport/business-support/
|
393
|
+
# [2]: http://aws.amazon.com/premiumsupport/enterprise-support/
|
377
394
|
#
|
378
395
|
# @option params [required, String] :log_bucket
|
379
396
|
# The Amazon S3 bucket that contains the logs that you want to share.
|
@@ -433,8 +450,8 @@ module Aws::Shield
|
|
433
450
|
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html
|
434
451
|
# [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html
|
435
452
|
# [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html
|
436
|
-
# [5]:
|
437
|
-
# [6]:
|
453
|
+
# [5]: http://aws.amazon.com/premiumsupport/business-support/
|
454
|
+
# [6]: http://aws.amazon.com/premiumsupport/enterprise-support/
|
438
455
|
#
|
439
456
|
# @option params [required, String] :role_arn
|
440
457
|
# The Amazon Resource Name (ARN) of the role the SRT will use to access
|
@@ -563,9 +580,11 @@ module Aws::Shield
|
|
563
580
|
end
|
564
581
|
|
565
582
|
# Enables Shield Advanced for a specific Amazon Web Services resource.
|
566
|
-
# The resource can be an Amazon CloudFront distribution,
|
567
|
-
#
|
568
|
-
# Address, or
|
583
|
+
# The resource can be an Amazon CloudFront distribution, Amazon Route 53
|
584
|
+
# hosted zone, Global Accelerator standard accelerator, Elastic IP
|
585
|
+
# Address, Application Load Balancer, or a Classic Load Balancer. You
|
586
|
+
# can protect Amazon EC2 instances and Network Load Balancers by
|
587
|
+
# association with protected Amazon EC2 Elastic IP addresses.
|
569
588
|
#
|
570
589
|
# You can add protection to only a single resource with each
|
571
590
|
# `CreateProtection` request. You can add protection to multiple
|
@@ -599,7 +618,7 @@ module Aws::Shield
|
|
599
618
|
# * For an Amazon CloudFront distribution:
|
600
619
|
# `arn:aws:cloudfront::account-id:distribution/distribution-id `
|
601
620
|
#
|
602
|
-
# * For an Global Accelerator accelerator:
|
621
|
+
# * For an Global Accelerator standard accelerator:
|
603
622
|
# `arn:aws:globalaccelerator::account-id:accelerator/accelerator-id `
|
604
623
|
#
|
605
624
|
# * For Amazon Route 53: `arn:aws:route53:::hostedzone/hosted-zone-id `
|
@@ -717,7 +736,13 @@ module Aws::Shield
|
|
717
736
|
|
718
737
|
# Activates Shield Advanced for an account.
|
719
738
|
#
|
720
|
-
#
|
739
|
+
# <note markdown="1"> For accounts that are members of an Organizations organization, Shield
|
740
|
+
# Advanced subscriptions are billed against the organization's payer
|
741
|
+
# account, regardless of whether the payer account itself is subscribed.
|
742
|
+
#
|
743
|
+
# </note>
|
744
|
+
#
|
745
|
+
# When you initially create a subscription, your subscription is set to
|
721
746
|
# be automatically renewed at the end of the existing subscription
|
722
747
|
# period. You can change this by submitting an `UpdateSubscription`
|
723
748
|
# request.
|
@@ -952,15 +977,14 @@ module Aws::Shield
|
|
952
977
|
# Lists the details of a Protection object.
|
953
978
|
#
|
954
979
|
# @option params [String] :protection_id
|
955
|
-
# The unique identifier (ID) for the Protection object
|
956
|
-
#
|
957
|
-
#
|
980
|
+
# The unique identifier (ID) for the Protection object to describe. You
|
981
|
+
# must provide either the `ResourceArn` of the protected resource or the
|
982
|
+
# `ProtectionID` of the protection, but not both.
|
958
983
|
#
|
959
984
|
# @option params [String] :resource_arn
|
960
|
-
# The ARN (Amazon Resource Name) of the Amazon Web Services
|
961
|
-
#
|
962
|
-
# `
|
963
|
-
# or the `ProtectionID`, but not both.
|
985
|
+
# The ARN (Amazon Resource Name) of the protected Amazon Web Services
|
986
|
+
# resource. You must provide either the `ResourceArn` of the protected
|
987
|
+
# resource or the `ProtectionID` of the protection, but not both.
|
964
988
|
#
|
965
989
|
# @return [Types::DescribeProtectionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
966
990
|
#
|
@@ -1062,12 +1086,12 @@ module Aws::Shield
|
|
1062
1086
|
end
|
1063
1087
|
|
1064
1088
|
# Disable the Shield Advanced automatic application layer DDoS
|
1065
|
-
# mitigation feature for the resource. This stops Shield
|
1066
|
-
# creating, verifying, and applying WAF rules for attacks
|
1067
|
-
# detects for the resource.
|
1089
|
+
# mitigation feature for the protected resource. This stops Shield
|
1090
|
+
# Advanced from creating, verifying, and applying WAF rules for attacks
|
1091
|
+
# that it detects for the resource.
|
1068
1092
|
#
|
1069
1093
|
# @option params [required, String] :resource_arn
|
1070
|
-
# The ARN (Amazon Resource Name) of the resource.
|
1094
|
+
# The ARN (Amazon Resource Name) of the protected resource.
|
1071
1095
|
#
|
1072
1096
|
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
1073
1097
|
#
|
@@ -1179,9 +1203,10 @@ module Aws::Shield
|
|
1179
1203
|
end
|
1180
1204
|
|
1181
1205
|
# Enable the Shield Advanced automatic application layer DDoS mitigation
|
1182
|
-
# for the resource.
|
1206
|
+
# for the protected resource.
|
1183
1207
|
#
|
1184
|
-
# <note markdown="1"> This feature is available for Amazon CloudFront distributions
|
1208
|
+
# <note markdown="1"> This feature is available for Amazon CloudFront distributions and
|
1209
|
+
# Application Load Balancers only.
|
1185
1210
|
#
|
1186
1211
|
# </note>
|
1187
1212
|
#
|
@@ -1192,19 +1217,21 @@ module Aws::Shield
|
|
1192
1217
|
# mitigation works and the requirements for using it, see [Shield
|
1193
1218
|
# Advanced automatic application layer DDoS mitigation][1].
|
1194
1219
|
#
|
1195
|
-
# Don't use this action to make changes to automatic mitigation
|
1220
|
+
# <note markdown="1"> Don't use this action to make changes to automatic mitigation
|
1196
1221
|
# settings when it's already enabled for a resource. Instead, use
|
1197
1222
|
# UpdateApplicationLayerAutomaticResponse.
|
1198
1223
|
#
|
1224
|
+
# </note>
|
1225
|
+
#
|
1199
1226
|
# To use this feature, you must associate a web ACL with the protected
|
1200
1227
|
# resource. The web ACL must be created using the latest version of WAF
|
1201
1228
|
# (v2). You can associate the web ACL through the Shield Advanced
|
1202
1229
|
# console at [https://console.aws.amazon.com/wafv2/shieldv2#/][2]. For
|
1203
|
-
# more information, see [Getting Started with Shield Advanced][3].
|
1204
|
-
#
|
1205
|
-
#
|
1206
|
-
#
|
1207
|
-
#
|
1230
|
+
# more information, see [Getting Started with Shield Advanced][3]. You
|
1231
|
+
# can also associate the web ACL to the resource through the WAF console
|
1232
|
+
# or the WAF API, but you must manage Shield Advanced automatic
|
1233
|
+
# mitigation through Shield Advanced. For information about WAF, see
|
1234
|
+
# [WAF Developer Guide][4].
|
1208
1235
|
#
|
1209
1236
|
#
|
1210
1237
|
#
|
@@ -1214,7 +1241,7 @@ module Aws::Shield
|
|
1214
1241
|
# [4]: https://docs.aws.amazon.com/waf/latest/developerguide/
|
1215
1242
|
#
|
1216
1243
|
# @option params [required, String] :resource_arn
|
1217
|
-
# The ARN (Amazon Resource Name) of the resource.
|
1244
|
+
# The ARN (Amazon Resource Name) of the protected resource.
|
1218
1245
|
#
|
1219
1246
|
# @option params [required, Types::ResponseAction] :action
|
1220
1247
|
# Specifies the action setting that Shield Advanced should use in the
|
@@ -1380,7 +1407,9 @@ module Aws::Shield
|
|
1380
1407
|
req.send_request(options)
|
1381
1408
|
end
|
1382
1409
|
|
1383
|
-
# Retrieves
|
1410
|
+
# Retrieves ProtectionGroup objects for the account. You can retrieve
|
1411
|
+
# all protection groups or you can provide filtering criteria and
|
1412
|
+
# retrieve just the subset of protection groups that match the criteria.
|
1384
1413
|
#
|
1385
1414
|
# @option params [String] :next_token
|
1386
1415
|
# When you request a list of objects from Shield Advanced, if the
|
@@ -1409,6 +1438,14 @@ module Aws::Shield
|
|
1409
1438
|
#
|
1410
1439
|
# The default setting is 20.
|
1411
1440
|
#
|
1441
|
+
# @option params [Types::InclusionProtectionGroupFilters] :inclusion_filters
|
1442
|
+
# Narrows the set of protection groups that the call retrieves. You can
|
1443
|
+
# retrieve a single protection group by its name and you can retrieve
|
1444
|
+
# all protection groups that are configured with specific pattern or
|
1445
|
+
# aggregation settings. You can provide up to one criteria per filter
|
1446
|
+
# type. Shield Advanced returns the protection groups that exactly match
|
1447
|
+
# all of the search criteria that you provide.
|
1448
|
+
#
|
1412
1449
|
# @return [Types::ListProtectionGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1413
1450
|
#
|
1414
1451
|
# * {Types::ListProtectionGroupsResponse#protection_groups #protection_groups} => Array<Types::ProtectionGroup>
|
@@ -1421,6 +1458,12 @@ module Aws::Shield
|
|
1421
1458
|
# resp = client.list_protection_groups({
|
1422
1459
|
# next_token: "Token",
|
1423
1460
|
# max_results: 1,
|
1461
|
+
# inclusion_filters: {
|
1462
|
+
# protection_group_ids: ["ProtectionGroupId"],
|
1463
|
+
# patterns: ["ALL"], # accepts ALL, ARBITRARY, BY_RESOURCE_TYPE
|
1464
|
+
# resource_types: ["CLOUDFRONT_DISTRIBUTION"], # accepts CLOUDFRONT_DISTRIBUTION, ROUTE_53_HOSTED_ZONE, ELASTIC_IP_ALLOCATION, CLASSIC_LOAD_BALANCER, APPLICATION_LOAD_BALANCER, GLOBAL_ACCELERATOR
|
1465
|
+
# aggregations: ["SUM"], # accepts SUM, MEAN, MAX
|
1466
|
+
# },
|
1424
1467
|
# })
|
1425
1468
|
#
|
1426
1469
|
# @example Response structure
|
@@ -1444,7 +1487,9 @@ module Aws::Shield
|
|
1444
1487
|
req.send_request(options)
|
1445
1488
|
end
|
1446
1489
|
|
1447
|
-
#
|
1490
|
+
# Retrieves Protection objects for the account. You can retrieve all
|
1491
|
+
# protections or you can provide filtering criteria and retrieve just
|
1492
|
+
# the subset of protections that match the criteria.
|
1448
1493
|
#
|
1449
1494
|
# @option params [String] :next_token
|
1450
1495
|
# When you request a list of objects from Shield Advanced, if the
|
@@ -1473,6 +1518,14 @@ module Aws::Shield
|
|
1473
1518
|
#
|
1474
1519
|
# The default setting is 20.
|
1475
1520
|
#
|
1521
|
+
# @option params [Types::InclusionProtectionFilters] :inclusion_filters
|
1522
|
+
# Narrows the set of protections that the call retrieves. You can
|
1523
|
+
# retrieve a single protection by providing its name or the ARN (Amazon
|
1524
|
+
# Resource Name) of its protected resource. You can also retrieve all
|
1525
|
+
# protections for a specific resource type. You can provide up to one
|
1526
|
+
# criteria per filter type. Shield Advanced returns protections that
|
1527
|
+
# exactly match all of the filter criteria that you provide.
|
1528
|
+
#
|
1476
1529
|
# @return [Types::ListProtectionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1477
1530
|
#
|
1478
1531
|
# * {Types::ListProtectionsResponse#protections #protections} => Array<Types::Protection>
|
@@ -1485,6 +1538,11 @@ module Aws::Shield
|
|
1485
1538
|
# resp = client.list_protections({
|
1486
1539
|
# next_token: "Token",
|
1487
1540
|
# max_results: 1,
|
1541
|
+
# inclusion_filters: {
|
1542
|
+
# resource_arns: ["ResourceArn"],
|
1543
|
+
# protection_names: ["ProtectionName"],
|
1544
|
+
# resource_types: ["CLOUDFRONT_DISTRIBUTION"], # accepts CLOUDFRONT_DISTRIBUTION, ROUTE_53_HOSTED_ZONE, ELASTIC_IP_ALLOCATION, CLASSIC_LOAD_BALANCER, APPLICATION_LOAD_BALANCER, GLOBAL_ACCELERATOR
|
1545
|
+
# },
|
1488
1546
|
# })
|
1489
1547
|
#
|
1490
1548
|
# @example Response structure
|
@@ -1806,6 +1864,12 @@ module Aws::Shield
|
|
1806
1864
|
# Updates the details of an existing subscription. Only enter values for
|
1807
1865
|
# parameters you want to change. Empty parameters are not updated.
|
1808
1866
|
#
|
1867
|
+
# <note markdown="1"> For accounts that are members of an Organizations organization, Shield
|
1868
|
+
# Advanced subscriptions are billed against the organization's payer
|
1869
|
+
# account, regardless of whether the payer account itself is subscribed.
|
1870
|
+
#
|
1871
|
+
# </note>
|
1872
|
+
#
|
1809
1873
|
# @option params [String] :auto_renew
|
1810
1874
|
# When you initally create a subscription, `AutoRenew` is set to
|
1811
1875
|
# `ENABLED`. If `ENABLED`, the subscription will be automatically
|
@@ -1844,7 +1908,7 @@ module Aws::Shield
|
|
1844
1908
|
params: params,
|
1845
1909
|
config: config)
|
1846
1910
|
context[:gem_name] = 'aws-sdk-shield'
|
1847
|
-
context[:gem_version] = '1.
|
1911
|
+
context[:gem_version] = '1.50.0'
|
1848
1912
|
Seahorse::Client::Request.new(handlers, context)
|
1849
1913
|
end
|
1850
1914
|
|
@@ -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"))
|
@@ -0,0 +1,66 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# WARNING ABOUT GENERATED CODE
|
4
|
+
#
|
5
|
+
# This file is generated. See the contributing guide for more information:
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
|
+
#
|
8
|
+
# WARNING ABOUT GENERATED CODE
|
9
|
+
|
10
|
+
module Aws::Shield
|
11
|
+
# Endpoint parameters used to influence endpoints per request.
|
12
|
+
#
|
13
|
+
# @!attribute region
|
14
|
+
# The AWS region used to dispatch the request.
|
15
|
+
#
|
16
|
+
# @return [String]
|
17
|
+
#
|
18
|
+
# @!attribute use_dual_stack
|
19
|
+
# When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
|
20
|
+
#
|
21
|
+
# @return [Boolean]
|
22
|
+
#
|
23
|
+
# @!attribute use_fips
|
24
|
+
# When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
|
25
|
+
#
|
26
|
+
# @return [Boolean]
|
27
|
+
#
|
28
|
+
# @!attribute endpoint
|
29
|
+
# Override the endpoint used to send this request
|
30
|
+
#
|
31
|
+
# @return [String]
|
32
|
+
#
|
33
|
+
EndpointParameters = Struct.new(
|
34
|
+
:region,
|
35
|
+
:use_dual_stack,
|
36
|
+
:use_fips,
|
37
|
+
:endpoint,
|
38
|
+
) do
|
39
|
+
include Aws::Structure
|
40
|
+
|
41
|
+
# @api private
|
42
|
+
class << self
|
43
|
+
PARAM_MAP = {
|
44
|
+
'Region' => :region,
|
45
|
+
'UseDualStack' => :use_dual_stack,
|
46
|
+
'UseFIPS' => :use_fips,
|
47
|
+
'Endpoint' => :endpoint,
|
48
|
+
}.freeze
|
49
|
+
end
|
50
|
+
|
51
|
+
def initialize(options = {})
|
52
|
+
self[:region] = options[:region]
|
53
|
+
self[:use_dual_stack] = options[:use_dual_stack]
|
54
|
+
self[:use_dual_stack] = false if self[:use_dual_stack].nil?
|
55
|
+
if self[:use_dual_stack].nil?
|
56
|
+
raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
|
57
|
+
end
|
58
|
+
self[:use_fips] = options[:use_fips]
|
59
|
+
self[:use_fips] = false if self[:use_fips].nil?
|
60
|
+
if self[:use_fips].nil?
|
61
|
+
raise ArgumentError, "Missing required EndpointParameter: :use_fips"
|
62
|
+
end
|
63
|
+
self[:endpoint] = options[:endpoint]
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|