shield

package
v0.104.0 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ProactiveEngagementStatusEnabled  = ProactiveEngagementStatus("ENABLED")
	ProactiveEngagementStatusDisabled = ProactiveEngagementStatus("DISABLED")
)
View Source
const (
	ProtectionApplicationLayerAutomaticResponseConfigurationStatusEnabled  = ProtectionApplicationLayerAutomaticResponseConfigurationStatus("ENABLED")
	ProtectionApplicationLayerAutomaticResponseConfigurationStatusDisabled = ProtectionApplicationLayerAutomaticResponseConfigurationStatus("DISABLED")
)
View Source
const (
	ProtectionGroupAggregationSum  = ProtectionGroupAggregation("SUM")
	ProtectionGroupAggregationMean = ProtectionGroupAggregation("MEAN")
	ProtectionGroupAggregationMax  = ProtectionGroupAggregation("MAX")
)
View Source
const (
	ProtectionGroupPatternAll            = ProtectionGroupPattern("ALL")
	ProtectionGroupPatternArbitrary      = ProtectionGroupPattern("ARBITRARY")
	ProtectionGroupPatternByResourceType = ProtectionGroupPattern("BY_RESOURCE_TYPE")
)
View Source
const (
	ProtectionGroupResourceTypeCloudfrontDistribution  = ProtectionGroupResourceType("CLOUDFRONT_DISTRIBUTION")
	ProtectionGroupResourceTypeRoute53HostedZone       = ProtectionGroupResourceType("ROUTE_53_HOSTED_ZONE")
	ProtectionGroupResourceTypeElasticIpAllocation     = ProtectionGroupResourceType("ELASTIC_IP_ALLOCATION")
	ProtectionGroupResourceTypeClassicLoadBalancer     = ProtectionGroupResourceType("CLASSIC_LOAD_BALANCER")
	ProtectionGroupResourceTypeApplicationLoadBalancer = ProtectionGroupResourceType("APPLICATION_LOAD_BALANCER")
	ProtectionGroupResourceTypeGlobalAccelerator       = ProtectionGroupResourceType("GLOBAL_ACCELERATOR")
)

Variables

This section is empty.

Functions

This section is empty.

Types

type DrtAccess added in v0.72.0

type DrtAccess struct {
	pulumi.CustomResourceState

	AccountId pulumi.StringOutput `pulumi:"accountId"`
	// 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.
	LogBucketList pulumi.StringArrayOutput `pulumi:"logBucketList"`
	// Authorizes the Shield Response Team (SRT) using the specified role, to access your AWS account to assist with DDoS attack mitigation during potential attacks. This enables the SRT to inspect your AWS WAF configuration and create or update AWS WAF rules and web ACLs.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
}

Config the role and list of Amazon S3 log buckets used by the Shield Response Team (SRT) to access your AWS account while assisting with attack mitigation.

func GetDrtAccess added in v0.72.0

func GetDrtAccess(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DrtAccessState, opts ...pulumi.ResourceOption) (*DrtAccess, error)

GetDrtAccess gets an existing DrtAccess resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDrtAccess added in v0.72.0

func NewDrtAccess(ctx *pulumi.Context,
	name string, args *DrtAccessArgs, opts ...pulumi.ResourceOption) (*DrtAccess, error)

NewDrtAccess registers a new resource with the given unique name, arguments, and options.

func (*DrtAccess) ElementType added in v0.72.0

func (*DrtAccess) ElementType() reflect.Type

func (*DrtAccess) ToDrtAccessOutput added in v0.72.0

func (i *DrtAccess) ToDrtAccessOutput() DrtAccessOutput

func (*DrtAccess) ToDrtAccessOutputWithContext added in v0.72.0

func (i *DrtAccess) ToDrtAccessOutputWithContext(ctx context.Context) DrtAccessOutput

type DrtAccessArgs added in v0.72.0

type DrtAccessArgs struct {
	// 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.
	LogBucketList pulumi.StringArrayInput
	// Authorizes the Shield Response Team (SRT) using the specified role, to access your AWS account to assist with DDoS attack mitigation during potential attacks. This enables the SRT to inspect your AWS WAF configuration and create or update AWS WAF rules and web ACLs.
	RoleArn pulumi.StringInput
}

The set of arguments for constructing a DrtAccess resource.

func (DrtAccessArgs) ElementType added in v0.72.0

func (DrtAccessArgs) ElementType() reflect.Type

type DrtAccessInput added in v0.72.0

type DrtAccessInput interface {
	pulumi.Input

	ToDrtAccessOutput() DrtAccessOutput
	ToDrtAccessOutputWithContext(ctx context.Context) DrtAccessOutput
}

type DrtAccessOutput added in v0.72.0

type DrtAccessOutput struct{ *pulumi.OutputState }

func (DrtAccessOutput) AccountId added in v0.72.0

func (o DrtAccessOutput) AccountId() pulumi.StringOutput

func (DrtAccessOutput) ElementType added in v0.72.0

func (DrtAccessOutput) ElementType() reflect.Type

func (DrtAccessOutput) LogBucketList added in v0.72.0

func (o DrtAccessOutput) LogBucketList() pulumi.StringArrayOutput

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.

func (DrtAccessOutput) RoleArn added in v0.72.0

func (o DrtAccessOutput) RoleArn() pulumi.StringOutput

Authorizes the Shield Response Team (SRT) using the specified role, to access your AWS account to assist with DDoS attack mitigation during potential attacks. This enables the SRT to inspect your AWS WAF configuration and create or update AWS WAF rules and web ACLs.

func (DrtAccessOutput) ToDrtAccessOutput added in v0.72.0

func (o DrtAccessOutput) ToDrtAccessOutput() DrtAccessOutput

func (DrtAccessOutput) ToDrtAccessOutputWithContext added in v0.72.0

func (o DrtAccessOutput) ToDrtAccessOutputWithContext(ctx context.Context) DrtAccessOutput

type DrtAccessState added in v0.72.0

type DrtAccessState struct {
}

func (DrtAccessState) ElementType added in v0.72.0

func (DrtAccessState) ElementType() reflect.Type

type LookupDrtAccessArgs added in v0.72.0

type LookupDrtAccessArgs struct {
	AccountId string `pulumi:"accountId"`
}

type LookupDrtAccessOutputArgs added in v0.72.0

type LookupDrtAccessOutputArgs struct {
	AccountId pulumi.StringInput `pulumi:"accountId"`
}

func (LookupDrtAccessOutputArgs) ElementType added in v0.72.0

func (LookupDrtAccessOutputArgs) ElementType() reflect.Type

type LookupDrtAccessResult added in v0.72.0

type LookupDrtAccessResult struct {
	AccountId *string `pulumi:"accountId"`
	// 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.
	LogBucketList []string `pulumi:"logBucketList"`
	// Authorizes the Shield Response Team (SRT) using the specified role, to access your AWS account to assist with DDoS attack mitigation during potential attacks. This enables the SRT to inspect your AWS WAF configuration and create or update AWS WAF rules and web ACLs.
	RoleArn *string `pulumi:"roleArn"`
}

func LookupDrtAccess added in v0.72.0

func LookupDrtAccess(ctx *pulumi.Context, args *LookupDrtAccessArgs, opts ...pulumi.InvokeOption) (*LookupDrtAccessResult, error)

Config the role and list of Amazon S3 log buckets used by the Shield Response Team (SRT) to access your AWS account while assisting with attack mitigation.

type LookupDrtAccessResultOutput added in v0.72.0

type LookupDrtAccessResultOutput struct{ *pulumi.OutputState }

func LookupDrtAccessOutput added in v0.72.0

func (LookupDrtAccessResultOutput) AccountId added in v0.72.0

func (LookupDrtAccessResultOutput) ElementType added in v0.72.0

func (LookupDrtAccessResultOutput) LogBucketList added in v0.72.0

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.

func (LookupDrtAccessResultOutput) RoleArn added in v0.72.0

Authorizes the Shield Response Team (SRT) using the specified role, to access your AWS account to assist with DDoS attack mitigation during potential attacks. This enables the SRT to inspect your AWS WAF configuration and create or update AWS WAF rules and web ACLs.

func (LookupDrtAccessResultOutput) ToLookupDrtAccessResultOutput added in v0.72.0

func (o LookupDrtAccessResultOutput) ToLookupDrtAccessResultOutput() LookupDrtAccessResultOutput

func (LookupDrtAccessResultOutput) ToLookupDrtAccessResultOutputWithContext added in v0.72.0

func (o LookupDrtAccessResultOutput) ToLookupDrtAccessResultOutputWithContext(ctx context.Context) LookupDrtAccessResultOutput

type LookupProactiveEngagementArgs

type LookupProactiveEngagementArgs struct {
	AccountId string `pulumi:"accountId"`
}

type LookupProactiveEngagementOutputArgs

type LookupProactiveEngagementOutputArgs struct {
	AccountId pulumi.StringInput `pulumi:"accountId"`
}

func (LookupProactiveEngagementOutputArgs) ElementType

type LookupProactiveEngagementResult

type LookupProactiveEngagementResult struct {
	AccountId *string `pulumi:"accountId"`
	// A list of email addresses and phone numbers that the Shield Response Team (SRT) can use to contact you for escalations to the SRT and to initiate proactive customer support.
	// To enable proactive engagement, the contact list must include at least one phone number.
	EmergencyContactList []ProactiveEngagementEmergencyContact `pulumi:"emergencyContactList"`
	// If `ENABLED`, the Shield Response Team (SRT) will use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support.
	// If `DISABLED`, the SRT will not proactively notify contacts about escalations or to initiate proactive customer support.
	ProactiveEngagementStatus *ProactiveEngagementStatus `pulumi:"proactiveEngagementStatus"`
}

func LookupProactiveEngagement

func LookupProactiveEngagement(ctx *pulumi.Context, args *LookupProactiveEngagementArgs, opts ...pulumi.InvokeOption) (*LookupProactiveEngagementResult, error)

Authorizes the Shield Response Team (SRT) to use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support.

type LookupProactiveEngagementResultOutput

type LookupProactiveEngagementResultOutput struct{ *pulumi.OutputState }

func (LookupProactiveEngagementResultOutput) AccountId

func (LookupProactiveEngagementResultOutput) ElementType

func (LookupProactiveEngagementResultOutput) EmergencyContactList

A list of email addresses and phone numbers that the Shield Response Team (SRT) can use to contact you for escalations to the SRT and to initiate proactive customer support. To enable proactive engagement, the contact list must include at least one phone number.

func (LookupProactiveEngagementResultOutput) ProactiveEngagementStatus

If `ENABLED`, the Shield Response Team (SRT) will use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support. If `DISABLED`, the SRT will not proactively notify contacts about escalations or to initiate proactive customer support.

func (LookupProactiveEngagementResultOutput) ToLookupProactiveEngagementResultOutput

func (o LookupProactiveEngagementResultOutput) ToLookupProactiveEngagementResultOutput() LookupProactiveEngagementResultOutput

func (LookupProactiveEngagementResultOutput) ToLookupProactiveEngagementResultOutputWithContext

func (o LookupProactiveEngagementResultOutput) ToLookupProactiveEngagementResultOutputWithContext(ctx context.Context) LookupProactiveEngagementResultOutput

type LookupProtectionArgs

type LookupProtectionArgs struct {
	// The ARN (Amazon Resource Name) of the protection.
	ProtectionArn string `pulumi:"protectionArn"`
}

type LookupProtectionGroupArgs

type LookupProtectionGroupArgs struct {
	// The ARN (Amazon Resource Name) of the protection group.
	ProtectionGroupArn string `pulumi:"protectionGroupArn"`
}

type LookupProtectionGroupOutputArgs

type LookupProtectionGroupOutputArgs struct {
	// The ARN (Amazon Resource Name) of the protection group.
	ProtectionGroupArn pulumi.StringInput `pulumi:"protectionGroupArn"`
}

func (LookupProtectionGroupOutputArgs) ElementType

type LookupProtectionGroupResult

type LookupProtectionGroupResult struct {
	// Defines how AWS Shield combines resource data for the group in order to detect, mitigate, and report events.
	// * Sum - Use the total traffic across the group. This is a good choice for most cases. Examples include Elastic IP addresses for EC2 instances that scale manually or automatically.
	// * Mean - Use the average of the traffic across the group. This is a good choice for resources that share traffic uniformly. Examples include accelerators and load balancers.
	// * Max - Use the highest traffic from each resource. This is useful for resources that don't share traffic and for resources that share that traffic in a non-uniform way. Examples include Amazon CloudFront and origin resources for CloudFront distributions.
	Aggregation *ProtectionGroupAggregation `pulumi:"aggregation"`
	// The Amazon Resource Names (ARNs) of the resources to include in the protection group. You must set this when you set `Pattern` to `ARBITRARY` and you must not set it for any other `Pattern` setting.
	Members []string `pulumi:"members"`
	// The criteria to use to choose the protected resources for inclusion in the group. You can include all resources that have protections, provide a list of resource Amazon Resource Names (ARNs), or include all resources of a specified resource type.
	Pattern *ProtectionGroupPattern `pulumi:"pattern"`
	// The ARN (Amazon Resource Name) of the protection group.
	ProtectionGroupArn *string `pulumi:"protectionGroupArn"`
	// The resource type to include in the protection group. All protected resources of this type are included in the protection group. Newly protected resources of this type are automatically added to the group. You must set this when you set `Pattern` to `BY_RESOURCE_TYPE` and you must not set it for any other `Pattern` setting.
	ResourceType *ProtectionGroupResourceType `pulumi:"resourceType"`
	// One or more tag key-value pairs for the Protection object.
	Tags []aws.Tag `pulumi:"tags"`
}

func LookupProtectionGroup

func LookupProtectionGroup(ctx *pulumi.Context, args *LookupProtectionGroupArgs, opts ...pulumi.InvokeOption) (*LookupProtectionGroupResult, error)

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.

type LookupProtectionGroupResultOutput

type LookupProtectionGroupResultOutput struct{ *pulumi.OutputState }

func (LookupProtectionGroupResultOutput) Aggregation

Defines how AWS Shield combines resource data for the group in order to detect, mitigate, and report events. * Sum - Use the total traffic across the group. This is a good choice for most cases. Examples include Elastic IP addresses for EC2 instances that scale manually or automatically. * Mean - Use the average of the traffic across the group. This is a good choice for resources that share traffic uniformly. Examples include accelerators and load balancers. * Max - Use the highest traffic from each resource. This is useful for resources that don't share traffic and for resources that share that traffic in a non-uniform way. Examples include Amazon CloudFront and origin resources for CloudFront distributions.

func (LookupProtectionGroupResultOutput) ElementType

func (LookupProtectionGroupResultOutput) Members

The Amazon Resource Names (ARNs) of the resources to include in the protection group. You must set this when you set `Pattern` to `ARBITRARY` and you must not set it for any other `Pattern` setting.

func (LookupProtectionGroupResultOutput) Pattern

The criteria to use to choose the protected resources for inclusion in the group. You can include all resources that have protections, provide a list of resource Amazon Resource Names (ARNs), or include all resources of a specified resource type.

func (LookupProtectionGroupResultOutput) ProtectionGroupArn

The ARN (Amazon Resource Name) of the protection group.

func (LookupProtectionGroupResultOutput) ResourceType

The resource type to include in the protection group. All protected resources of this type are included in the protection group. Newly protected resources of this type are automatically added to the group. You must set this when you set `Pattern` to `BY_RESOURCE_TYPE` and you must not set it for any other `Pattern` setting.

func (LookupProtectionGroupResultOutput) Tags

One or more tag key-value pairs for the Protection object.

func (LookupProtectionGroupResultOutput) ToLookupProtectionGroupResultOutput

func (o LookupProtectionGroupResultOutput) ToLookupProtectionGroupResultOutput() LookupProtectionGroupResultOutput

func (LookupProtectionGroupResultOutput) ToLookupProtectionGroupResultOutputWithContext

func (o LookupProtectionGroupResultOutput) ToLookupProtectionGroupResultOutputWithContext(ctx context.Context) LookupProtectionGroupResultOutput

type LookupProtectionOutputArgs

type LookupProtectionOutputArgs struct {
	// The ARN (Amazon Resource Name) of the protection.
	ProtectionArn pulumi.StringInput `pulumi:"protectionArn"`
}

func (LookupProtectionOutputArgs) ElementType

func (LookupProtectionOutputArgs) ElementType() reflect.Type

type LookupProtectionResult

type LookupProtectionResult struct {
	ApplicationLayerAutomaticResponseConfiguration *ProtectionApplicationLayerAutomaticResponseConfiguration `pulumi:"applicationLayerAutomaticResponseConfiguration"`
	// The Amazon Resource Names (ARNs) of the health check to associate with the protection.
	HealthCheckArns []string `pulumi:"healthCheckArns"`
	// The ARN (Amazon Resource Name) of the protection.
	ProtectionArn *string `pulumi:"protectionArn"`
	// The unique identifier (ID) of the protection.
	ProtectionId *string `pulumi:"protectionId"`
	// One or more tag key-value pairs for the Protection object.
	Tags []aws.Tag `pulumi:"tags"`
}

func LookupProtection

func LookupProtection(ctx *pulumi.Context, args *LookupProtectionArgs, opts ...pulumi.InvokeOption) (*LookupProtectionResult, error)

Enables AWS Shield Advanced for a specific AWS resource. The resource can be an Amazon CloudFront distribution, Amazon Route 53 hosted zone, AWS 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.

type LookupProtectionResultOutput

type LookupProtectionResultOutput struct{ *pulumi.OutputState }

func (LookupProtectionResultOutput) ApplicationLayerAutomaticResponseConfiguration

func (LookupProtectionResultOutput) ElementType

func (LookupProtectionResultOutput) HealthCheckArns

The Amazon Resource Names (ARNs) of the health check to associate with the protection.

func (LookupProtectionResultOutput) ProtectionArn

The ARN (Amazon Resource Name) of the protection.

func (LookupProtectionResultOutput) ProtectionId

The unique identifier (ID) of the protection.

func (LookupProtectionResultOutput) Tags

One or more tag key-value pairs for the Protection object.

func (LookupProtectionResultOutput) ToLookupProtectionResultOutput

func (o LookupProtectionResultOutput) ToLookupProtectionResultOutput() LookupProtectionResultOutput

func (LookupProtectionResultOutput) ToLookupProtectionResultOutputWithContext

func (o LookupProtectionResultOutput) ToLookupProtectionResultOutputWithContext(ctx context.Context) LookupProtectionResultOutput

type ProactiveEngagement

type ProactiveEngagement struct {
	pulumi.CustomResourceState

	AccountId pulumi.StringOutput `pulumi:"accountId"`
	// A list of email addresses and phone numbers that the Shield Response Team (SRT) can use to contact you for escalations to the SRT and to initiate proactive customer support.
	// To enable proactive engagement, the contact list must include at least one phone number.
	EmergencyContactList ProactiveEngagementEmergencyContactArrayOutput `pulumi:"emergencyContactList"`
	// If `ENABLED`, the Shield Response Team (SRT) will use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support.
	// If `DISABLED`, the SRT will not proactively notify contacts about escalations or to initiate proactive customer support.
	ProactiveEngagementStatus ProactiveEngagementStatusOutput `pulumi:"proactiveEngagementStatus"`
}

Authorizes the Shield Response Team (SRT) to use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support.

func GetProactiveEngagement

func GetProactiveEngagement(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProactiveEngagementState, opts ...pulumi.ResourceOption) (*ProactiveEngagement, error)

GetProactiveEngagement gets an existing ProactiveEngagement resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProactiveEngagement

func NewProactiveEngagement(ctx *pulumi.Context,
	name string, args *ProactiveEngagementArgs, opts ...pulumi.ResourceOption) (*ProactiveEngagement, error)

NewProactiveEngagement registers a new resource with the given unique name, arguments, and options.

func (*ProactiveEngagement) ElementType

func (*ProactiveEngagement) ElementType() reflect.Type

func (*ProactiveEngagement) ToProactiveEngagementOutput

func (i *ProactiveEngagement) ToProactiveEngagementOutput() ProactiveEngagementOutput

func (*ProactiveEngagement) ToProactiveEngagementOutputWithContext

func (i *ProactiveEngagement) ToProactiveEngagementOutputWithContext(ctx context.Context) ProactiveEngagementOutput

type ProactiveEngagementArgs

type ProactiveEngagementArgs struct {
	// A list of email addresses and phone numbers that the Shield Response Team (SRT) can use to contact you for escalations to the SRT and to initiate proactive customer support.
	// To enable proactive engagement, the contact list must include at least one phone number.
	EmergencyContactList ProactiveEngagementEmergencyContactArrayInput
	// If `ENABLED`, the Shield Response Team (SRT) will use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support.
	// If `DISABLED`, the SRT will not proactively notify contacts about escalations or to initiate proactive customer support.
	ProactiveEngagementStatus ProactiveEngagementStatusInput
}

The set of arguments for constructing a ProactiveEngagement resource.

func (ProactiveEngagementArgs) ElementType

func (ProactiveEngagementArgs) ElementType() reflect.Type

type ProactiveEngagementEmergencyContact

type ProactiveEngagementEmergencyContact struct {
	// Additional notes regarding the contact.
	ContactNotes *string `pulumi:"contactNotes"`
	// The email address for the contact.
	EmailAddress string `pulumi:"emailAddress"`
	// The phone number for the contact
	PhoneNumber *string `pulumi:"phoneNumber"`
}

An emergency contact is used by Shield Response Team (SRT) to contact you for escalations to the SRT and to initiate proactive customer support. An emergency contact requires an email address.

type ProactiveEngagementEmergencyContactArgs

type ProactiveEngagementEmergencyContactArgs struct {
	// Additional notes regarding the contact.
	ContactNotes pulumi.StringPtrInput `pulumi:"contactNotes"`
	// The email address for the contact.
	EmailAddress pulumi.StringInput `pulumi:"emailAddress"`
	// The phone number for the contact
	PhoneNumber pulumi.StringPtrInput `pulumi:"phoneNumber"`
}

An emergency contact is used by Shield Response Team (SRT) to contact you for escalations to the SRT and to initiate proactive customer support. An emergency contact requires an email address.

func (ProactiveEngagementEmergencyContactArgs) ElementType

func (ProactiveEngagementEmergencyContactArgs) ToProactiveEngagementEmergencyContactOutput

func (i ProactiveEngagementEmergencyContactArgs) ToProactiveEngagementEmergencyContactOutput() ProactiveEngagementEmergencyContactOutput

func (ProactiveEngagementEmergencyContactArgs) ToProactiveEngagementEmergencyContactOutputWithContext

func (i ProactiveEngagementEmergencyContactArgs) ToProactiveEngagementEmergencyContactOutputWithContext(ctx context.Context) ProactiveEngagementEmergencyContactOutput

type ProactiveEngagementEmergencyContactArray

type ProactiveEngagementEmergencyContactArray []ProactiveEngagementEmergencyContactInput

func (ProactiveEngagementEmergencyContactArray) ElementType

func (ProactiveEngagementEmergencyContactArray) ToProactiveEngagementEmergencyContactArrayOutput

func (i ProactiveEngagementEmergencyContactArray) ToProactiveEngagementEmergencyContactArrayOutput() ProactiveEngagementEmergencyContactArrayOutput

func (ProactiveEngagementEmergencyContactArray) ToProactiveEngagementEmergencyContactArrayOutputWithContext

func (i ProactiveEngagementEmergencyContactArray) ToProactiveEngagementEmergencyContactArrayOutputWithContext(ctx context.Context) ProactiveEngagementEmergencyContactArrayOutput

type ProactiveEngagementEmergencyContactArrayInput

type ProactiveEngagementEmergencyContactArrayInput interface {
	pulumi.Input

	ToProactiveEngagementEmergencyContactArrayOutput() ProactiveEngagementEmergencyContactArrayOutput
	ToProactiveEngagementEmergencyContactArrayOutputWithContext(context.Context) ProactiveEngagementEmergencyContactArrayOutput
}

ProactiveEngagementEmergencyContactArrayInput is an input type that accepts ProactiveEngagementEmergencyContactArray and ProactiveEngagementEmergencyContactArrayOutput values. You can construct a concrete instance of `ProactiveEngagementEmergencyContactArrayInput` via:

ProactiveEngagementEmergencyContactArray{ ProactiveEngagementEmergencyContactArgs{...} }

type ProactiveEngagementEmergencyContactArrayOutput

type ProactiveEngagementEmergencyContactArrayOutput struct{ *pulumi.OutputState }

func (ProactiveEngagementEmergencyContactArrayOutput) ElementType

func (ProactiveEngagementEmergencyContactArrayOutput) Index

func (ProactiveEngagementEmergencyContactArrayOutput) ToProactiveEngagementEmergencyContactArrayOutput

func (o ProactiveEngagementEmergencyContactArrayOutput) ToProactiveEngagementEmergencyContactArrayOutput() ProactiveEngagementEmergencyContactArrayOutput

func (ProactiveEngagementEmergencyContactArrayOutput) ToProactiveEngagementEmergencyContactArrayOutputWithContext

func (o ProactiveEngagementEmergencyContactArrayOutput) ToProactiveEngagementEmergencyContactArrayOutputWithContext(ctx context.Context) ProactiveEngagementEmergencyContactArrayOutput

type ProactiveEngagementEmergencyContactInput

type ProactiveEngagementEmergencyContactInput interface {
	pulumi.Input

	ToProactiveEngagementEmergencyContactOutput() ProactiveEngagementEmergencyContactOutput
	ToProactiveEngagementEmergencyContactOutputWithContext(context.Context) ProactiveEngagementEmergencyContactOutput
}

ProactiveEngagementEmergencyContactInput is an input type that accepts ProactiveEngagementEmergencyContactArgs and ProactiveEngagementEmergencyContactOutput values. You can construct a concrete instance of `ProactiveEngagementEmergencyContactInput` via:

ProactiveEngagementEmergencyContactArgs{...}

type ProactiveEngagementEmergencyContactOutput

type ProactiveEngagementEmergencyContactOutput struct{ *pulumi.OutputState }

An emergency contact is used by Shield Response Team (SRT) to contact you for escalations to the SRT and to initiate proactive customer support. An emergency contact requires an email address.

func (ProactiveEngagementEmergencyContactOutput) ContactNotes

Additional notes regarding the contact.

func (ProactiveEngagementEmergencyContactOutput) ElementType

func (ProactiveEngagementEmergencyContactOutput) EmailAddress

The email address for the contact.

func (ProactiveEngagementEmergencyContactOutput) PhoneNumber

The phone number for the contact

func (ProactiveEngagementEmergencyContactOutput) ToProactiveEngagementEmergencyContactOutput

func (o ProactiveEngagementEmergencyContactOutput) ToProactiveEngagementEmergencyContactOutput() ProactiveEngagementEmergencyContactOutput

func (ProactiveEngagementEmergencyContactOutput) ToProactiveEngagementEmergencyContactOutputWithContext

func (o ProactiveEngagementEmergencyContactOutput) ToProactiveEngagementEmergencyContactOutputWithContext(ctx context.Context) ProactiveEngagementEmergencyContactOutput

type ProactiveEngagementInput

type ProactiveEngagementInput interface {
	pulumi.Input

	ToProactiveEngagementOutput() ProactiveEngagementOutput
	ToProactiveEngagementOutputWithContext(ctx context.Context) ProactiveEngagementOutput
}

type ProactiveEngagementOutput

type ProactiveEngagementOutput struct{ *pulumi.OutputState }

func (ProactiveEngagementOutput) AccountId

func (ProactiveEngagementOutput) ElementType

func (ProactiveEngagementOutput) ElementType() reflect.Type

func (ProactiveEngagementOutput) EmergencyContactList

A list of email addresses and phone numbers that the Shield Response Team (SRT) can use to contact you for escalations to the SRT and to initiate proactive customer support. To enable proactive engagement, the contact list must include at least one phone number.

func (ProactiveEngagementOutput) ProactiveEngagementStatus

func (o ProactiveEngagementOutput) ProactiveEngagementStatus() ProactiveEngagementStatusOutput

If `ENABLED`, the Shield Response Team (SRT) will use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support. If `DISABLED`, the SRT will not proactively notify contacts about escalations or to initiate proactive customer support.

func (ProactiveEngagementOutput) ToProactiveEngagementOutput

func (o ProactiveEngagementOutput) ToProactiveEngagementOutput() ProactiveEngagementOutput

func (ProactiveEngagementOutput) ToProactiveEngagementOutputWithContext

func (o ProactiveEngagementOutput) ToProactiveEngagementOutputWithContext(ctx context.Context) ProactiveEngagementOutput

type ProactiveEngagementState

type ProactiveEngagementState struct {
}

func (ProactiveEngagementState) ElementType

func (ProactiveEngagementState) ElementType() reflect.Type

type ProactiveEngagementStatus

type ProactiveEngagementStatus string

If `ENABLED`, the Shield Response Team (SRT) will use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support. If `DISABLED`, the SRT will not proactively notify contacts about escalations or to initiate proactive customer support.

func (ProactiveEngagementStatus) ElementType

func (ProactiveEngagementStatus) ElementType() reflect.Type

func (ProactiveEngagementStatus) ToProactiveEngagementStatusOutput

func (e ProactiveEngagementStatus) ToProactiveEngagementStatusOutput() ProactiveEngagementStatusOutput

func (ProactiveEngagementStatus) ToProactiveEngagementStatusOutputWithContext

func (e ProactiveEngagementStatus) ToProactiveEngagementStatusOutputWithContext(ctx context.Context) ProactiveEngagementStatusOutput

func (ProactiveEngagementStatus) ToProactiveEngagementStatusPtrOutput

func (e ProactiveEngagementStatus) ToProactiveEngagementStatusPtrOutput() ProactiveEngagementStatusPtrOutput

func (ProactiveEngagementStatus) ToProactiveEngagementStatusPtrOutputWithContext

func (e ProactiveEngagementStatus) ToProactiveEngagementStatusPtrOutputWithContext(ctx context.Context) ProactiveEngagementStatusPtrOutput

func (ProactiveEngagementStatus) ToStringOutput

func (e ProactiveEngagementStatus) ToStringOutput() pulumi.StringOutput

func (ProactiveEngagementStatus) ToStringOutputWithContext

func (e ProactiveEngagementStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (ProactiveEngagementStatus) ToStringPtrOutput

func (e ProactiveEngagementStatus) ToStringPtrOutput() pulumi.StringPtrOutput

func (ProactiveEngagementStatus) ToStringPtrOutputWithContext

func (e ProactiveEngagementStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProactiveEngagementStatusInput

type ProactiveEngagementStatusInput interface {
	pulumi.Input

	ToProactiveEngagementStatusOutput() ProactiveEngagementStatusOutput
	ToProactiveEngagementStatusOutputWithContext(context.Context) ProactiveEngagementStatusOutput
}

ProactiveEngagementStatusInput is an input type that accepts values of the ProactiveEngagementStatus enum A concrete instance of `ProactiveEngagementStatusInput` can be one of the following:

ProactiveEngagementStatusEnabled
ProactiveEngagementStatusDisabled

type ProactiveEngagementStatusOutput

type ProactiveEngagementStatusOutput struct{ *pulumi.OutputState }

func (ProactiveEngagementStatusOutput) ElementType

func (ProactiveEngagementStatusOutput) ToProactiveEngagementStatusOutput

func (o ProactiveEngagementStatusOutput) ToProactiveEngagementStatusOutput() ProactiveEngagementStatusOutput

func (ProactiveEngagementStatusOutput) ToProactiveEngagementStatusOutputWithContext

func (o ProactiveEngagementStatusOutput) ToProactiveEngagementStatusOutputWithContext(ctx context.Context) ProactiveEngagementStatusOutput

func (ProactiveEngagementStatusOutput) ToProactiveEngagementStatusPtrOutput

func (o ProactiveEngagementStatusOutput) ToProactiveEngagementStatusPtrOutput() ProactiveEngagementStatusPtrOutput

func (ProactiveEngagementStatusOutput) ToProactiveEngagementStatusPtrOutputWithContext

func (o ProactiveEngagementStatusOutput) ToProactiveEngagementStatusPtrOutputWithContext(ctx context.Context) ProactiveEngagementStatusPtrOutput

func (ProactiveEngagementStatusOutput) ToStringOutput

func (ProactiveEngagementStatusOutput) ToStringOutputWithContext

func (o ProactiveEngagementStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (ProactiveEngagementStatusOutput) ToStringPtrOutput

func (ProactiveEngagementStatusOutput) ToStringPtrOutputWithContext

func (o ProactiveEngagementStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProactiveEngagementStatusPtrInput

type ProactiveEngagementStatusPtrInput interface {
	pulumi.Input

	ToProactiveEngagementStatusPtrOutput() ProactiveEngagementStatusPtrOutput
	ToProactiveEngagementStatusPtrOutputWithContext(context.Context) ProactiveEngagementStatusPtrOutput
}

func ProactiveEngagementStatusPtr

func ProactiveEngagementStatusPtr(v string) ProactiveEngagementStatusPtrInput

type ProactiveEngagementStatusPtrOutput

type ProactiveEngagementStatusPtrOutput struct{ *pulumi.OutputState }

func (ProactiveEngagementStatusPtrOutput) Elem

func (ProactiveEngagementStatusPtrOutput) ElementType

func (ProactiveEngagementStatusPtrOutput) ToProactiveEngagementStatusPtrOutput

func (o ProactiveEngagementStatusPtrOutput) ToProactiveEngagementStatusPtrOutput() ProactiveEngagementStatusPtrOutput

func (ProactiveEngagementStatusPtrOutput) ToProactiveEngagementStatusPtrOutputWithContext

func (o ProactiveEngagementStatusPtrOutput) ToProactiveEngagementStatusPtrOutputWithContext(ctx context.Context) ProactiveEngagementStatusPtrOutput

func (ProactiveEngagementStatusPtrOutput) ToStringPtrOutput

func (ProactiveEngagementStatusPtrOutput) ToStringPtrOutputWithContext

func (o ProactiveEngagementStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type Protection

type Protection struct {
	pulumi.CustomResourceState

	ApplicationLayerAutomaticResponseConfiguration ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput `pulumi:"applicationLayerAutomaticResponseConfiguration"`
	// The Amazon Resource Names (ARNs) of the health check to associate with the protection.
	HealthCheckArns pulumi.StringArrayOutput `pulumi:"healthCheckArns"`
	// Friendly name for the Protection.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ARN (Amazon Resource Name) of the protection.
	ProtectionArn pulumi.StringOutput `pulumi:"protectionArn"`
	// The unique identifier (ID) of the protection.
	ProtectionId pulumi.StringOutput `pulumi:"protectionId"`
	// The ARN (Amazon Resource Name) of the resource to be protected.
	ResourceArn pulumi.StringOutput `pulumi:"resourceArn"`
	// One or more tag key-value pairs for the Protection object.
	Tags aws.TagArrayOutput `pulumi:"tags"`
}

Enables AWS Shield Advanced for a specific AWS resource. The resource can be an Amazon CloudFront distribution, Amazon Route 53 hosted zone, AWS 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.

func GetProtection

func GetProtection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProtectionState, opts ...pulumi.ResourceOption) (*Protection, error)

GetProtection gets an existing Protection resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProtection

func NewProtection(ctx *pulumi.Context,
	name string, args *ProtectionArgs, opts ...pulumi.ResourceOption) (*Protection, error)

NewProtection registers a new resource with the given unique name, arguments, and options.

func (*Protection) ElementType

func (*Protection) ElementType() reflect.Type

func (*Protection) ToProtectionOutput

func (i *Protection) ToProtectionOutput() ProtectionOutput

func (*Protection) ToProtectionOutputWithContext

func (i *Protection) ToProtectionOutputWithContext(ctx context.Context) ProtectionOutput

type ProtectionApplicationLayerAutomaticResponseConfiguration

type ProtectionApplicationLayerAutomaticResponseConfiguration struct {
	// Specifies the action setting that Shield Advanced should use in the AWS WAF rules that it creates on behalf of the protected resource in response to DDoS attacks. You specify this as part of the configuration for the automatic application layer DDoS mitigation feature, when you enable or update automatic mitigation. Shield Advanced creates the AWS WAF rules in a Shield Advanced-managed rule group, inside the web ACL that you have associated with the resource.
	Action interface{} `pulumi:"action"`
	// Indicates whether automatic application layer DDoS mitigation is enabled for the protection.
	Status ProtectionApplicationLayerAutomaticResponseConfigurationStatus `pulumi:"status"`
}

The automatic application layer DDoS mitigation settings for a Protection. This configuration determines whether Shield Advanced automatically manages rules in the web ACL in order to respond to application layer events that Shield Advanced determines to be DDoS attacks.

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0Properties

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0Properties struct {
	// Specifies that Shield Advanced should configure its AWS WAF rules with the AWS WAF `Count` action.
	// You must specify exactly one action, either `Block` or `Count`.
	Count interface{} `pulumi:"count"`
}

Specifies the action setting that Shield Advanced should use in the AWS WAF rules that it creates on behalf of the protected resource in response to DDoS attacks. You specify this as part of the configuration for the automatic application layer DDoS mitigation feature, when you enable or update automatic mitigation. Shield Advanced creates the AWS WAF rules in a Shield Advanced-managed rule group, inside the web ACL that you have associated with the resource.

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesArgs added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesArgs struct {
	// Specifies that Shield Advanced should configure its AWS WAF rules with the AWS WAF `Count` action.
	// You must specify exactly one action, either `Block` or `Count`.
	Count pulumi.Input `pulumi:"count"`
}

Specifies the action setting that Shield Advanced should use in the AWS WAF rules that it creates on behalf of the protected resource in response to DDoS attacks. You specify this as part of the configuration for the automatic application layer DDoS mitigation feature, when you enable or update automatic mitigation. Shield Advanced creates the AWS WAF rules in a Shield Advanced-managed rule group, inside the web ACL that you have associated with the resource.

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesArgs) ElementType added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutputWithContext added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutputWithContext added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesInput added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesInput interface {
	pulumi.Input

	ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput() ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput
	ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutputWithContext(context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput
}

ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesInput is an input type that accepts ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesArgs and ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput values. You can construct a concrete instance of `ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesInput` via:

ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesArgs{...}

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput struct{ *pulumi.OutputState }

Specifies the action setting that Shield Advanced should use in the AWS WAF rules that it creates on behalf of the protected resource in response to DDoS attacks. You specify this as part of the configuration for the automatic application layer DDoS mitigation feature, when you enable or update automatic mitigation. Shield Advanced creates the AWS WAF rules in a Shield Advanced-managed rule group, inside the web ACL that you have associated with the resource.

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput) Count added in v0.96.0

Specifies that Shield Advanced should configure its AWS WAF rules with the AWS WAF `Count` action. You must specify exactly one action, either `Block` or `Count`.

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput) ElementType added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutputWithContext added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutputWithContext added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrInput added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrInput interface {
	pulumi.Input

	ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput() ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput
	ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutputWithContext(context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput
}

ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrInput is an input type that accepts ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesArgs, ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtr and ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput values. You can construct a concrete instance of `ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrInput` via:

        ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesArgs{...}

or:

        nil

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput struct{ *pulumi.OutputState }

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput) Count added in v0.96.0

Specifies that Shield Advanced should configure its AWS WAF rules with the AWS WAF `Count` action. You must specify exactly one action, either `Block` or `Count`.

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput) Elem added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput) ElementType added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction0PropertiesPtrOutputWithContext added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1Properties

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1Properties struct {
	// Specifies that Shield Advanced should configure its AWS WAF rules with the AWS WAF `Block` action.
	// You must specify exactly one action, either `Block` or `Count`.
	Block interface{} `pulumi:"block"`
}

