Skip to content

Commit d907155

Browse files
author
awstools
committed
feat(client-shield): AWS Shield Advanced now supports filtering for ListProtections and ListProtectionGroups.
1 parent 31f2a30 commit d907155

13 files changed

+438
-82
lines changed

clients/client-shield/src/Shield.ts

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ import { ShieldClient } from "./ShieldClient";
184184
export class Shield extends ShieldClient {
185185
/**
186186
* <p>Authorizes the Shield Response Team (SRT) to access the specified Amazon S3 bucket containing log data such as Application Load Balancer access logs, CloudFront logs, or logs from third party sources. You can associate up to 10 Amazon S3 buckets with your subscription.</p>
187-
* <p>To use the services of the SRT and make an <code>AssociateDRTLogBucket</code> request, you must be subscribed to the <a href="https://docs.aws.amazon.com/premiumsupport/business-support/">Business Support plan</a> or the <a href="https://docs.aws.amazon.com/premiumsupport/enterprise-support/">Enterprise Support plan</a>.</p>
187+
* <p>To use the services of the SRT and make an <code>AssociateDRTLogBucket</code> request, you must be subscribed to the <a href="http://aws.amazon.com/premiumsupport/business-support/">Business Support plan</a> or the <a href="http://aws.amazon.com/premiumsupport/enterprise-support/">Enterprise Support plan</a>.</p>
188188
*/
189189
public associateDRTLogBucket(
190190
args: AssociateDRTLogBucketCommandInput,
@@ -223,7 +223,7 @@ export class Shield extends ShieldClient {
223223
*
224224
* <p>The SRT will have access only to your WAF and Shield resources. By submitting this request, you authorize the SRT to inspect your WAF and Shield configuration and create and update WAF rules and web ACLs on your behalf. The SRT takes these actions only if explicitly authorized by you.</p>
225225
* <p>You must have the <code>iam:PassRole</code> permission to make an <code>AssociateDRTRole</code> request. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html">Granting a user permissions to pass a role to an Amazon Web Services service</a>. </p>
226-
* <p>To use the services of the SRT and make an <code>AssociateDRTRole</code> request, you must be subscribed to the <a href="https://docs.aws.amazon.com/premiumsupport/business-support/">Business Support plan</a> or the <a href="https://docs.aws.amazon.com/premiumsupport/enterprise-support/">Enterprise Support plan</a>.</p>
226+
* <p>To use the services of the SRT and make an <code>AssociateDRTRole</code> request, you must be subscribed to the <a href="http://aws.amazon.com/premiumsupport/business-support/">Business Support plan</a> or the <a href="http://aws.amazon.com/premiumsupport/enterprise-support/">Enterprise Support plan</a>.</p>
227227
*/
228228
public associateDRTRole(
229229
args: AssociateDRTRoleCommandInput,
@@ -325,7 +325,7 @@ export class Shield extends ShieldClient {
325325
}
326326

327327
/**
328-
* <p>Enables Shield Advanced for a specific Amazon Web Services resource. The resource can be an Amazon CloudFront distribution, Elastic Load Balancing load balancer, Global Accelerator accelerator, Elastic IP Address, or an Amazon Route 53 hosted zone.</p>
328+
* <p>Enables Shield Advanced for a specific Amazon Web Services resource. The resource can be an Amazon CloudFront distribution, Amazon Route 53 hosted zone, Global Accelerator standard accelerator, Elastic IP Address, Application Load Balancer, or a Classic Load Balancer. You can protect Amazon EC2 instances and Network Load Balancers by association with protected Amazon EC2 Elastic IP addresses.</p>
329329
* <p>You can add protection to only a single resource with each <code>CreateProtection</code> request. You can add protection to multiple resources
330330
* at once through the Shield Advanced console at <a href="https://console.aws.amazon.com/wafv2/shieldv2#/">https://console.aws.amazon.com/wafv2/shieldv2#/</a>.
331331
* For more information see
@@ -395,8 +395,11 @@ export class Shield extends ShieldClient {
395395

396396
/**
397397
* <p>Activates Shield Advanced for an account.</p>
398-
*
399-
* <p>When you initally create a subscription, your subscription is set to be automatically renewed at the end of the existing subscription period. You can change this by submitting an <code>UpdateSubscription</code> request. </p>
398+
* <note>
399+
* <p>For accounts that are members of an Organizations organization, Shield Advanced subscriptions are billed against the organization's payer account,
400+
* regardless of whether the payer account itself is subscribed. </p>
401+
* </note>
402+
* <p>When you initially create a subscription, your subscription is set to be automatically renewed at the end of the existing subscription period. You can change this by submitting an <code>UpdateSubscription</code> request. </p>
400403
*/
401404
public createSubscription(
402405
args: CreateSubscriptionCommandInput,
@@ -752,7 +755,7 @@ export class Shield extends ShieldClient {
752755
}
753756

754757
/**
755-
* <p>Disable the Shield Advanced automatic application layer DDoS mitigation feature for the resource. This
758+
* <p>Disable the Shield Advanced automatic application layer DDoS mitigation feature for the protected resource. This
756759
* stops Shield Advanced from creating, verifying, and applying WAF rules for attacks that it detects for the resource. </p>
757760
*/
758761
public disableApplicationLayerAutomaticResponse(
@@ -916,19 +919,20 @@ export class Shield extends ShieldClient {
916919
}
917920

918921
/**
919-
* <p>Enable the Shield Advanced automatic application layer DDoS mitigation for the resource. </p>
922+
* <p>Enable the Shield Advanced automatic application layer DDoS mitigation for the protected resource. </p>
920923
* <note>
921-
* <p>This feature is available for Amazon CloudFront distributions only.</p>
924+
* <p>This feature is available for Amazon CloudFront distributions and Application Load Balancers only.</p>
922925
* </note>
923926
* <p>This causes Shield Advanced to create, verify, and apply WAF rules for DDoS attacks that it detects for the
924927
* resource. Shield Advanced applies the rules in a Shield rule group inside the web ACL that you've associated
925928
* with the resource. For information about how automatic mitigation works and the requirements for using it, see
926929
* <a href="https://docs.aws.amazon.com/waf/latest/developerguide/ddos-advanced-automatic-app-layer-response.html">Shield Advanced automatic application layer DDoS mitigation</a>.</p>
927-
* <p>Don't use this action to make changes to automatic mitigation settings when it's already enabled for a resource. Instead, use <a>UpdateApplicationLayerAutomaticResponse</a>.</p>
930+
* <note>
931+
* <p>Don't use this action to make changes to automatic mitigation settings when it's already enabled for a resource. Instead, use <a>UpdateApplicationLayerAutomaticResponse</a>.</p>
932+
* </note>
928933
* <p>To use this feature, you must associate a web ACL with the protected resource. The web ACL must be created using the latest version of WAF (v2). You can associate the web ACL through the Shield Advanced console
929934
* at <a href="https://console.aws.amazon.com/wafv2/shieldv2#/">https://console.aws.amazon.com/wafv2/shieldv2#/</a>. For more information,
930-
* see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/getting-started-ddos.html">Getting Started with Shield Advanced</a>.</p>
931-
* <p>You can also do this through the WAF console or the WAF API, but you must manage Shield Advanced automatic mitigation through Shield Advanced. For information about WAF, see
935+
* see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/getting-started-ddos.html">Getting Started with Shield Advanced</a>. You can also associate the web ACL to the resource through the WAF console or the WAF API, but you must manage Shield Advanced automatic mitigation through Shield Advanced. For information about WAF, see
932936
* <a href="https://docs.aws.amazon.com/waf/latest/developerguide/">WAF Developer Guide</a>.</p>
933937
*/
934938
public enableApplicationLayerAutomaticResponse(
@@ -1054,7 +1058,8 @@ export class Shield extends ShieldClient {
10541058
}
10551059

10561060
/**
1057-
* <p>Retrieves the <a>ProtectionGroup</a> objects for the account.</p>
1061+
* <p>Retrieves <a>ProtectionGroup</a> objects for the account. You can retrieve all protection groups or you can provide
1062+
* filtering criteria and retrieve just the subset of protection groups that match the criteria. </p>
10581063
*/
10591064
public listProtectionGroups(
10601065
args: ListProtectionGroupsCommandInput,
@@ -1086,7 +1091,8 @@ export class Shield extends ShieldClient {
10861091
}
10871092

10881093
/**
1089-
* <p>Lists all <a>Protection</a> objects for the account.</p>
1094+
* <p>Retrieves <a>Protection</a> objects for the account. You can retrieve all protections or you can provide
1095+
* filtering criteria and retrieve just the subset of protections that match the criteria. </p>
10901096
*/
10911097
public listProtections(
10921098
args: ListProtectionsCommandInput,
@@ -1339,6 +1345,10 @@ export class Shield extends ShieldClient {
13391345

13401346
/**
13411347
* <p>Updates the details of an existing subscription. Only enter values for parameters you want to change. Empty parameters are not updated.</p>
1348+
* <note>
1349+
* <p>For accounts that are members of an Organizations organization, Shield Advanced subscriptions are billed against the organization's payer account,
1350+
* regardless of whether the payer account itself is subscribed. </p>
1351+
* </note>
13421352
*/
13431353
public updateSubscription(
13441354
args: UpdateSubscriptionCommandInput,

clients/client-shield/src/commands/AssociateDRTLogBucketCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ export interface AssociateDRTLogBucketCommandOutput extends AssociateDRTLogBucke
2929

3030
/**
3131
* <p>Authorizes the Shield Response Team (SRT) to access the specified Amazon S3 bucket containing log data such as Application Load Balancer access logs, CloudFront logs, or logs from third party sources. You can associate up to 10 Amazon S3 buckets with your subscription.</p>
32-
* <p>To use the services of the SRT and make an <code>AssociateDRTLogBucket</code> request, you must be subscribed to the <a href="https://docs.aws.amazon.com/premiumsupport/business-support/">Business Support plan</a> or the <a href="https://docs.aws.amazon.com/premiumsupport/enterprise-support/">Enterprise Support plan</a>.</p>
32+
* <p>To use the services of the SRT and make an <code>AssociateDRTLogBucket</code> request, you must be subscribed to the <a href="http://aws.amazon.com/premiumsupport/business-support/">Business Support plan</a> or the <a href="http://aws.amazon.com/premiumsupport/enterprise-support/">Enterprise Support plan</a>.</p>
3333
* @example
3434
* Use a bare-bones client and the command you need to make an API call.
3535
* ```javascript

clients/client-shield/src/commands/AssociateDRTRoleCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ export interface AssociateDRTRoleCommandOutput extends AssociateDRTRoleResponse,
3535
*
3636
* <p>The SRT will have access only to your WAF and Shield resources. By submitting this request, you authorize the SRT to inspect your WAF and Shield configuration and create and update WAF rules and web ACLs on your behalf. The SRT takes these actions only if explicitly authorized by you.</p>
3737
* <p>You must have the <code>iam:PassRole</code> permission to make an <code>AssociateDRTRole</code> request. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html">Granting a user permissions to pass a role to an Amazon Web Services service</a>. </p>
38-
* <p>To use the services of the SRT and make an <code>AssociateDRTRole</code> request, you must be subscribed to the <a href="https://docs.aws.amazon.com/premiumsupport/business-support/">Business Support plan</a> or the <a href="https://docs.aws.amazon.com/premiumsupport/enterprise-support/">Enterprise Support plan</a>.</p>
38+
* <p>To use the services of the SRT and make an <code>AssociateDRTRole</code> request, you must be subscribed to the <a href="http://aws.amazon.com/premiumsupport/business-support/">Business Support plan</a> or the <a href="http://aws.amazon.com/premiumsupport/enterprise-support/">Enterprise Support plan</a>.</p>
3939
* @example
4040
* Use a bare-bones client and the command you need to make an API call.
4141
* ```javascript

clients/client-shield/src/commands/CreateProtectionCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export interface CreateProtectionCommandInput extends CreateProtectionRequest {}
2828
export interface CreateProtectionCommandOutput extends CreateProtectionResponse, __MetadataBearer {}
2929

3030
/**
31-
* <p>Enables Shield Advanced for a specific Amazon Web Services resource. The resource can be an Amazon CloudFront distribution, Elastic Load Balancing load balancer, Global Accelerator accelerator, Elastic IP Address, or an Amazon Route 53 hosted zone.</p>
31+
* <p>Enables Shield Advanced for a specific Amazon Web Services resource. The resource can be an Amazon CloudFront distribution, Amazon Route 53 hosted zone, Global Accelerator standard accelerator, Elastic IP Address, Application Load Balancer, or a Classic Load Balancer. You can protect Amazon EC2 instances and Network Load Balancers by association with protected Amazon EC2 Elastic IP addresses.</p>
3232
* <p>You can add protection to only a single resource with each <code>CreateProtection</code> request. You can add protection to multiple resources
3333
* at once through the Shield Advanced console at <a href="https://console.aws.amazon.com/wafv2/shieldv2#/">https://console.aws.amazon.com/wafv2/shieldv2#/</a>.
3434
* For more information see

clients/client-shield/src/commands/CreateSubscriptionCommand.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,11 @@ export interface CreateSubscriptionCommandOutput extends CreateSubscriptionRespo
2929

3030
/**
3131
* <p>Activates Shield Advanced for an account.</p>
32-
*
33-
* <p>When you initally create a subscription, your subscription is set to be automatically renewed at the end of the existing subscription period. You can change this by submitting an <code>UpdateSubscription</code> request. </p>
32+
* <note>
33+
* <p>For accounts that are members of an Organizations organization, Shield Advanced subscriptions are billed against the organization's payer account,
34+
* regardless of whether the payer account itself is subscribed. </p>
35+
* </note>
36+
* <p>When you initially create a subscription, your subscription is set to be automatically renewed at the end of the existing subscription period. You can change this by submitting an <code>UpdateSubscription</code> request. </p>
3437
* @example
3538
* Use a bare-bones client and the command you need to make an API call.
3639
* ```javascript

clients/client-shield/src/commands/DisableApplicationLayerAutomaticResponseCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ export interface DisableApplicationLayerAutomaticResponseCommandOutput
3131
__MetadataBearer {}
3232

3333
/**
34-
* <p>Disable the Shield Advanced automatic application layer DDoS mitigation feature for the resource. This
34+
* <p>Disable the Shield Advanced automatic application layer DDoS mitigation feature for the protected resource. This
3535
* stops Shield Advanced from creating, verifying, and applying WAF rules for attacks that it detects for the resource. </p>
3636
* @example
3737
* Use a bare-bones client and the command you need to make an API call.

clients/client-shield/src/commands/EnableApplicationLayerAutomaticResponseCommand.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,19 +31,20 @@ export interface EnableApplicationLayerAutomaticResponseCommandOutput
3131
__MetadataBearer {}
3232

3333
/**
34-
* <p>Enable the Shield Advanced automatic application layer DDoS mitigation for the resource. </p>
34+
* <p>Enable the Shield Advanced automatic application layer DDoS mitigation for the protected resource. </p>
3535
* <note>
36-
* <p>This feature is available for Amazon CloudFront distributions only.</p>
36+
* <p>This feature is available for Amazon CloudFront distributions and Application Load Balancers only.</p>
3737
* </note>
3838
* <p>This causes Shield Advanced to create, verify, and apply WAF rules for DDoS attacks that it detects for the
3939
* resource. Shield Advanced applies the rules in a Shield rule group inside the web ACL that you've associated
4040
* with the resource. For information about how automatic mitigation works and the requirements for using it, see
4141
* <a href="https://docs.aws.amazon.com/waf/latest/developerguide/ddos-advanced-automatic-app-layer-response.html">Shield Advanced automatic application layer DDoS mitigation</a>.</p>
42-
* <p>Don't use this action to make changes to automatic mitigation settings when it's already enabled for a resource. Instead, use <a>UpdateApplicationLayerAutomaticResponse</a>.</p>
42+
* <note>
43+
* <p>Don't use this action to make changes to automatic mitigation settings when it's already enabled for a resource. Instead, use <a>UpdateApplicationLayerAutomaticResponse</a>.</p>
44+
* </note>
4345
* <p>To use this feature, you must associate a web ACL with the protected resource. The web ACL must be created using the latest version of WAF (v2). You can associate the web ACL through the Shield Advanced console
4446
* at <a href="https://console.aws.amazon.com/wafv2/shieldv2#/">https://console.aws.amazon.com/wafv2/shieldv2#/</a>. For more information,
45-
* see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/getting-started-ddos.html">Getting Started with Shield Advanced</a>.</p>
46-
* <p>You can also do this through the WAF console or the WAF API, but you must manage Shield Advanced automatic mitigation through Shield Advanced. For information about WAF, see
47+
* see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/getting-started-ddos.html">Getting Started with Shield Advanced</a>. You can also associate the web ACL to the resource through the WAF console or the WAF API, but you must manage Shield Advanced automatic mitigation through Shield Advanced. For information about WAF, see
4748
* <a href="https://docs.aws.amazon.com/waf/latest/developerguide/">WAF Developer Guide</a>.</p>
4849
* @example
4950
* Use a bare-bones client and the command you need to make an API call.

clients/client-shield/src/commands/ListProtectionGroupsCommand.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@ export interface ListProtectionGroupsCommandInput extends ListProtectionGroupsRe
2828
export interface ListProtectionGroupsCommandOutput extends ListProtectionGroupsResponse, __MetadataBearer {}
2929

3030
/**
31-
* <p>Retrieves the <a>ProtectionGroup</a> objects for the account.</p>
31+
* <p>Retrieves <a>ProtectionGroup</a> objects for the account. You can retrieve all protection groups or you can provide
32+
* filtering criteria and retrieve just the subset of protection groups that match the criteria. </p>
3233
* @example
3334
* Use a bare-bones client and the command you need to make an API call.
3435
* ```javascript

clients/client-shield/src/commands/ListProtectionsCommand.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@ export interface ListProtectionsCommandInput extends ListProtectionsRequest {}
2828
export interface ListProtectionsCommandOutput extends ListProtectionsResponse, __MetadataBearer {}
2929

3030
/**
31-
* <p>Lists all <a>Protection</a> objects for the account.</p>
31+
* <p>Retrieves <a>Protection</a> objects for the account. You can retrieve all protections or you can provide
32+
* filtering criteria and retrieve just the subset of protections that match the criteria. </p>
3233
* @example
3334
* Use a bare-bones client and the command you need to make an API call.
3435
* ```javascript

clients/client-shield/src/commands/UpdateSubscriptionCommand.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,10 @@ export interface UpdateSubscriptionCommandOutput extends UpdateSubscriptionRespo
2929

3030
/**
3131
* <p>Updates the details of an existing subscription. Only enter values for parameters you want to change. Empty parameters are not updated.</p>
32+
* <note>
33+
* <p>For accounts that are members of an Organizations organization, Shield Advanced subscriptions are billed against the organization's payer account,
34+
* regardless of whether the payer account itself is subscribed. </p>
35+
* </note>
3236
* @example
3337
* Use a bare-bones client and the command you need to make an API call.
3438
* ```javascript

0 commit comments

Comments
 (0)