Class: AWS.Shield
- Inherits:
-
AWS.Service
- Object
- AWS.Service
- AWS.Shield
- Identifier:
- shield
- API Version:
- 2016-06-02
- Defined in:
- (unknown)
Overview
Constructs a service interface object. Each API operation is exposed as a function on service.
Service Description
This is the AWS Shield Advanced API Reference. This guide is for developers who need detailed information about the AWS Shield Advanced API actions, data types, and errors. For detailed information about AWS WAF and AWS Shield Advanced features and an overview of how to use the AWS WAF and AWS Shield Advanced APIs, see the AWS WAF and AWS Shield Developer Guide.
Sending a Request Using Shield
var shield = new AWS.Shield();
shield.associateDRTLogBucket(params, function (err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Locking the API Version
In order to ensure that the Shield object uses this specific API, you can
construct the object by passing the apiVersion
option to the constructor:
var shield = new AWS.Shield({apiVersion: '2016-06-02'});
You can also set the API version globally in AWS.config.apiVersions
using
the shield service identifier:
AWS.config.apiVersions = {
shield: '2016-06-02',
// other service API versions
};
var shield = new AWS.Shield();
Constructor Summary
-
new AWS.Shield(options = {}) ⇒ Object
constructor
Constructs a service object.
Property Summary
-
endpoint ⇒ AWS.Endpoint
readwrite
An Endpoint object representing the endpoint URL for service requests.
Properties inherited from AWS.Service
Method Summary
-
associateDRTLogBucket(params = {}, callback) ⇒ AWS.Request
Authorizes the DDoS Response team (DRT) to access the specified Amazon S3 bucket containing your flow logs.
-
associateDRTRole(params = {}, callback) ⇒ AWS.Request
Authorizes the DDoS Response team (DRT), using the specified role, to access your AWS account to assist with DDoS attack mitigation during potential attacks.
-
createProtection(params = {}, callback) ⇒ AWS.Request
Enables AWS Shield Advanced for a specific AWS resource.
-
createSubscription(params = {}, callback) ⇒ AWS.Request
Activates AWS Shield Advanced for an account.
-
deleteProtection(params = {}, callback) ⇒ AWS.Request
Deletes an AWS Shield Advanced Protection.
-
deleteSubscription(params = {}, callback) ⇒ AWS.Request
Removes AWS Shield Advanced from an account.
-
describeAttack(params = {}, callback) ⇒ AWS.Request
Describes the details of a DDoS attack.
-
describeDRTAccess(params = {}, callback) ⇒ AWS.Request
Returns the current role and list of Amazon S3 log buckets used by the DDoS Response team (DRT) to access your AWS account while assisting with attack mitigation.
-
describeEmergencyContactSettings(params = {}, callback) ⇒ AWS.Request
Lists the email addresses that the DRT can use to contact you during a suspected attack.
-
describeProtection(params = {}, callback) ⇒ AWS.Request
Lists the details of a Protection object.
-
describeSubscription(params = {}, callback) ⇒ AWS.Request
Provides details about the AWS Shield Advanced subscription for an account.
-
disassociateDRTLogBucket(params = {}, callback) ⇒ AWS.Request
Removes the DDoS Response team's (DRT) access to the specified Amazon S3 bucket containing your flow logs.
-
disassociateDRTRole(params = {}, callback) ⇒ AWS.Request
Removes the DDoS Response team's (DRT) access to your AWS account.
-
getSubscriptionState(params = {}, callback) ⇒ AWS.Request
Returns the SubscriptionState, either Active or Inactive.
-
listAttacks(params = {}, callback) ⇒ AWS.Request
Returns all ongoing DDoS attacks or all DDoS attacks during a specified time period.
-
listProtections(params = {}, callback) ⇒ AWS.Request
Lists all Protection objects for the account.
-
updateEmergencyContactSettings(params = {}, callback) ⇒ AWS.Request
Updates the details of the list of email addresses that the DRT can use to contact you during a suspected attack.
-
updateSubscription(params = {}, callback) ⇒ AWS.Request
Updates the details of an existing subscription.
Methods inherited from AWS.Service
makeRequest, makeUnauthenticatedRequest, waitFor, setupRequestListeners, defineService
Constructor Details
Property Details
Method Details
associateDRTLogBucket(params = {}, callback) ⇒ AWS.Request
Authorizes the DDoS Response team (DRT) to access the specified Amazon S3 bucket containing your flow logs. You can associate up to 10 Amazon S3 buckets with your subscription.
To use the services of the DRT and make an AssociateDRTLogBucket
request, you must be subscribed to the Business Support plan or the Enterprise Support plan.
associateDRTRole(params = {}, callback) ⇒ AWS.Request
Authorizes the DDoS Response team (DRT), using the specified role, to access your AWS account to assist with DDoS attack mitigation during potential attacks. This enables the DRT to inspect your AWS WAF configuration and create or update AWS WAF rules and web ACLs.
You can associate only one RoleArn
with your subscription. If you submit an AssociateDRTRole
request for an account that already has an associated role, the new RoleArn
will replace the existing RoleArn
.
Prior to making the AssociateDRTRole
request, you must attach the AWSShieldDRTAccessPolicy managed policy to the role you will specify in the request. For more information see Attaching and Detaching IAM Policies. The role must also trust the service principal drt.shield.amazonaws.com
. For more information, see IAM JSON Policy Elements: Principal.
The DRT will have access only to your AWS WAF and Shield resources. By submitting this request, you authorize the DRT to inspect your AWS WAF and Shield configuration and create and update AWS WAF rules and web ACLs on your behalf. The DRT takes these actions only if explicitly authorized by you.
You must have the iam:PassRole
permission to make an AssociateDRTRole
request. For more information, see Granting a User Permissions to Pass a Role to an AWS Service.
To use the services of the DRT and make an AssociateDRTRole
request, you must be subscribed to the Business Support plan or the Enterprise Support plan.
createProtection(params = {}, callback) ⇒ AWS.Request
Enables AWS Shield Advanced for a specific AWS resource. The resource can be an Amazon CloudFront distribution, Elastic Load Balancing load balancer, AWS Global Accelerator accelerator, Elastic IP Address, or an Amazon Route 53 hosted zone.
You can add protection to only a single resource with each CreateProtection request. If you want to add protection to multiple resources at once, use the AWS WAF console. For more information see Getting Started with AWS Shield Advanced and Add AWS Shield Advanced Protection to more AWS Resources.
createSubscription(params = {}, callback) ⇒ AWS.Request
Activates AWS Shield Advanced for an account.
As part of this request you can specify EmergencySettings
that automaticaly grant the DDoS response team (DRT) needed permissions to assist you during a suspected DDoS attack. For more information see Authorize the DDoS Response Team to Create Rules and Web ACLs on Your Behalf.
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 UpdateSubscription
request.
deleteSubscription(params = {}, callback) ⇒ AWS.Request
Removes AWS Shield Advanced from an account. AWS Shield Advanced requires a 1-year subscription commitment. You cannot delete a subscription prior to the completion of that commitment.
describeDRTAccess(params = {}, callback) ⇒ AWS.Request
Returns the current role and list of Amazon S3 log buckets used by the DDoS Response team (DRT) to access your AWS account while assisting with attack mitigation.
describeEmergencyContactSettings(params = {}, callback) ⇒ AWS.Request
Lists the email addresses that the DRT can use to contact you during a suspected attack.
describeSubscription(params = {}, callback) ⇒ AWS.Request
Provides details about the AWS Shield Advanced subscription for an account.
disassociateDRTLogBucket(params = {}, callback) ⇒ AWS.Request
Removes the DDoS Response team's (DRT) access to the specified Amazon S3 bucket containing your flow logs.
To make a DisassociateDRTLogBucket
request, you must be subscribed to the Business Support plan or the Enterprise Support plan. However, if you are not subscribed to one of these support plans, but had been previously and had granted the DRT access to your account, you can submit a DisassociateDRTLogBucket
request to remove this access.
disassociateDRTRole(params = {}, callback) ⇒ AWS.Request
Removes the DDoS Response team's (DRT) access to your AWS account.
To make a DisassociateDRTRole
request, you must be subscribed to the Business Support plan or the Enterprise Support plan. However, if you are not subscribed to one of these support plans, but had been previously and had granted the DRT access to your account, you can submit a DisassociateDRTRole
request to remove this access.
getSubscriptionState(params = {}, callback) ⇒ AWS.Request
Returns the SubscriptionState
, either Active
or Inactive
.
listAttacks(params = {}, callback) ⇒ AWS.Request
Returns all ongoing DDoS attacks or all DDoS attacks during a specified time period.