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