Specifies the action setting that Shield Advanced should use in the AWS WAF rules that it creates on behalf of the protected resource in response to DDoS attacks. You specify this as part of the configuration for the automatic application layer DDoS mitigation feature, when you enable or update automatic mitigation. Shield Advanced creates the AWS WAF rules in a Shield Advanced-managed rule group, inside the web ACL that you have associated with the resource.

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesArgs added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesArgs struct {
	// Specifies that Shield Advanced should configure its AWS WAF rules with the AWS WAF `Block` action.
	// You must specify exactly one action, either `Block` or `Count`.
	Block pulumi.Input `pulumi:"block"`
}

Specifies the action setting that Shield Advanced should use in the AWS WAF rules that it creates on behalf of the protected resource in response to DDoS attacks. You specify this as part of the configuration for the automatic application layer DDoS mitigation feature, when you enable or update automatic mitigation. Shield Advanced creates the AWS WAF rules in a Shield Advanced-managed rule group, inside the web ACL that you have associated with the resource.

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesArgs) ElementType added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutputWithContext added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutputWithContext added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesInput added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesInput interface {
	pulumi.Input

	ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput() ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput
	ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutputWithContext(context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput
}

ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesInput is an input type that accepts ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesArgs and ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput values. You can construct a concrete instance of `ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesInput` via:

ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesArgs{...}

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput struct{ *pulumi.OutputState }

Specifies the action setting that Shield Advanced should use in the AWS WAF rules that it creates on behalf of the protected resource in response to DDoS attacks. You specify this as part of the configuration for the automatic application layer DDoS mitigation feature, when you enable or update automatic mitigation. Shield Advanced creates the AWS WAF rules in a Shield Advanced-managed rule group, inside the web ACL that you have associated with the resource.

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput) Block added in v0.96.0

Specifies that Shield Advanced should configure its AWS WAF rules with the AWS WAF `Block` action. You must specify exactly one action, either `Block` or `Count`.

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput) ElementType added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutputWithContext added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutputWithContext added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrInput added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrInput interface {
	pulumi.Input

	ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput() ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput
	ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutputWithContext(context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput
}

ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrInput is an input type that accepts ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesArgs, ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtr and ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput values. You can construct a concrete instance of `ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrInput` via:

        ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesArgs{...}

or:

        nil

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput struct{ *pulumi.OutputState }

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput) Block added in v0.96.0

Specifies that Shield Advanced should configure its AWS WAF rules with the AWS WAF `Block` action. You must specify exactly one action, either `Block` or `Count`.

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput) Elem added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput) ElementType added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput added in v0.96.0

func (ProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationAction1PropertiesPtrOutputWithContext added in v0.96.0

type ProtectionApplicationLayerAutomaticResponseConfigurationArgs

type ProtectionApplicationLayerAutomaticResponseConfigurationArgs struct {
	// Specifies the action setting that Shield Advanced should use in the AWS WAF rules that it creates on behalf of the protected resource in response to DDoS attacks. You specify this as part of the configuration for the automatic application layer DDoS mitigation feature, when you enable or update automatic mitigation. Shield Advanced creates the AWS WAF rules in a Shield Advanced-managed rule group, inside the web ACL that you have associated with the resource.
	Action pulumi.Input `pulumi:"action"`
	// Indicates whether automatic application layer DDoS mitigation is enabled for the protection.
	Status ProtectionApplicationLayerAutomaticResponseConfigurationStatusInput `pulumi:"status"`
}

The automatic application layer DDoS mitigation settings for a Protection. This configuration determines whether Shield Advanced automatically manages rules in the web ACL in order to respond to application layer events that Shield Advanced determines to be DDoS attacks.

func (ProtectionApplicationLayerAutomaticResponseConfigurationArgs) ElementType

func (ProtectionApplicationLayerAutomaticResponseConfigurationArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationOutputWithContext

func (i ProtectionApplicationLayerAutomaticResponseConfigurationArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationOutputWithContext(ctx context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationPtrOutputWithContext

func (i ProtectionApplicationLayerAutomaticResponseConfigurationArgs) ToProtectionApplicationLayerAutomaticResponseConfigurationPtrOutputWithContext(ctx context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput

type ProtectionApplicationLayerAutomaticResponseConfigurationInput

type ProtectionApplicationLayerAutomaticResponseConfigurationInput interface {
	pulumi.Input

	ToProtectionApplicationLayerAutomaticResponseConfigurationOutput() ProtectionApplicationLayerAutomaticResponseConfigurationOutput
	ToProtectionApplicationLayerAutomaticResponseConfigurationOutputWithContext(context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationOutput
}

ProtectionApplicationLayerAutomaticResponseConfigurationInput is an input type that accepts ProtectionApplicationLayerAutomaticResponseConfigurationArgs and ProtectionApplicationLayerAutomaticResponseConfigurationOutput values. You can construct a concrete instance of `ProtectionApplicationLayerAutomaticResponseConfigurationInput` via:

ProtectionApplicationLayerAutomaticResponseConfigurationArgs{...}

type ProtectionApplicationLayerAutomaticResponseConfigurationOutput

type ProtectionApplicationLayerAutomaticResponseConfigurationOutput struct{ *pulumi.OutputState }

The automatic application layer DDoS mitigation settings for a Protection. This configuration determines whether Shield Advanced automatically manages rules in the web ACL in order to respond to application layer events that Shield Advanced determines to be DDoS attacks.

func (ProtectionApplicationLayerAutomaticResponseConfigurationOutput) Action

Specifies the action setting that Shield Advanced should use in the AWS WAF rules that it creates on behalf of the protected resource in response to DDoS attacks. You specify this as part of the configuration for the automatic application layer DDoS mitigation feature, when you enable or update automatic mitigation. Shield Advanced creates the AWS WAF rules in a Shield Advanced-managed rule group, inside the web ACL that you have associated with the resource.

func (ProtectionApplicationLayerAutomaticResponseConfigurationOutput) ElementType

func (ProtectionApplicationLayerAutomaticResponseConfigurationOutput) Status

Indicates whether automatic application layer DDoS mitigation is enabled for the protection.

func (ProtectionApplicationLayerAutomaticResponseConfigurationOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationOutputWithContext

func (o ProtectionApplicationLayerAutomaticResponseConfigurationOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationOutputWithContext(ctx context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationPtrOutputWithContext

func (o ProtectionApplicationLayerAutomaticResponseConfigurationOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationPtrOutputWithContext(ctx context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput

type ProtectionApplicationLayerAutomaticResponseConfigurationPtrInput

type ProtectionApplicationLayerAutomaticResponseConfigurationPtrInput interface {
	pulumi.Input

	ToProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput() ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput
	ToProtectionApplicationLayerAutomaticResponseConfigurationPtrOutputWithContext(context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput
}

ProtectionApplicationLayerAutomaticResponseConfigurationPtrInput is an input type that accepts ProtectionApplicationLayerAutomaticResponseConfigurationArgs, ProtectionApplicationLayerAutomaticResponseConfigurationPtr and ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput values. You can construct a concrete instance of `ProtectionApplicationLayerAutomaticResponseConfigurationPtrInput` via:

        ProtectionApplicationLayerAutomaticResponseConfigurationArgs{...}

or:

        nil

type ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput

type ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput struct{ *pulumi.OutputState }

func (ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput) Action

Specifies the action setting that Shield Advanced should use in the AWS WAF rules that it creates on behalf of the protected resource in response to DDoS attacks. You specify this as part of the configuration for the automatic application layer DDoS mitigation feature, when you enable or update automatic mitigation. Shield Advanced creates the AWS WAF rules in a Shield Advanced-managed rule group, inside the web ACL that you have associated with the resource.

func (ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput) Elem

func (ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput) ElementType

func (ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput) Status

Indicates whether automatic application layer DDoS mitigation is enabled for the protection.

func (ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationPtrOutputWithContext

func (o ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationPtrOutputWithContext(ctx context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput

type ProtectionApplicationLayerAutomaticResponseConfigurationStatus

type ProtectionApplicationLayerAutomaticResponseConfigurationStatus string

Indicates whether automatic application layer DDoS mitigation is enabled for the protection.

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatus) ElementType

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatus) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatus) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusOutputWithContext

func (e ProtectionApplicationLayerAutomaticResponseConfigurationStatus) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusOutputWithContext(ctx context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatus) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatus) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutputWithContext

func (e ProtectionApplicationLayerAutomaticResponseConfigurationStatus) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutputWithContext(ctx context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatus) ToStringOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatus) ToStringOutputWithContext

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatus) ToStringPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatus) ToStringPtrOutputWithContext

type ProtectionApplicationLayerAutomaticResponseConfigurationStatusInput

type ProtectionApplicationLayerAutomaticResponseConfigurationStatusInput interface {
	pulumi.Input

	ToProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput() ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput
	ToProtectionApplicationLayerAutomaticResponseConfigurationStatusOutputWithContext(context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput
}

ProtectionApplicationLayerAutomaticResponseConfigurationStatusInput is an input type that accepts values of the ProtectionApplicationLayerAutomaticResponseConfigurationStatus enum A concrete instance of `ProtectionApplicationLayerAutomaticResponseConfigurationStatusInput` can be one of the following:

ProtectionApplicationLayerAutomaticResponseConfigurationStatusEnabled
ProtectionApplicationLayerAutomaticResponseConfigurationStatusDisabled

type ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput

type ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput struct{ *pulumi.OutputState }

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput) ElementType

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusOutputWithContext

func (o ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusOutputWithContext(ctx context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutputWithContext

func (o ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutputWithContext(ctx context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput) ToStringOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput) ToStringOutputWithContext

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput) ToStringPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusOutput) ToStringPtrOutputWithContext

type ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrInput

type ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrInput interface {
	pulumi.Input

	ToProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput() ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput
	ToProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutputWithContext(context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput
}

type ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput

type ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput struct{ *pulumi.OutputState }

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput) Elem

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput) ElementType

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutputWithContext

func (o ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput) ToProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutputWithContext(ctx context.Context) ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput) ToStringPtrOutput

func (ProtectionApplicationLayerAutomaticResponseConfigurationStatusPtrOutput) ToStringPtrOutputWithContext

type ProtectionArgs

type ProtectionArgs struct {
	ApplicationLayerAutomaticResponseConfiguration ProtectionApplicationLayerAutomaticResponseConfigurationPtrInput
	// The Amazon Resource Names (ARNs) of the health check to associate with the protection.
	HealthCheckArns pulumi.StringArrayInput
	// Friendly name for the Protection.
	Name pulumi.StringPtrInput
	// The ARN (Amazon Resource Name) of the resource to be protected.
	ResourceArn pulumi.StringInput
	// One or more tag key-value pairs for the Protection object.
	Tags aws.TagArrayInput
}

The set of arguments for constructing a Protection resource.

func (ProtectionArgs) ElementType

func (ProtectionArgs) ElementType() reflect.Type

type ProtectionGroup

type ProtectionGroup struct {
	pulumi.CustomResourceState

	// Defines how AWS Shield combines resource data for the group in order to detect, mitigate, and report events.
	// * Sum - Use the total traffic across the group. This is a good choice for most cases. Examples include Elastic IP addresses for EC2 instances that scale manually or automatically.
	// * Mean - Use the average of the traffic across the group. This is a good choice for resources that share traffic uniformly. Examples include accelerators and load balancers.
	// * Max - Use the highest traffic from each resource. This is useful for resources that don't share traffic and for resources that share that traffic in a non-uniform way. Examples include Amazon CloudFront and origin resources for CloudFront distributions.
	Aggregation ProtectionGroupAggregationOutput `pulumi:"aggregation"`
	// The Amazon Resource Names (ARNs) of the resources to include in the protection group. You must set this when you set `Pattern` to `ARBITRARY` and you must not set it for any other `Pattern` setting.
	Members pulumi.StringArrayOutput `pulumi:"members"`
	// The criteria to use to choose the protected resources for inclusion in the group. You can include all resources that have protections, provide a list of resource Amazon Resource Names (ARNs), or include all resources of a specified resource type.
	Pattern ProtectionGroupPatternOutput `pulumi:"pattern"`
	// The ARN (Amazon Resource Name) of the protection group.
	ProtectionGroupArn pulumi.StringOutput `pulumi:"protectionGroupArn"`
	// The name of the protection group. You use this to identify the protection group in lists and to manage the protection group, for example to update, delete, or describe it.
	ProtectionGroupId pulumi.StringOutput `pulumi:"protectionGroupId"`
	// The resource type to include in the protection group. All protected resources of this type are included in the protection group. Newly protected resources of this type are automatically added to the group. You must set this when you set `Pattern` to `BY_RESOURCE_TYPE` and you must not set it for any other `Pattern` setting.
	ResourceType ProtectionGroupResourceTypePtrOutput `pulumi:"resourceType"`
	// One or more tag key-value pairs for the Protection object.
	Tags aws.TagArrayOutput `pulumi:"tags"`
}

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.

## Example Usage ### Example

```go package main

import (

"github.com/pulumi/pulumi-aws-native/sdk/go/aws/shield"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := shield.NewProtectionGroup(ctx, "protectionGroup", &shield.ProtectionGroupArgs{
			ProtectionGroupId: pulumi.String("ProtectionGroupForAllResources"),
			Aggregation:       shield.ProtectionGroupAggregationSum,
			Pattern:           shield.ProtectionGroupPatternAll,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Example

```go package main

import (

"github.com/pulumi/pulumi-aws-native/sdk/go/aws/shield"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := shield.NewProtectionGroup(ctx, "protectionGroup", &shield.ProtectionGroupArgs{
			ProtectionGroupId: pulumi.String("ProtectionGroupForAllResources"),
			Aggregation:       shield.ProtectionGroupAggregationSum,
			Pattern:           shield.ProtectionGroupPatternAll,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Example

```go package main

import (

"github.com/pulumi/pulumi-aws-native/sdk/go/aws/shield"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := shield.NewProtectionGroup(ctx, "protectionGroup", &shield.ProtectionGroupArgs{
			ProtectionGroupId: pulumi.String("ProtectionGroupForAllEIPResources"),
			Aggregation:       shield.ProtectionGroupAggregationSum,
			Pattern:           shield.ProtectionGroupPatternByResourceType,
			ResourceType:      shield.ProtectionGroupResourceTypeElasticIpAllocation,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Example

```go package main

import (

"github.com/pulumi/pulumi-aws-native/sdk/go/aws/shield"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := shield.NewProtectionGroup(ctx, "protectionGroup", &shield.ProtectionGroupArgs{
			ProtectionGroupId: pulumi.String("ProtectionGroupForAllEIPResources"),
			Aggregation:       shield.ProtectionGroupAggregationSum,
			Pattern:           shield.ProtectionGroupPatternByResourceType,
			ResourceType:      shield.ProtectionGroupResourceTypeElasticIpAllocation,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetProtectionGroup

func GetProtectionGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProtectionGroupState, opts ...pulumi.ResourceOption) (*ProtectionGroup, error)

GetProtectionGroup gets an existing ProtectionGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProtectionGroup

func NewProtectionGroup(ctx *pulumi.Context,
	name string, args *ProtectionGroupArgs, opts ...pulumi.ResourceOption) (*ProtectionGroup, error)

NewProtectionGroup registers a new resource with the given unique name, arguments, and options.

func (*ProtectionGroup) ElementType

func (*ProtectionGroup) ElementType() reflect.Type

func (*ProtectionGroup) ToProtectionGroupOutput

func (i *ProtectionGroup) ToProtectionGroupOutput() ProtectionGroupOutput

func (*ProtectionGroup) ToProtectionGroupOutputWithContext

func (i *ProtectionGroup) ToProtectionGroupOutputWithContext(ctx context.Context) ProtectionGroupOutput

type ProtectionGroupAggregation

type ProtectionGroupAggregation string

Defines how AWS Shield combines resource data for the group in order to detect, mitigate, and report events. * Sum - Use the total traffic across the group. This is a good choice for most cases. Examples include Elastic IP addresses for EC2 instances that scale manually or automatically. * Mean - Use the average of the traffic across the group. This is a good choice for resources that share traffic uniformly. Examples include accelerators and load balancers. * Max - Use the highest traffic from each resource. This is useful for resources that don't share traffic and for resources that share that traffic in a non-uniform way. Examples include Amazon CloudFront and origin resources for CloudFront distributions.

func (ProtectionGroupAggregation) ElementType

func (ProtectionGroupAggregation) ElementType() reflect.Type

func (ProtectionGroupAggregation) ToProtectionGroupAggregationOutput

func (e ProtectionGroupAggregation) ToProtectionGroupAggregationOutput() ProtectionGroupAggregationOutput

func (ProtectionGroupAggregation) ToProtectionGroupAggregationOutputWithContext

func (e ProtectionGroupAggregation) ToProtectionGroupAggregationOutputWithContext(ctx context.Context) ProtectionGroupAggregationOutput

func (ProtectionGroupAggregation) ToProtectionGroupAggregationPtrOutput

func (e ProtectionGroupAggregation) ToProtectionGroupAggregationPtrOutput() ProtectionGroupAggregationPtrOutput

func (ProtectionGroupAggregation) ToProtectionGroupAggregationPtrOutputWithContext

func (e ProtectionGroupAggregation) ToProtectionGroupAggregationPtrOutputWithContext(ctx context.Context) ProtectionGroupAggregationPtrOutput

func (ProtectionGroupAggregation) ToStringOutput

func (e ProtectionGroupAggregation) ToStringOutput() pulumi.StringOutput

func (ProtectionGroupAggregation) ToStringOutputWithContext

func (e ProtectionGroupAggregation) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (ProtectionGroupAggregation) ToStringPtrOutput

func (e ProtectionGroupAggregation) ToStringPtrOutput() pulumi.StringPtrOutput

func (ProtectionGroupAggregation) ToStringPtrOutputWithContext

func (e ProtectionGroupAggregation) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtectionGroupAggregationInput

type ProtectionGroupAggregationInput interface {
	pulumi.Input

	ToProtectionGroupAggregationOutput() ProtectionGroupAggregationOutput
	ToProtectionGroupAggregationOutputWithContext(context.Context) ProtectionGroupAggregationOutput
}

ProtectionGroupAggregationInput is an input type that accepts values of the ProtectionGroupAggregation enum A concrete instance of `ProtectionGroupAggregationInput` can be one of the following:

ProtectionGroupAggregationSum
ProtectionGroupAggregationMean
ProtectionGroupAggregationMax

type ProtectionGroupAggregationOutput

type ProtectionGroupAggregationOutput struct{ *pulumi.OutputState }

func (ProtectionGroupAggregationOutput) ElementType

func (ProtectionGroupAggregationOutput) ToProtectionGroupAggregationOutput

func (o ProtectionGroupAggregationOutput) ToProtectionGroupAggregationOutput() ProtectionGroupAggregationOutput

func (ProtectionGroupAggregationOutput) ToProtectionGroupAggregationOutputWithContext

func (o ProtectionGroupAggregationOutput) ToProtectionGroupAggregationOutputWithContext(ctx context.Context) ProtectionGroupAggregationOutput

func (ProtectionGroupAggregationOutput) ToProtectionGroupAggregationPtrOutput

func (o ProtectionGroupAggregationOutput) ToProtectionGroupAggregationPtrOutput() ProtectionGroupAggregationPtrOutput

func (ProtectionGroupAggregationOutput) ToProtectionGroupAggregationPtrOutputWithContext

func (o ProtectionGroupAggregationOutput) ToProtectionGroupAggregationPtrOutputWithContext(ctx context.Context) ProtectionGroupAggregationPtrOutput

func (ProtectionGroupAggregationOutput) ToStringOutput

func (ProtectionGroupAggregationOutput) ToStringOutputWithContext

func (o ProtectionGroupAggregationOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (ProtectionGroupAggregationOutput) ToStringPtrOutput

func (ProtectionGroupAggregationOutput) ToStringPtrOutputWithContext

func (o ProtectionGroupAggregationOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtectionGroupAggregationPtrInput

type ProtectionGroupAggregationPtrInput interface {
	pulumi.Input

	ToProtectionGroupAggregationPtrOutput() ProtectionGroupAggregationPtrOutput
	ToProtectionGroupAggregationPtrOutputWithContext(context.Context) ProtectionGroupAggregationPtrOutput
}

func ProtectionGroupAggregationPtr

func ProtectionGroupAggregationPtr(v string) ProtectionGroupAggregationPtrInput

type ProtectionGroupAggregationPtrOutput

type ProtectionGroupAggregationPtrOutput struct{ *pulumi.OutputState }

func (ProtectionGroupAggregationPtrOutput) Elem

func (ProtectionGroupAggregationPtrOutput) ElementType

func (ProtectionGroupAggregationPtrOutput) ToProtectionGroupAggregationPtrOutput

func (o ProtectionGroupAggregationPtrOutput) ToProtectionGroupAggregationPtrOutput() ProtectionGroupAggregationPtrOutput

func (ProtectionGroupAggregationPtrOutput) ToProtectionGroupAggregationPtrOutputWithContext

func (o ProtectionGroupAggregationPtrOutput) ToProtectionGroupAggregationPtrOutputWithContext(ctx context.Context) ProtectionGroupAggregationPtrOutput

func (ProtectionGroupAggregationPtrOutput) ToStringPtrOutput

func (ProtectionGroupAggregationPtrOutput) ToStringPtrOutputWithContext

func (o ProtectionGroupAggregationPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtectionGroupArgs

type ProtectionGroupArgs struct {
	// Defines how AWS Shield combines resource data for the group in order to detect, mitigate, and report events.
	// * Sum - Use the total traffic across the group. This is a good choice for most cases. Examples include Elastic IP addresses for EC2 instances that scale manually or automatically.
	// * Mean - Use the average of the traffic across the group. This is a good choice for resources that share traffic uniformly. Examples include accelerators and load balancers.
	// * Max - Use the highest traffic from each resource. This is useful for resources that don't share traffic and for resources that share that traffic in a non-uniform way. Examples include Amazon CloudFront and origin resources for CloudFront distributions.
	Aggregation ProtectionGroupAggregationInput
	// The Amazon Resource Names (ARNs) of the resources to include in the protection group. You must set this when you set `Pattern` to `ARBITRARY` and you must not set it for any other `Pattern` setting.
	Members pulumi.StringArrayInput
	// The criteria to use to choose the protected resources for inclusion in the group. You can include all resources that have protections, provide a list of resource Amazon Resource Names (ARNs), or include all resources of a specified resource type.
	Pattern ProtectionGroupPatternInput
	// The name of the protection group. You use this to identify the protection group in lists and to manage the protection group, for example to update, delete, or describe it.
	ProtectionGroupId pulumi.StringInput
	// The resource type to include in the protection group. All protected resources of this type are included in the protection group. Newly protected resources of this type are automatically added to the group. You must set this when you set `Pattern` to `BY_RESOURCE_TYPE` and you must not set it for any other `Pattern` setting.
	ResourceType ProtectionGroupResourceTypePtrInput
	// One or more tag key-value pairs for the Protection object.
	Tags aws.TagArrayInput
}

The set of arguments for constructing a ProtectionGroup resource.

func (ProtectionGroupArgs) ElementType

func (ProtectionGroupArgs) ElementType() reflect.Type

type ProtectionGroupInput

type ProtectionGroupInput interface {
	pulumi.Input

	ToProtectionGroupOutput() ProtectionGroupOutput
	ToProtectionGroupOutputWithContext(ctx context.Context) ProtectionGroupOutput
}

type ProtectionGroupOutput

type ProtectionGroupOutput struct{ *pulumi.OutputState }

func (ProtectionGroupOutput) Aggregation

Defines how AWS Shield combines resource data for the group in order to detect, mitigate, and report events. * Sum - Use the total traffic across the group. This is a good choice for most cases. Examples include Elastic IP addresses for EC2 instances that scale manually or automatically. * Mean - Use the average of the traffic across the group. This is a good choice for resources that share traffic uniformly. Examples include accelerators and load balancers. * Max - Use the highest traffic from each resource. This is useful for resources that don't share traffic and for resources that share that traffic in a non-uniform way. Examples include Amazon CloudFront and origin resources for CloudFront distributions.

func (ProtectionGroupOutput) ElementType

func (ProtectionGroupOutput) ElementType() reflect.Type

func (ProtectionGroupOutput) Members

The Amazon Resource Names (ARNs) of the resources to include in the protection group. You must set this when you set `Pattern` to `ARBITRARY` and you must not set it for any other `Pattern` setting.

func (ProtectionGroupOutput) Pattern

The criteria to use to choose the protected resources for inclusion in the group. You can include all resources that have protections, provide a list of resource Amazon Resource Names (ARNs), or include all resources of a specified resource type.

func (ProtectionGroupOutput) ProtectionGroupArn

func (o ProtectionGroupOutput) ProtectionGroupArn() pulumi.StringOutput

The ARN (Amazon Resource Name) of the protection group.

func (ProtectionGroupOutput) ProtectionGroupId

func (o ProtectionGroupOutput) ProtectionGroupId() pulumi.StringOutput

The name of the protection group. You use this to identify the protection group in lists and to manage the protection group, for example to update, delete, or describe it.

func (ProtectionGroupOutput) ResourceType

The resource type to include in the protection group. All protected resources of this type are included in the protection group. Newly protected resources of this type are automatically added to the group. You must set this when you set `Pattern` to `BY_RESOURCE_TYPE` and you must not set it for any other `Pattern` setting.

func (ProtectionGroupOutput) Tags

One or more tag key-value pairs for the Protection object.

func (ProtectionGroupOutput) ToProtectionGroupOutput

func (o ProtectionGroupOutput) ToProtectionGroupOutput() ProtectionGroupOutput

func (ProtectionGroupOutput) ToProtectionGroupOutputWithContext

func (o ProtectionGroupOutput) ToProtectionGroupOutputWithContext(ctx context.Context) ProtectionGroupOutput

type ProtectionGroupPattern

type ProtectionGroupPattern string

The criteria to use to choose the protected resources for inclusion in the group. You can include all resources that have protections, provide a list of resource Amazon Resource Names (ARNs), or include all resources of a specified resource type.

func (ProtectionGroupPattern) ElementType

func (ProtectionGroupPattern) ElementType() reflect.Type

func (ProtectionGroupPattern) ToProtectionGroupPatternOutput

func (e ProtectionGroupPattern) ToProtectionGroupPatternOutput() ProtectionGroupPatternOutput

func (ProtectionGroupPattern) ToProtectionGroupPatternOutputWithContext

func (e ProtectionGroupPattern) ToProtectionGroupPatternOutputWithContext(ctx context.Context) ProtectionGroupPatternOutput

func (ProtectionGroupPattern) ToProtectionGroupPatternPtrOutput

func (e ProtectionGroupPattern) ToProtectionGroupPatternPtrOutput() ProtectionGroupPatternPtrOutput

func (ProtectionGroupPattern) ToProtectionGroupPatternPtrOutputWithContext

func (e ProtectionGroupPattern) ToProtectionGroupPatternPtrOutputWithContext(ctx context.Context) ProtectionGroupPatternPtrOutput

func (ProtectionGroupPattern) ToStringOutput

func (e ProtectionGroupPattern) ToStringOutput() pulumi.StringOutput

func (ProtectionGroupPattern) ToStringOutputWithContext

func (e ProtectionGroupPattern) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (ProtectionGroupPattern) ToStringPtrOutput

func (e ProtectionGroupPattern) ToStringPtrOutput() pulumi.StringPtrOutput

func (ProtectionGroupPattern) ToStringPtrOutputWithContext

func (e ProtectionGroupPattern) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtectionGroupPatternInput

type ProtectionGroupPatternInput interface {
	pulumi.Input

	ToProtectionGroupPatternOutput() ProtectionGroupPatternOutput
	ToProtectionGroupPatternOutputWithContext(context.Context) ProtectionGroupPatternOutput
}

ProtectionGroupPatternInput is an input type that accepts values of the ProtectionGroupPattern enum A concrete instance of `ProtectionGroupPatternInput` can be one of the following:

ProtectionGroupPatternAll
ProtectionGroupPatternArbitrary
ProtectionGroupPatternByResourceType

type ProtectionGroupPatternOutput

type ProtectionGroupPatternOutput struct{ *pulumi.OutputState }

func (ProtectionGroupPatternOutput) ElementType

func (ProtectionGroupPatternOutput) ToProtectionGroupPatternOutput

func (o ProtectionGroupPatternOutput) ToProtectionGroupPatternOutput() ProtectionGroupPatternOutput

func (ProtectionGroupPatternOutput) ToProtectionGroupPatternOutputWithContext

func (o ProtectionGroupPatternOutput) ToProtectionGroupPatternOutputWithContext(ctx context.Context) ProtectionGroupPatternOutput

func (ProtectionGroupPatternOutput) ToProtectionGroupPatternPtrOutput

func (o ProtectionGroupPatternOutput) ToProtectionGroupPatternPtrOutput() ProtectionGroupPatternPtrOutput

func (ProtectionGroupPatternOutput) ToProtectionGroupPatternPtrOutputWithContext

func (o ProtectionGroupPatternOutput) ToProtectionGroupPatternPtrOutputWithContext(ctx context.Context) ProtectionGroupPatternPtrOutput

func (ProtectionGroupPatternOutput) ToStringOutput

func (ProtectionGroupPatternOutput) ToStringOutputWithContext

func (o ProtectionGroupPatternOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (ProtectionGroupPatternOutput) ToStringPtrOutput

func (o ProtectionGroupPatternOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (ProtectionGroupPatternOutput) ToStringPtrOutputWithContext

func (o ProtectionGroupPatternOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtectionGroupPatternPtrInput

type ProtectionGroupPatternPtrInput interface {
	pulumi.Input

	ToProtectionGroupPatternPtrOutput() ProtectionGroupPatternPtrOutput
	ToProtectionGroupPatternPtrOutputWithContext(context.Context) ProtectionGroupPatternPtrOutput
}

func ProtectionGroupPatternPtr

func ProtectionGroupPatternPtr(v string) ProtectionGroupPatternPtrInput

type ProtectionGroupPatternPtrOutput

type ProtectionGroupPatternPtrOutput struct{ *pulumi.OutputState }

func (ProtectionGroupPatternPtrOutput) Elem

func (ProtectionGroupPatternPtrOutput) ElementType

func (ProtectionGroupPatternPtrOutput) ToProtectionGroupPatternPtrOutput

func (o ProtectionGroupPatternPtrOutput) ToProtectionGroupPatternPtrOutput() ProtectionGroupPatternPtrOutput

func (ProtectionGroupPatternPtrOutput) ToProtectionGroupPatternPtrOutputWithContext

func (o ProtectionGroupPatternPtrOutput) ToProtectionGroupPatternPtrOutputWithContext(ctx context.Context) ProtectionGroupPatternPtrOutput

func (ProtectionGroupPatternPtrOutput) ToStringPtrOutput

func (ProtectionGroupPatternPtrOutput) ToStringPtrOutputWithContext

func (o ProtectionGroupPatternPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtectionGroupResourceType

type ProtectionGroupResourceType string

The resource type to include in the protection group. All protected resources of this type are included in the protection group. Newly protected resources of this type are automatically added to the group. You must set this when you set `Pattern` to `BY_RESOURCE_TYPE` and you must not set it for any other `Pattern` setting.

func (ProtectionGroupResourceType) ElementType

func (ProtectionGroupResourceType) ToProtectionGroupResourceTypeOutput

func (e ProtectionGroupResourceType) ToProtectionGroupResourceTypeOutput() ProtectionGroupResourceTypeOutput

func (ProtectionGroupResourceType) ToProtectionGroupResourceTypeOutputWithContext

func (e ProtectionGroupResourceType) ToProtectionGroupResourceTypeOutputWithContext(ctx context.Context) ProtectionGroupResourceTypeOutput

func (ProtectionGroupResourceType) ToProtectionGroupResourceTypePtrOutput

func (e ProtectionGroupResourceType) ToProtectionGroupResourceTypePtrOutput() ProtectionGroupResourceTypePtrOutput

func (ProtectionGroupResourceType) ToProtectionGroupResourceTypePtrOutputWithContext

func (e ProtectionGroupResourceType) ToProtectionGroupResourceTypePtrOutputWithContext(ctx context.Context) ProtectionGroupResourceTypePtrOutput

func (ProtectionGroupResourceType) ToStringOutput

func (e ProtectionGroupResourceType) ToStringOutput() pulumi.StringOutput

func (ProtectionGroupResourceType) ToStringOutputWithContext

func (e ProtectionGroupResourceType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (ProtectionGroupResourceType) ToStringPtrOutput

func (e ProtectionGroupResourceType) ToStringPtrOutput() pulumi.StringPtrOutput

func (ProtectionGroupResourceType) ToStringPtrOutputWithContext

func (e ProtectionGroupResourceType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtectionGroupResourceTypeInput

type ProtectionGroupResourceTypeInput interface {
	pulumi.Input

	ToProtectionGroupResourceTypeOutput() ProtectionGroupResourceTypeOutput
	ToProtectionGroupResourceTypeOutputWithContext(context.Context) ProtectionGroupResourceTypeOutput
}

ProtectionGroupResourceTypeInput is an input type that accepts values of the ProtectionGroupResourceType enum A concrete instance of `ProtectionGroupResourceTypeInput` can be one of the following:

ProtectionGroupResourceTypeCloudfrontDistribution
ProtectionGroupResourceTypeRoute53HostedZone
ProtectionGroupResourceTypeElasticIpAllocation
ProtectionGroupResourceTypeClassicLoadBalancer
ProtectionGroupResourceTypeApplicationLoadBalancer
ProtectionGroupResourceTypeGlobalAccelerator

type ProtectionGroupResourceTypeOutput

type ProtectionGroupResourceTypeOutput struct{ *pulumi.OutputState }

func (ProtectionGroupResourceTypeOutput) ElementType

func (ProtectionGroupResourceTypeOutput) ToProtectionGroupResourceTypeOutput

func (o ProtectionGroupResourceTypeOutput) ToProtectionGroupResourceTypeOutput() ProtectionGroupResourceTypeOutput

func (ProtectionGroupResourceTypeOutput) ToProtectionGroupResourceTypeOutputWithContext

func (o ProtectionGroupResourceTypeOutput) ToProtectionGroupResourceTypeOutputWithContext(ctx context.Context) ProtectionGroupResourceTypeOutput

func (ProtectionGroupResourceTypeOutput) ToProtectionGroupResourceTypePtrOutput

func (o ProtectionGroupResourceTypeOutput) ToProtectionGroupResourceTypePtrOutput() ProtectionGroupResourceTypePtrOutput

func (ProtectionGroupResourceTypeOutput) ToProtectionGroupResourceTypePtrOutputWithContext

func (o ProtectionGroupResourceTypeOutput) ToProtectionGroupResourceTypePtrOutputWithContext(ctx context.Context) ProtectionGroupResourceTypePtrOutput

func (ProtectionGroupResourceTypeOutput) ToStringOutput

func (ProtectionGroupResourceTypeOutput) ToStringOutputWithContext

func (o ProtectionGroupResourceTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (ProtectionGroupResourceTypeOutput) ToStringPtrOutput

func (ProtectionGroupResourceTypeOutput) ToStringPtrOutputWithContext

func (o ProtectionGroupResourceTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtectionGroupResourceTypePtrInput

type ProtectionGroupResourceTypePtrInput interface {
	pulumi.Input

	ToProtectionGroupResourceTypePtrOutput() ProtectionGroupResourceTypePtrOutput
	ToProtectionGroupResourceTypePtrOutputWithContext(context.Context) ProtectionGroupResourceTypePtrOutput
}

func ProtectionGroupResourceTypePtr

func ProtectionGroupResourceTypePtr(v string) ProtectionGroupResourceTypePtrInput

type ProtectionGroupResourceTypePtrOutput

type ProtectionGroupResourceTypePtrOutput struct{ *pulumi.OutputState }

func (ProtectionGroupResourceTypePtrOutput) Elem

func (ProtectionGroupResourceTypePtrOutput) ElementType

func (ProtectionGroupResourceTypePtrOutput) ToProtectionGroupResourceTypePtrOutput

func (o ProtectionGroupResourceTypePtrOutput) ToProtectionGroupResourceTypePtrOutput() ProtectionGroupResourceTypePtrOutput

func (ProtectionGroupResourceTypePtrOutput) ToProtectionGroupResourceTypePtrOutputWithContext

func (o ProtectionGroupResourceTypePtrOutput) ToProtectionGroupResourceTypePtrOutputWithContext(ctx context.Context) ProtectionGroupResourceTypePtrOutput

func (ProtectionGroupResourceTypePtrOutput) ToStringPtrOutput

func (ProtectionGroupResourceTypePtrOutput) ToStringPtrOutputWithContext

func (o ProtectionGroupResourceTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type ProtectionGroupState

type ProtectionGroupState struct {
}

func (ProtectionGroupState) ElementType

func (ProtectionGroupState) ElementType() reflect.Type

type ProtectionGroupTag

type ProtectionGroupTag struct {
	// Part of the key:value pair that defines a tag. You can use a tag key to describe a category of information, such as "customer." Tag keys are case-sensitive.
	Key string `pulumi:"key"`
	// Part of the key:value pair that defines a tag. You can use a tag value to describe a specific value within a category, such as "companyA" or "companyB." Tag values are case-sensitive.
	Value string `pulumi:"value"`
}

A tag associated with an AWS resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing or other management. Typically, the tag key represents a category, such as "environment", and the tag value represents a specific value within that category, such as "test," "development," or "production". Or you might set the tag key to "customer" and the value to the customer name or ID. You can specify one or more tags to add to each AWS resource, up to 50 tags for a resource.

type ProtectionInput

type ProtectionInput interface {
	pulumi.Input

	ToProtectionOutput() ProtectionOutput
	ToProtectionOutputWithContext(ctx context.Context) ProtectionOutput
}

type ProtectionOutput

type ProtectionOutput struct{ *pulumi.OutputState }

func (ProtectionOutput) ApplicationLayerAutomaticResponseConfiguration

func (o ProtectionOutput) ApplicationLayerAutomaticResponseConfiguration() ProtectionApplicationLayerAutomaticResponseConfigurationPtrOutput

func (ProtectionOutput) ElementType

func (ProtectionOutput) ElementType() reflect.Type

func (ProtectionOutput) HealthCheckArns

func (o ProtectionOutput) HealthCheckArns() pulumi.StringArrayOutput

The Amazon Resource Names (ARNs) of the health check to associate with the protection.

func (ProtectionOutput) Name

Friendly name for the Protection.

func (ProtectionOutput) ProtectionArn

func (o ProtectionOutput) ProtectionArn() pulumi.StringOutput

The ARN (Amazon Resource Name) of the protection.

func (ProtectionOutput) ProtectionId

func (o ProtectionOutput) ProtectionId() pulumi.StringOutput

The unique identifier (ID) of the protection.

func (ProtectionOutput) ResourceArn

func (o ProtectionOutput) ResourceArn() pulumi.StringOutput

The ARN (Amazon Resource Name) of the resource to be protected.

func (ProtectionOutput) Tags

One or more tag key-value pairs for the Protection object.

func (ProtectionOutput) ToProtectionOutput

func (o ProtectionOutput) ToProtectionOutput() ProtectionOutput

func (ProtectionOutput) ToProtectionOutputWithContext

func (o ProtectionOutput) ToProtectionOutputWithContext(ctx context.Context) ProtectionOutput

type ProtectionState

type ProtectionState struct {
}

func (ProtectionState) ElementType

func (ProtectionState) ElementType() reflect.Type

type ProtectionTag

type ProtectionTag struct {
	// Part of the key:value pair that defines a tag. You can use a tag key to describe a category of information, such as "customer." Tag keys are case-sensitive.
	Key string `pulumi:"key"`
	// Part of the key:value pair that defines a tag. You can use a tag value to describe a specific value within a category, such as "companyA" or "companyB." Tag values are case-sensitive.
	Value string `pulumi:"value"`
}

A tag associated with an AWS resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing or other management. Typically, the tag key represents a category, such as "environment", and the tag value represents a specific value within that category, such as "test," "development," or "production". Or you might set the tag key to "customer" and the value to the customer name or ID. You can specify one or more tags to add to each AWS resource, up to 50 tags for a resource.

Jump to

Keyboard shortcuts

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