Shield class

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.

Constructors

Shield({required String region, AwsClientCredentials? credentials, AwsClientCredentialsProvider? credentialsProvider, Client? client, String? endpointUrl})

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

associateDRTLogBucket({required String logBucket}) Future<void>
Authorizes the DDoS Response Team (DRT) to access the specified Amazon S3 bucket containing your AWS WAF logs. You can associate up to 10 Amazon S3 buckets with your subscription.
associateDRTRole({required String roleArn}) Future<void>
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.
associateHealthCheck({required String healthCheckArn, required String protectionId}) Future<void>
Adds health-based detection to the Shield Advanced protection for a resource. Shield Advanced health-based detection uses the health of your AWS resource to improve responsiveness and accuracy in attack detection and mitigation.
associateProactiveEngagementDetails({required List<EmergencyContact> emergencyContactList}) Future<void>
Initializes proactive engagement and sets the list of contacts for the DDoS Response Team (DRT) to use. You must provide at least one phone number in the emergency contact list.
close() → void
Closes the internal HTTP client if none was provided at creation. If a client was passed as a constructor argument, this becomes a noop.
createProtection({required String name, required String resourceArn}) Future<CreateProtectionResponse>
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.
createProtectionGroup({required ProtectionGroupAggregation aggregation, required ProtectionGroupPattern pattern, required String protectionGroupId, List<String>? members, ProtectedResourceType? resourceType}) Future<void>
Creates a grouping of protected resources so they can be handled as a collective. This resource grouping improves the accuracy of detection and reduces false positives.
createSubscription() Future<void>
Activates AWS Shield Advanced for an account.
deleteProtection({required String protectionId}) Future<void>
Deletes an AWS Shield Advanced Protection.
deleteProtectionGroup({required String protectionGroupId}) Future<void>
Removes the specified protection group.
deleteSubscription() Future<void>
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.
describeAttack({required String attackId}) Future<DescribeAttackResponse>
Describes the details of a DDoS attack.
describeAttackStatistics() Future<DescribeAttackStatisticsResponse>
Provides information about the number and type of attacks AWS Shield has detected in the last year for all resources that belong to your account, regardless of whether you've defined Shield protections for them. This operation is available to Shield customers as well as to Shield Advanced customers.
describeDRTAccess() Future<DescribeDRTAccessResponse>
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() Future<DescribeEmergencyContactSettingsResponse>
A list of email addresses and phone numbers that the DDoS Response Team (DRT) can use to contact you if you have proactive engagement enabled, for escalations to the DRT and to initiate proactive customer support.
describeProtection({String? protectionId, String? resourceArn}) Future<DescribeProtectionResponse>
Lists the details of a Protection object.
describeProtectionGroup({required String protectionGroupId}) Future<DescribeProtectionGroupResponse>
Returns the specification for the specified protection group.
describeSubscription() Future<DescribeSubscriptionResponse>
Provides details about the AWS Shield Advanced subscription for an account.
disableProactiveEngagement() Future<void>
Removes authorization from the DDoS Response Team (DRT) to notify contacts about escalations to the DRT and to initiate proactive customer support.
disassociateDRTLogBucket({required String logBucket}) Future<void>
Removes the DDoS Response Team's (DRT) access to the specified Amazon S3 bucket containing your AWS WAF logs.
disassociateDRTRole() Future<void>
Removes the DDoS Response Team's (DRT) access to your AWS account.
disassociateHealthCheck({required String healthCheckArn, required String protectionId}) Future<void>
Removes health-based detection from the Shield Advanced protection for a resource. Shield Advanced health-based detection uses the health of your AWS resource to improve responsiveness and accuracy in attack detection and mitigation.
enableProactiveEngagement() Future<void>
Authorizes the DDoS Response Team (DRT) to use email and phone to notify contacts about escalations to the DRT and to initiate proactive customer support.
getSubscriptionState() Future<GetSubscriptionStateResponse>
Returns the SubscriptionState, either Active or Inactive.
listAttacks({TimeRange? endTime, int? maxResults, String? nextToken, List<String>? resourceArns, TimeRange? startTime}) Future<ListAttacksResponse>
Returns all ongoing DDoS attacks or all DDoS attacks during a specified time period.
listProtectionGroups({int? maxResults, String? nextToken}) Future<ListProtectionGroupsResponse>
Retrieves the ProtectionGroup objects for the account.
listProtections({int? maxResults, String? nextToken}) Future<ListProtectionsResponse>
Lists all Protection objects for the account.
listResourcesInProtectionGroup({required String protectionGroupId, int? maxResults, String? nextToken}) Future<ListResourcesInProtectionGroupResponse>
Retrieves the resources that are included in the protection group.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited
updateEmergencyContactSettings({List<EmergencyContact>? emergencyContactList}) Future<void>
Updates the details of the list of email addresses and phone numbers that the DDoS Response Team (DRT) can use to contact you if you have proactive engagement enabled, for escalations to the DRT and to initiate proactive customer support.
updateProtectionGroup({required ProtectionGroupAggregation aggregation, required ProtectionGroupPattern pattern, required String protectionGroupId, List<String>? members, ProtectedResourceType? resourceType}) Future<void>
Updates an existing protection group. A protection group is a grouping of protected resources so they can be handled as a collective. This resource grouping improves the accuracy of detection and reduces false positives.
updateSubscription({AutoRenew? autoRenew}) Future<void>
Updates the details of an existing subscription. Only enter values for parameters you want to change. Empty parameters are not updated.

Operators

operator ==(Object other) bool
The equality operator.
inherited