shield

package
v1.8.22 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 11, 2017 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package shield provides the client and types for making API requests to AWS Shield.

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 (http://docs.aws.amazon.com/waf/latest/developerguide/).

See https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02 for more information on this service.

See shield package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/shield/

Using the Client

To use the client for AWS Shield you will first need to create a new instance of it.

When creating a client for an AWS service you'll first need to have a Session already created. The Session provides configuration that can be shared between multiple service clients. Additional configuration can be applied to the Session and service's client when they are constructed. The aws package's Config type contains several fields such as Region for the AWS Region the client should make API requests too. The optional Config value can be provided as the variadic argument for Sessions and client creation.

Once the service's client is created you can use it to make API requests the AWS service. These clients are safe to use concurrently.

// Create a session to share configuration, and load external configuration.
sess := session.Must(session.NewSession())

// Create the service's client with the session.
svc := shield.New(sess)

See the SDK's documentation for more information on how to use service clients. https://docs.aws.amazon.com/sdk-for-go/api/

See aws package's Config type for more information on configuration options. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the AWS Shield client Shield for more information on creating the service's client. https://docs.aws.amazon.com/sdk-for-go/api/service/shield/#New

Once the client is created you can make an API request to the service. Each API method takes a input parameter, and returns the service response and an error.

The API method will document which error codes the service can be returned by the operation if the service models the API operation's errors. These errors will also be available as const strings prefixed with "ErrCode".

result, err := svc.CreateProtection(params)
if err != nil {
    // Cast err to awserr.Error to handle specific error codes.
    aerr, ok := err.(awserr.Error)
    if ok && aerr.Code() == <error code to check for> {
        // Specific error code handling
    }
    return err
}

fmt.Println("CreateProtection result:")
fmt.Println(result)

Using the Client with Context

The service's client also provides methods to make API requests with a Context value. This allows you to control the timeout, and cancellation of pending requests. These methods also take request Option as variadic parameter to apply additional configuration to the API request.

ctx := context.Background()

result, err := svc.CreateProtectionWithContext(ctx, params)

See the request package documentation for more information on using Context pattern with the SDK. https://docs.aws.amazon.com/sdk-for-go/api/aws/request/

Index

Examples

Constants

View Source
const (
	// SubResourceTypeIp is a SubResourceType enum value
	SubResourceTypeIp = "IP"

	// SubResourceTypeUrl is a SubResourceType enum value
	SubResourceTypeUrl = "URL"
)
View Source
const (

	// ErrCodeInternalErrorException for service response error code
	// "InternalErrorException".
	//
	// Exception that indicates that a problem occurred with the service infrastructure.
	// You can retry the request.
	ErrCodeInternalErrorException = "InternalErrorException"

	// ErrCodeInvalidOperationException for service response error code
	// "InvalidOperationException".
	//
	// Exception that indicates that the operation would not cause any change to
	// occur.
	ErrCodeInvalidOperationException = "InvalidOperationException"

	// ErrCodeInvalidParameterException for service response error code
	// "InvalidParameterException".
	//
	// Exception that indicates that the parameters passed to the API are invalid.
	ErrCodeInvalidParameterException = "InvalidParameterException"

	// ErrCodeInvalidResourceException for service response error code
	// "InvalidResourceException".
	//
	// Exception that indicates that the resource is invalid. You might not have
	// access to the resource, or the resource might not exist.
	ErrCodeInvalidResourceException = "InvalidResourceException"

	// ErrCodeLimitsExceededException for service response error code
	// "LimitsExceededException".
	//
	// Exception that indicates that the operation would exceed a limit.
	ErrCodeLimitsExceededException = "LimitsExceededException"

	// ErrCodeLockedSubscriptionException for service response error code
	// "LockedSubscriptionException".
	//
	// Exception that indicates that the subscription has been modified by another
	// client. You can retry the request.
	ErrCodeLockedSubscriptionException = "LockedSubscriptionException"

	// ErrCodeOptimisticLockException for service response error code
	// "OptimisticLockException".
	//
	// Exception that indicates that the protection state has been modified by another
	// client. You can retry the request.
	ErrCodeOptimisticLockException = "OptimisticLockException"

	// ErrCodeResourceAlreadyExistsException for service response error code
	// "ResourceAlreadyExistsException".
	//
	// Exception indicating the specified resource already exists.
	ErrCodeResourceAlreadyExistsException = "ResourceAlreadyExistsException"

	// ErrCodeResourceNotFoundException for service response error code
	// "ResourceNotFoundException".
	//
	// Exception indicating the specified resource does not exist.
	ErrCodeResourceNotFoundException = "ResourceNotFoundException"
)
View Source
const (
	ServiceName = "shield"    // Service endpoint prefix API calls made to.
	EndpointsID = ServiceName // Service ID for Regions and Endpoints metadata.
)

Service information constants

Variables

This section is empty.

Functions

This section is empty.

Types

type AttackDetail

type AttackDetail struct {

	// List of counters that describe the attack for the specified time period.
	AttackCounters []*SummarizedCounter `type:"list"`

	// The unique identifier (ID) of the attack.
	AttackId *string `min:"1" type:"string"`

	// The time the attack ended, in the format 2016-12-16T13:50Z.
	EndTime *time.Time `type:"timestamp" timestampFormat:"unix"`

	// List of mitigation actions taken for the attack.
	Mitigations []*Mitigation `type:"list"`

	// The ARN (Amazon Resource Name) of the resource that was attacked.
	ResourceArn *string `min:"1" type:"string"`

	// The time the attack started, in the format 2016-12-16T13:50Z.
	StartTime *time.Time `type:"timestamp" timestampFormat:"unix"`

	// If applicable, additional detail about the resource being attacked, for example,
	// IP address or URL.
	SubResources []*SubResourceSummary `type:"list"`
	// contains filtered or unexported fields
}

The details of a DDoS attack. Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AttackDetail

func (AttackDetail) GoString

func (s AttackDetail) GoString() string

GoString returns the string representation

func (*AttackDetail) SetAttackCounters

func (s *AttackDetail) SetAttackCounters(v []*SummarizedCounter) *AttackDetail

SetAttackCounters sets the AttackCounters field's value.

func (*AttackDetail) SetAttackId

func (s *AttackDetail) SetAttackId(v string) *AttackDetail

SetAttackId sets the AttackId field's value.

func (*AttackDetail) SetEndTime

func (s *AttackDetail) SetEndTime(v time.Time) *AttackDetail

SetEndTime sets the EndTime field's value.

func (*AttackDetail) SetMitigations

func (s *AttackDetail) SetMitigations(v []*Mitigation) *AttackDetail

SetMitigations sets the Mitigations field's value.

func (*AttackDetail) SetResourceArn

func (s *AttackDetail) SetResourceArn(v string) *AttackDetail

SetResourceArn sets the ResourceArn field's value.

func (*AttackDetail) SetStartTime

func (s *AttackDetail) SetStartTime(v time.Time) *AttackDetail

SetStartTime sets the StartTime field's value.

func (*AttackDetail) SetSubResources

func (s *AttackDetail) SetSubResources(v []*SubResourceSummary) *AttackDetail

SetSubResources sets the SubResources field's value.

func (AttackDetail) String

func (s AttackDetail) String() string

String returns the string representation

type AttackSummary

type AttackSummary struct {

	// The unique identifier (ID) of the attack.
	AttackId *string `type:"string"`

	// The list of attacks for a specified time period.
	AttackVectors []*AttackVectorDescription `type:"list"`

	// The end time of the attack, in the format 2016-12-16T13:50Z.
	EndTime *time.Time `type:"timestamp" timestampFormat:"unix"`

	// The ARN (Amazon Resource Name) of the resource that was attacked.
	ResourceArn *string `type:"string"`

	// The start time of the attack, in the format 2016-12-16T13:50Z.
	StartTime *time.Time `type:"timestamp" timestampFormat:"unix"`
	// contains filtered or unexported fields
}

Summarizes all DDoS attacks for a specified time period. Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AttackSummary

func (AttackSummary) GoString

func (s AttackSummary) GoString() string

GoString returns the string representation

func (*AttackSummary) SetAttackId

func (s *AttackSummary) SetAttackId(v string) *AttackSummary

SetAttackId sets the AttackId field's value.

func (*AttackSummary) SetAttackVectors

func (s *AttackSummary) SetAttackVectors(v []*AttackVectorDescription) *AttackSummary

SetAttackVectors sets the AttackVectors field's value.

func (*AttackSummary) SetEndTime

func (s *AttackSummary) SetEndTime(v time.Time) *AttackSummary

SetEndTime sets the EndTime field's value.

func (*AttackSummary) SetResourceArn

func (s *AttackSummary) SetResourceArn(v string) *AttackSummary

SetResourceArn sets the ResourceArn field's value.

func (*AttackSummary) SetStartTime

func (s *AttackSummary) SetStartTime(v time.Time) *AttackSummary

SetStartTime sets the StartTime field's value.

func (AttackSummary) String

func (s AttackSummary) String() string

String returns the string representation

type AttackVectorDescription

type AttackVectorDescription struct {

	// The attack type, for example, SNMP reflection or SYN flood.
	//
	// VectorType is a required field
	VectorType *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

Describes the attack. Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AttackVectorDescription

func (AttackVectorDescription) GoString

func (s AttackVectorDescription) GoString() string

GoString returns the string representation

func (*AttackVectorDescription) SetVectorType

SetVectorType sets the VectorType field's value.

func (AttackVectorDescription) String

func (s AttackVectorDescription) String() string

String returns the string representation

type CreateProtectionInput

type CreateProtectionInput struct {

	// Friendly name for the Protection you are creating.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	// The ARN (Amazon Resource Name) of the resource to be protected.
	//
	// ResourceArn is a required field
	ResourceArn *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateProtectionRequest

func (CreateProtectionInput) GoString

func (s CreateProtectionInput) GoString() string

GoString returns the string representation

func (*CreateProtectionInput) SetName

SetName sets the Name field's value.

func (*CreateProtectionInput) SetResourceArn

func (s *CreateProtectionInput) SetResourceArn(v string) *CreateProtectionInput

SetResourceArn sets the ResourceArn field's value.

func (CreateProtectionInput) String

func (s CreateProtectionInput) String() string

String returns the string representation

func (*CreateProtectionInput) Validate

func (s *CreateProtectionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateProtectionOutput

type CreateProtectionOutput struct {

	// The unique identifier (ID) for the Protection object that is created.
	ProtectionId *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateProtectionResponse

func (CreateProtectionOutput) GoString

func (s CreateProtectionOutput) GoString() string

GoString returns the string representation

func (*CreateProtectionOutput) SetProtectionId

func (s *CreateProtectionOutput) SetProtectionId(v string) *CreateProtectionOutput

SetProtectionId sets the ProtectionId field's value.

func (CreateProtectionOutput) String

func (s CreateProtectionOutput) String() string

String returns the string representation

type CreateSubscriptionInput

type CreateSubscriptionInput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateSubscriptionRequest

func (CreateSubscriptionInput) GoString

func (s CreateSubscriptionInput) GoString() string

GoString returns the string representation

func (CreateSubscriptionInput) String

func (s CreateSubscriptionInput) String() string

String returns the string representation

type CreateSubscriptionOutput

type CreateSubscriptionOutput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateSubscriptionResponse

func (CreateSubscriptionOutput) GoString

func (s CreateSubscriptionOutput) GoString() string

GoString returns the string representation

func (CreateSubscriptionOutput) String

func (s CreateSubscriptionOutput) String() string

String returns the string representation

type DeleteProtectionInput

type DeleteProtectionInput struct {

	// The unique identifier (ID) for the Protection object to be deleted.
	//
	// ProtectionId is a required field
	ProtectionId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteProtectionRequest

func (DeleteProtectionInput) GoString

func (s DeleteProtectionInput) GoString() string

GoString returns the string representation

func (*DeleteProtectionInput) SetProtectionId

func (s *DeleteProtectionInput) SetProtectionId(v string) *DeleteProtectionInput

SetProtectionId sets the ProtectionId field's value.

func (DeleteProtectionInput) String

func (s DeleteProtectionInput) String() string

String returns the string representation

func (*DeleteProtectionInput) Validate

func (s *DeleteProtectionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteProtectionOutput

type DeleteProtectionOutput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteProtectionResponse

func (DeleteProtectionOutput) GoString

func (s DeleteProtectionOutput) GoString() string

GoString returns the string representation

func (DeleteProtectionOutput) String

func (s DeleteProtectionOutput) String() string

String returns the string representation

type DeleteSubscriptionInput

type DeleteSubscriptionInput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteSubscriptionRequest

func (DeleteSubscriptionInput) GoString

func (s DeleteSubscriptionInput) GoString() string

GoString returns the string representation

func (DeleteSubscriptionInput) String

func (s DeleteSubscriptionInput) String() string

String returns the string representation

type DeleteSubscriptionOutput

type DeleteSubscriptionOutput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteSubscriptionResponse

func (DeleteSubscriptionOutput) GoString

func (s DeleteSubscriptionOutput) GoString() string

GoString returns the string representation

func (DeleteSubscriptionOutput) String

func (s DeleteSubscriptionOutput) String() string

String returns the string representation

type DescribeAttackInput

type DescribeAttackInput struct {

	// The unique identifier (ID) for the attack that to be described.
	//
	// AttackId is a required field
	AttackId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeAttackRequest

func (DescribeAttackInput) GoString

func (s DescribeAttackInput) GoString() string

GoString returns the string representation

func (*DescribeAttackInput) SetAttackId

func (s *DescribeAttackInput) SetAttackId(v string) *DescribeAttackInput

SetAttackId sets the AttackId field's value.

func (DescribeAttackInput) String

func (s DescribeAttackInput) String() string

String returns the string representation

func (*DescribeAttackInput) Validate

func (s *DescribeAttackInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeAttackOutput

type DescribeAttackOutput struct {

	// The attack that is described.
	Attack *AttackDetail `type:"structure"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeAttackResponse

func (DescribeAttackOutput) GoString

func (s DescribeAttackOutput) GoString() string

GoString returns the string representation

func (*DescribeAttackOutput) SetAttack

SetAttack sets the Attack field's value.

func (DescribeAttackOutput) String

func (s DescribeAttackOutput) String() string

String returns the string representation

type DescribeProtectionInput

type DescribeProtectionInput struct {

	// The unique identifier (ID) for the Protection object that is described.
	//
	// ProtectionId is a required field
	ProtectionId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtectionRequest

func (DescribeProtectionInput) GoString

func (s DescribeProtectionInput) GoString() string

GoString returns the string representation

func (*DescribeProtectionInput) SetProtectionId

SetProtectionId sets the ProtectionId field's value.

func (DescribeProtectionInput) String

func (s DescribeProtectionInput) String() string

String returns the string representation

func (*DescribeProtectionInput) Validate

func (s *DescribeProtectionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeProtectionOutput

type DescribeProtectionOutput struct {

	// The Protection object that is described.
	Protection *Protection `type:"structure"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtectionResponse

func (DescribeProtectionOutput) GoString

func (s DescribeProtectionOutput) GoString() string

GoString returns the string representation

func (*DescribeProtectionOutput) SetProtection

SetProtection sets the Protection field's value.

func (DescribeProtectionOutput) String

func (s DescribeProtectionOutput) String() string

String returns the string representation

type DescribeSubscriptionInput

type DescribeSubscriptionInput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeSubscriptionRequest

func (DescribeSubscriptionInput) GoString

func (s DescribeSubscriptionInput) GoString() string

GoString returns the string representation

func (DescribeSubscriptionInput) String

func (s DescribeSubscriptionInput) String() string

String returns the string representation

type DescribeSubscriptionOutput

type DescribeSubscriptionOutput struct {

	// The AWS Shield Advanced subscription details for an account.
	Subscription *Subscription `type:"structure"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeSubscriptionResponse

func (DescribeSubscriptionOutput) GoString

func (s DescribeSubscriptionOutput) GoString() string

GoString returns the string representation

func (*DescribeSubscriptionOutput) SetSubscription

SetSubscription sets the Subscription field's value.

func (DescribeSubscriptionOutput) String

String returns the string representation

type ListAttacksInput

type ListAttacksInput struct {

	// The end of the time period for the attacks.
	EndTime *TimeRange `type:"structure"`

	// The maximum number of AttackSummary objects to be returned. If this is left
	// blank, the first 20 results will be returned.
	MaxResults *int64 `type:"integer"`

	// The ListAttacksRequest.NextMarker value from a previous call to ListAttacksRequest.
	// Pass null if this is the first call.
	NextToken *string `min:"1" type:"string"`

	// The ARN (Amazon Resource Name) of the resource that was attacked. If this
	// is left blank, all applicable resources for this account will be included.
	ResourceArns []*string `type:"list"`

	// The time period for the attacks.
	StartTime *TimeRange `type:"structure"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListAttacksRequest

func (ListAttacksInput) GoString

func (s ListAttacksInput) GoString() string

GoString returns the string representation

func (*ListAttacksInput) SetEndTime

func (s *ListAttacksInput) SetEndTime(v *TimeRange) *ListAttacksInput

SetEndTime sets the EndTime field's value.

func (*ListAttacksInput) SetMaxResults

func (s *ListAttacksInput) SetMaxResults(v int64) *ListAttacksInput

SetMaxResults sets the MaxResults field's value.

func (*ListAttacksInput) SetNextToken

func (s *ListAttacksInput) SetNextToken(v string) *ListAttacksInput

SetNextToken sets the NextToken field's value.

func (*ListAttacksInput) SetResourceArns

func (s *ListAttacksInput) SetResourceArns(v []*string) *ListAttacksInput

SetResourceArns sets the ResourceArns field's value.

func (*ListAttacksInput) SetStartTime

func (s *ListAttacksInput) SetStartTime(v *TimeRange) *ListAttacksInput

SetStartTime sets the StartTime field's value.

func (ListAttacksInput) String

func (s ListAttacksInput) String() string

String returns the string representation

func (*ListAttacksInput) Validate

func (s *ListAttacksInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListAttacksOutput

type ListAttacksOutput struct {

	// The attack information for the specified time range.
	AttackSummaries []*AttackSummary `type:"list"`

	// The token returned by a previous call to indicate that there is more data
	// available. If not null, more results are available. Pass this value for the
	// NextMarker parameter in a subsequent call to ListAttacks to retrieve the
	// next set of items.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListAttacksResponse

func (ListAttacksOutput) GoString

func (s ListAttacksOutput) GoString() string

GoString returns the string representation

func (*ListAttacksOutput) SetAttackSummaries

func (s *ListAttacksOutput) SetAttackSummaries(v []*AttackSummary) *ListAttacksOutput

SetAttackSummaries sets the AttackSummaries field's value.

func (*ListAttacksOutput) SetNextToken

func (s *ListAttacksOutput) SetNextToken(v string) *ListAttacksOutput

SetNextToken sets the NextToken field's value.

func (ListAttacksOutput) String

func (s ListAttacksOutput) String() string

String returns the string representation

type ListProtectionsInput

type ListProtectionsInput struct {

	// The maximum number of Protection objects to be returned. If this is left
	// blank the first 20 results will be returned.
	MaxResults *int64 `type:"integer"`

	// The ListProtectionsRequest.NextToken value from a previous call to ListProtections.
	// Pass null if this is the first call.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtectionsRequest

func (ListProtectionsInput) GoString

func (s ListProtectionsInput) GoString() string

GoString returns the string representation

func (*ListProtectionsInput) SetMaxResults

func (s *ListProtectionsInput) SetMaxResults(v int64) *ListProtectionsInput

SetMaxResults sets the MaxResults field's value.

func (*ListProtectionsInput) SetNextToken

func (s *ListProtectionsInput) SetNextToken(v string) *ListProtectionsInput

SetNextToken sets the NextToken field's value.

func (ListProtectionsInput) String

func (s ListProtectionsInput) String() string

String returns the string representation

func (*ListProtectionsInput) Validate

func (s *ListProtectionsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListProtectionsOutput

type ListProtectionsOutput struct {

	// If you specify a value for MaxResults and you have more Protections than
	// the value of MaxResults, AWS Shield Advanced returns a NextToken value in
	// the response that allows you to list another group of Protections. For the
	// second and subsequent ListProtections requests, specify the value of NextToken
	// from the previous response to get information about another batch of Protections.
	NextToken *string `min:"1" type:"string"`

	// The array of enabled Protection objects.
	Protections []*Protection `type:"list"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtectionsResponse

func (ListProtectionsOutput) GoString

func (s ListProtectionsOutput) GoString() string

GoString returns the string representation

func (*ListProtectionsOutput) SetNextToken

SetNextToken sets the NextToken field's value.

func (*ListProtectionsOutput) SetProtections

func (s *ListProtectionsOutput) SetProtections(v []*Protection) *ListProtectionsOutput

SetProtections sets the Protections field's value.

func (ListProtectionsOutput) String

func (s ListProtectionsOutput) String() string

String returns the string representation

type Mitigation

type Mitigation struct {

	// The name of the mitigation taken for this attack.
	MitigationName *string `type:"string"`
	// contains filtered or unexported fields
}

The mitigation applied to a DDoS attack. Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/Mitigation

func (Mitigation) GoString

func (s Mitigation) GoString() string

GoString returns the string representation

func (*Mitigation) SetMitigationName

func (s *Mitigation) SetMitigationName(v string) *Mitigation

SetMitigationName sets the MitigationName field's value.

func (Mitigation) String

func (s Mitigation) String() string

String returns the string representation

type Protection

type Protection struct {

	// The unique identifier (ID) of the protection.
	Id *string `min:"1" type:"string"`

	// The friendly name of the protection. For example, My CloudFront distributions.
	Name *string `min:"1" type:"string"`

	// The ARN (Amazon Resource Name) of the AWS resource that is protected.
	ResourceArn *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

An object that represents a resource that is under DDoS protection. Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/Protection

func (Protection) GoString

func (s Protection) GoString() string

GoString returns the string representation

func (*Protection) SetId

func (s *Protection) SetId(v string) *Protection

SetId sets the Id field's value.

func (*Protection) SetName

func (s *Protection) SetName(v string) *Protection

SetName sets the Name field's value.

func (*Protection) SetResourceArn

func (s *Protection) SetResourceArn(v string) *Protection

SetResourceArn sets the ResourceArn field's value.

func (Protection) String

func (s Protection) String() string

String returns the string representation

type Shield

type Shield struct {
	*client.Client
}

Shield provides the API operation methods for making requests to AWS Shield. See this package's package overview docs for details on the service.

Shield methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

func New(p client.ConfigProvider, cfgs ...*aws.Config) *Shield

New creates a new instance of the Shield client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a Shield client from just a session.
svc := shield.New(mySession)

// Create a Shield client with additional configuration
svc := shield.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*Shield) CreateProtection

func (c *Shield) CreateProtection(input *CreateProtectionInput) (*CreateProtectionOutput, error)

CreateProtection API operation for AWS Shield.

Enables AWS Shield Advanced for a specific AWS resource. The resource can be an Amazon CloudFront distribution, Elastic Load Balancing load balancer, or an Amazon Route 53 hosted zone.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Shield's API operation CreateProtection for usage and error information.

Returned Error Codes:

  • ErrCodeInternalErrorException "InternalErrorException" Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.

  • ErrCodeInvalidResourceException "InvalidResourceException" Exception that indicates that the resource is invalid. You might not have access to the resource, or the resource might not exist.

  • ErrCodeInvalidOperationException "InvalidOperationException" Exception that indicates that the operation would not cause any change to occur.

  • ErrCodeLimitsExceededException "LimitsExceededException" Exception that indicates that the operation would exceed a limit.

  • ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException" Exception indicating the specified resource already exists.

  • ErrCodeOptimisticLockException "OptimisticLockException" Exception that indicates that the protection state has been modified by another client. You can retry the request.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" Exception indicating the specified resource does not exist.

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateProtection

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/shield"
)

func main() {
	sess := session.Must(session.NewSession())

	svc := shield.New(sess)

	params := &shield.CreateProtectionInput{
		Name:        aws.String("ProtectionName"), // Required
		ResourceArn: aws.String("ResourceArn"),    // Required
	}
	resp, err := svc.CreateProtection(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*Shield) CreateProtectionRequest

func (c *Shield) CreateProtectionRequest(input *CreateProtectionInput) (req *request.Request, output *CreateProtectionOutput)

CreateProtectionRequest generates a "aws/request.Request" representing the client's request for the CreateProtection operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See CreateProtection for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateProtection method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the CreateProtectionRequest method.
req, resp := client.CreateProtectionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateProtection

func (*Shield) CreateProtectionWithContext added in v1.8.0

func (c *Shield) CreateProtectionWithContext(ctx aws.Context, input *CreateProtectionInput, opts ...request.Option) (*CreateProtectionOutput, error)

CreateProtectionWithContext is the same as CreateProtection with the addition of the ability to pass a context and additional request options.

See CreateProtection for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Shield) CreateSubscription

func (c *Shield) CreateSubscription(input *CreateSubscriptionInput) (*CreateSubscriptionOutput, error)

CreateSubscription API operation for AWS Shield.

Activates AWS Shield Advanced for an account.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Shield's API operation CreateSubscription for usage and error information.

Returned Error Codes:

  • ErrCodeInternalErrorException "InternalErrorException" Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.

  • ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException" Exception indicating the specified resource already exists.

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateSubscription

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/shield"
)

func main() {
	sess := session.Must(session.NewSession())

	svc := shield.New(sess)

	var params *shield.CreateSubscriptionInput
	resp, err := svc.CreateSubscription(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*Shield) CreateSubscriptionRequest

func (c *Shield) CreateSubscriptionRequest(input *CreateSubscriptionInput) (req *request.Request, output *CreateSubscriptionOutput)

CreateSubscriptionRequest generates a "aws/request.Request" representing the client's request for the CreateSubscription operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See CreateSubscription for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateSubscription method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the CreateSubscriptionRequest method.
req, resp := client.CreateSubscriptionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateSubscription

func (*Shield) CreateSubscriptionWithContext added in v1.8.0

func (c *Shield) CreateSubscriptionWithContext(ctx aws.Context, input *CreateSubscriptionInput, opts ...request.Option) (*CreateSubscriptionOutput, error)

CreateSubscriptionWithContext is the same as CreateSubscription with the addition of the ability to pass a context and additional request options.

See CreateSubscription for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Shield) DeleteProtection

func (c *Shield) DeleteProtection(input *DeleteProtectionInput) (*DeleteProtectionOutput, error)

DeleteProtection API operation for AWS Shield.

Deletes an AWS Shield Advanced Protection.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Shield's API operation DeleteProtection for usage and error information.

Returned Error Codes:

  • ErrCodeInternalErrorException "InternalErrorException" Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" Exception indicating the specified resource does not exist.

  • ErrCodeOptimisticLockException "OptimisticLockException" Exception that indicates that the protection state has been modified by another client. You can retry the request.

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteProtection

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/shield"
)

func main() {
	sess := session.Must(session.NewSession())

	svc := shield.New(sess)

	params := &shield.DeleteProtectionInput{
		ProtectionId: aws.String("ProtectionId"), // Required
	}
	resp, err := svc.DeleteProtection(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*Shield) DeleteProtectionRequest

func (c *Shield) DeleteProtectionRequest(input *DeleteProtectionInput) (req *request.Request, output *DeleteProtectionOutput)

DeleteProtectionRequest generates a "aws/request.Request" representing the client's request for the DeleteProtection operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DeleteProtection for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DeleteProtection method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DeleteProtectionRequest method.
req, resp := client.DeleteProtectionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteProtection

func (*Shield) DeleteProtectionWithContext added in v1.8.0

func (c *Shield) DeleteProtectionWithContext(ctx aws.Context, input *DeleteProtectionInput, opts ...request.Option) (*DeleteProtectionOutput, error)

DeleteProtectionWithContext is the same as DeleteProtection with the addition of the ability to pass a context and additional request options.

See DeleteProtection for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Shield) DeleteSubscription

func (c *Shield) DeleteSubscription(input *DeleteSubscriptionInput) (*DeleteSubscriptionOutput, error)

DeleteSubscription API operation for AWS Shield.

Removes AWS Shield Advanced from an account.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Shield's API operation DeleteSubscription for usage and error information.

Returned Error Codes:

  • ErrCodeInternalErrorException "InternalErrorException" Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.

  • ErrCodeLockedSubscriptionException "LockedSubscriptionException" Exception that indicates that the subscription has been modified by another client. You can retry the request.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" Exception indicating the specified resource does not exist.

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteSubscription

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/shield"
)

func main() {
	sess := session.Must(session.NewSession())

	svc := shield.New(sess)

	var params *shield.DeleteSubscriptionInput
	resp, err := svc.DeleteSubscription(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*Shield) DeleteSubscriptionRequest

func (c *Shield) DeleteSubscriptionRequest(input *DeleteSubscriptionInput) (req *request.Request, output *DeleteSubscriptionOutput)

DeleteSubscriptionRequest generates a "aws/request.Request" representing the client's request for the DeleteSubscription operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DeleteSubscription for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DeleteSubscription method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DeleteSubscriptionRequest method.
req, resp := client.DeleteSubscriptionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteSubscription

func (*Shield) DeleteSubscriptionWithContext added in v1.8.0

func (c *Shield) DeleteSubscriptionWithContext(ctx aws.Context, input *DeleteSubscriptionInput, opts ...request.Option) (*DeleteSubscriptionOutput, error)

DeleteSubscriptionWithContext is the same as DeleteSubscription with the addition of the ability to pass a context and additional request options.

See DeleteSubscription for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Shield) DescribeAttack

func (c *Shield) DescribeAttack(input *DescribeAttackInput) (*DescribeAttackOutput, error)

DescribeAttack API operation for AWS Shield.

Describes the details of a DDoS attack.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Shield's API operation DescribeAttack for usage and error information.

Returned Error Codes:

  • ErrCodeInternalErrorException "InternalErrorException" Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.

  • ErrCodeInvalidParameterException "InvalidParameterException" Exception that indicates that the parameters passed to the API are invalid.

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeAttack

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/shield"
)

func main() {
	sess := session.Must(session.NewSession())

	svc := shield.New(sess)

	params := &shield.DescribeAttackInput{
		AttackId: aws.String("AttackId"), // Required
	}
	resp, err := svc.DescribeAttack(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*Shield) DescribeAttackRequest

func (c *Shield) DescribeAttackRequest(input *DescribeAttackInput) (req *request.Request, output *DescribeAttackOutput)

DescribeAttackRequest generates a "aws/request.Request" representing the client's request for the DescribeAttack operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DescribeAttack for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DescribeAttack method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DescribeAttackRequest method.
req, resp := client.DescribeAttackRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeAttack

func (*Shield) DescribeAttackWithContext added in v1.8.0

func (c *Shield) DescribeAttackWithContext(ctx aws.Context, input *DescribeAttackInput, opts ...request.Option) (*DescribeAttackOutput, error)

DescribeAttackWithContext is the same as DescribeAttack with the addition of the ability to pass a context and additional request options.

See DescribeAttack for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Shield) DescribeProtection

func (c *Shield) DescribeProtection(input *DescribeProtectionInput) (*DescribeProtectionOutput, error)

DescribeProtection API operation for AWS Shield.

Lists the details of a Protection object.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Shield's API operation DescribeProtection for usage and error information.

Returned Error Codes:

  • ErrCodeInternalErrorException "InternalErrorException" Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" Exception indicating the specified resource does not exist.

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtection

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/shield"
)

func main() {
	sess := session.Must(session.NewSession())

	svc := shield.New(sess)

	params := &shield.DescribeProtectionInput{
		ProtectionId: aws.String("ProtectionId"), // Required
	}
	resp, err := svc.DescribeProtection(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*Shield) DescribeProtectionRequest

func (c *Shield) DescribeProtectionRequest(input *DescribeProtectionInput) (req *request.Request, output *DescribeProtectionOutput)

DescribeProtectionRequest generates a "aws/request.Request" representing the client's request for the DescribeProtection operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DescribeProtection for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DescribeProtection method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DescribeProtectionRequest method.
req, resp := client.DescribeProtectionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtection

func (*Shield) DescribeProtectionWithContext added in v1.8.0

func (c *Shield) DescribeProtectionWithContext(ctx aws.Context, input *DescribeProtectionInput, opts ...request.Option) (*DescribeProtectionOutput, error)

DescribeProtectionWithContext is the same as DescribeProtection with the addition of the ability to pass a context and additional request options.

See DescribeProtection for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Shield) DescribeSubscription

func (c *Shield) DescribeSubscription(input *DescribeSubscriptionInput) (*DescribeSubscriptionOutput, error)

DescribeSubscription API operation for AWS Shield.

Provides details about the AWS Shield Advanced subscription for an account.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Shield's API operation DescribeSubscription for usage and error information.

Returned Error Codes:

  • ErrCodeInternalErrorException "InternalErrorException" Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" Exception indicating the specified resource does not exist.

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeSubscription

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/shield"
)

func main() {
	sess := session.Must(session.NewSession())

	svc := shield.New(sess)

	var params *shield.DescribeSubscriptionInput
	resp, err := svc.DescribeSubscription(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*Shield) DescribeSubscriptionRequest

func (c *Shield) DescribeSubscriptionRequest(input *DescribeSubscriptionInput) (req *request.Request, output *DescribeSubscriptionOutput)

DescribeSubscriptionRequest generates a "aws/request.Request" representing the client's request for the DescribeSubscription operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DescribeSubscription for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DescribeSubscription method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DescribeSubscriptionRequest method.
req, resp := client.DescribeSubscriptionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeSubscription

func (*Shield) DescribeSubscriptionWithContext added in v1.8.0

func (c *Shield) DescribeSubscriptionWithContext(ctx aws.Context, input *DescribeSubscriptionInput, opts ...request.Option) (*DescribeSubscriptionOutput, error)

DescribeSubscriptionWithContext is the same as DescribeSubscription with the addition of the ability to pass a context and additional request options.

See DescribeSubscription for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Shield) ListAttacks

func (c *Shield) ListAttacks(input *ListAttacksInput) (*ListAttacksOutput, error)

ListAttacks API operation for AWS Shield.

Returns all ongoing DDoS attacks or all DDoS attacks during a specified time period.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Shield's API operation ListAttacks for usage and error information.

Returned Error Codes:

  • ErrCodeInternalErrorException "InternalErrorException" Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.

  • ErrCodeInvalidParameterException "InvalidParameterException" Exception that indicates that the parameters passed to the API are invalid.

  • ErrCodeInvalidOperationException "InvalidOperationException" Exception that indicates that the operation would not cause any change to occur.

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListAttacks

Example
package main

import (
	"fmt"
	"time"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/shield"
)

func main() {
	sess := session.Must(session.NewSession())

	svc := shield.New(sess)

	params := &shield.ListAttacksInput{
		EndTime: &shield.TimeRange{
			FromInclusive: aws.Time(time.Now()),
			ToExclusive:   aws.Time(time.Now()),
		},
		MaxResults: aws.Int64(1),
		NextToken:  aws.String("Token"),
		ResourceArns: []*string{
			aws.String("ResourceArn"), // Required
			// More values...
		},
		StartTime: &shield.TimeRange{
			FromInclusive: aws.Time(time.Now()),
			ToExclusive:   aws.Time(time.Now()),
		},
	}
	resp, err := svc.ListAttacks(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*Shield) ListAttacksRequest

func (c *Shield) ListAttacksRequest(input *ListAttacksInput) (req *request.Request, output *ListAttacksOutput)

ListAttacksRequest generates a "aws/request.Request" representing the client's request for the ListAttacks operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See ListAttacks for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListAttacks method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the ListAttacksRequest method.
req, resp := client.ListAttacksRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListAttacks

func (*Shield) ListAttacksWithContext added in v1.8.0

func (c *Shield) ListAttacksWithContext(ctx aws.Context, input *ListAttacksInput, opts ...request.Option) (*ListAttacksOutput, error)

ListAttacksWithContext is the same as ListAttacks with the addition of the ability to pass a context and additional request options.

See ListAttacks for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Shield) ListProtections

func (c *Shield) ListProtections(input *ListProtectionsInput) (*ListProtectionsOutput, error)

ListProtections API operation for AWS Shield.

Lists all Protection objects for the account.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Shield's API operation ListProtections for usage and error information.

Returned Error Codes:

  • ErrCodeInternalErrorException "InternalErrorException" Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" Exception indicating the specified resource does not exist.

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtections

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/shield"
)

func main() {
	sess := session.Must(session.NewSession())

	svc := shield.New(sess)

	params := &shield.ListProtectionsInput{
		MaxResults: aws.Int64(1),
		NextToken:  aws.String("Token"),
	}
	resp, err := svc.ListProtections(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*Shield) ListProtectionsRequest

func (c *Shield) ListProtectionsRequest(input *ListProtectionsInput) (req *request.Request, output *ListProtectionsOutput)

ListProtectionsRequest generates a "aws/request.Request" representing the client's request for the ListProtections operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See ListProtections for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListProtections method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the ListProtectionsRequest method.
req, resp := client.ListProtectionsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtections

func (*Shield) ListProtectionsWithContext added in v1.8.0

func (c *Shield) ListProtectionsWithContext(ctx aws.Context, input *ListProtectionsInput, opts ...request.Option) (*ListProtectionsOutput, error)

ListProtectionsWithContext is the same as ListProtections with the addition of the ability to pass a context and additional request options.

See ListProtections for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

type SubResourceSummary

type SubResourceSummary struct {

	// The list of attack types and associated counters.
	AttackVectors []*SummarizedAttackVector `type:"list"`

	// The counters that describe the details of the attack.
	Counters []*SummarizedCounter `type:"list"`

	// The unique identifier (ID) of the SubResource.
	Id *string `type:"string"`

	// The SubResource type.
	Type *string `type:"string" enum:"SubResourceType"`
	// contains filtered or unexported fields
}

The attack information for the specified SubResource. Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/SubResourceSummary

func (SubResourceSummary) GoString

func (s SubResourceSummary) GoString() string

GoString returns the string representation

func (*SubResourceSummary) SetAttackVectors

SetAttackVectors sets the AttackVectors field's value.

func (*SubResourceSummary) SetCounters

SetCounters sets the Counters field's value.

func (*SubResourceSummary) SetId

SetId sets the Id field's value.

func (*SubResourceSummary) SetType

SetType sets the Type field's value.

func (SubResourceSummary) String

func (s SubResourceSummary) String() string

String returns the string representation

type Subscription

type Subscription struct {

	// The start time of the subscription, in the format "2016-12-16T13:50Z".
	StartTime *time.Time `type:"timestamp" timestampFormat:"unix"`

	// The length, in seconds, of the AWS Shield Advanced subscription for the account.
	TimeCommitmentInSeconds *int64 `type:"long"`
	// contains filtered or unexported fields
}

Information about the AWS Shield Advanced subscription for an account. Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/Subscription

func (Subscription) GoString

func (s Subscription) GoString() string

GoString returns the string representation

func (*Subscription) SetStartTime

func (s *Subscription) SetStartTime(v time.Time) *Subscription

SetStartTime sets the StartTime field's value.

func (*Subscription) SetTimeCommitmentInSeconds

func (s *Subscription) SetTimeCommitmentInSeconds(v int64) *Subscription

SetTimeCommitmentInSeconds sets the TimeCommitmentInSeconds field's value.

func (Subscription) String

func (s Subscription) String() string

String returns the string representation

type SummarizedAttackVector

type SummarizedAttackVector struct {

	// The list of counters that describe the details of the attack.
	VectorCounters []*SummarizedCounter `type:"list"`

	// The attack type, for example, SNMP reflection or SYN flood.
	//
	// VectorType is a required field
	VectorType *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

A summary of information about the attack. Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/SummarizedAttackVector

func (SummarizedAttackVector) GoString

func (s SummarizedAttackVector) GoString() string

GoString returns the string representation

func (*SummarizedAttackVector) SetVectorCounters

SetVectorCounters sets the VectorCounters field's value.

func (*SummarizedAttackVector) SetVectorType

SetVectorType sets the VectorType field's value.

func (SummarizedAttackVector) String

func (s SummarizedAttackVector) String() string

String returns the string representation

type SummarizedCounter

type SummarizedCounter struct {

	// The average value of the counter for a specified time period.
	Average *float64 `type:"double"`

	// The maximum value of the counter for a specified time period.
	Max *float64 `type:"double"`

	// The number of counters for a specified time period.
	N *int64 `type:"integer"`

	// The counter name.
	Name *string `type:"string"`

	// The total of counter values for a specified time period.
	Sum *float64 `type:"double"`

	// The unit of the counters.
	Unit *string `type:"string"`
	// contains filtered or unexported fields
}

The counter that describes a DDoS attack. Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/SummarizedCounter

func (SummarizedCounter) GoString

func (s SummarizedCounter) GoString() string

GoString returns the string representation

func (*SummarizedCounter) SetAverage

func (s *SummarizedCounter) SetAverage(v float64) *SummarizedCounter

SetAverage sets the Average field's value.

func (*SummarizedCounter) SetMax

SetMax sets the Max field's value.

func (*SummarizedCounter) SetN

SetN sets the N field's value.

func (*SummarizedCounter) SetName

SetName sets the Name field's value.

func (*SummarizedCounter) SetSum

SetSum sets the Sum field's value.

func (*SummarizedCounter) SetUnit

SetUnit sets the Unit field's value.

func (SummarizedCounter) String

func (s SummarizedCounter) String() string

String returns the string representation

type TimeRange

type TimeRange struct {

	// The start time, in the format 2016-12-16T13:50Z.
	FromInclusive *time.Time `type:"timestamp" timestampFormat:"unix"`

	// The end time, in the format 2016-12-16T15:50Z.
	ToExclusive *time.Time `type:"timestamp" timestampFormat:"unix"`
	// contains filtered or unexported fields
}

The time range. Please also see https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/TimeRange

func (TimeRange) GoString

func (s TimeRange) GoString() string

GoString returns the string representation

func (*TimeRange) SetFromInclusive

func (s *TimeRange) SetFromInclusive(v time.Time) *TimeRange

SetFromInclusive sets the FromInclusive field's value.

func (*TimeRange) SetToExclusive

func (s *TimeRange) SetToExclusive(v time.Time) *TimeRange

SetToExclusive sets the ToExclusive field's value.

func (TimeRange) String

func (s TimeRange) String() string

String returns the string representation

Directories

Path Synopsis
Package shieldiface provides an interface to enable mocking the AWS Shield service client for testing your code.
Package shieldiface provides an interface to enable mocking the AWS Shield service client for testing your code.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL