shield

package
v4.38.1 Latest Latest
Warning

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

Go to latest
Published: Mar 10, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Protection

type Protection struct {
	pulumi.CustomResourceState

	// The ARN of the Protection.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A friendly name for the Protection you are creating.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ARN (Amazon Resource Name) of the resource to be protected.
	ResourceArn pulumi.StringOutput `pulumi:"resourceArn"`
	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

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

## Example Usage ### Create protection

```go package main

import (

"fmt"

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aws.GetAvailabilityZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		currentRegion, err := aws.GetRegion(ctx, nil, nil)
		if err != nil {
			return err
		}
		currentCallerIdentity, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		exampleEip, err := ec2.NewEip(ctx, "exampleEip", &ec2.EipArgs{
			Vpc: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = shield.NewProtection(ctx, "exampleProtection", &shield.ProtectionArgs{
			ResourceArn: exampleEip.ID().ApplyT(func(id string) (string, error) {
				return fmt.Sprintf("%v%v%v%v%v%v", "arn:aws:ec2:", currentRegion.Name, ":", currentCallerIdentity.AccountId, ":eip-allocation/", id), nil
			}).(pulumi.StringOutput),
			Tags: pulumi.StringMap{
				"Environment": pulumi.String("Dev"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Shield protection resources can be imported by specifying their ID e.g.,

```sh

$ pulumi import aws:shield/protection:Protection example ff9592dc-22f3-4e88-afa1-7b29fde9669a

```

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 ProtectionArgs

type ProtectionArgs struct {
	// A friendly name for the Protection you are creating.
	Name pulumi.StringPtrInput
	// The ARN (Amazon Resource Name) of the resource to be protected.
	ResourceArn pulumi.StringInput
	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Protection resource.

func (ProtectionArgs) ElementType

func (ProtectionArgs) ElementType() reflect.Type

type ProtectionArray

type ProtectionArray []ProtectionInput

func (ProtectionArray) ElementType

func (ProtectionArray) ElementType() reflect.Type

func (ProtectionArray) ToProtectionArrayOutput

func (i ProtectionArray) ToProtectionArrayOutput() ProtectionArrayOutput

func (ProtectionArray) ToProtectionArrayOutputWithContext

func (i ProtectionArray) ToProtectionArrayOutputWithContext(ctx context.Context) ProtectionArrayOutput

type ProtectionArrayInput

type ProtectionArrayInput interface {
	pulumi.Input

	ToProtectionArrayOutput() ProtectionArrayOutput
	ToProtectionArrayOutputWithContext(context.Context) ProtectionArrayOutput
}

ProtectionArrayInput is an input type that accepts ProtectionArray and ProtectionArrayOutput values. You can construct a concrete instance of `ProtectionArrayInput` via:

ProtectionArray{ ProtectionArgs{...} }

type ProtectionArrayOutput

type ProtectionArrayOutput struct{ *pulumi.OutputState }

func (ProtectionArrayOutput) ElementType

func (ProtectionArrayOutput) ElementType() reflect.Type

func (ProtectionArrayOutput) Index

func (ProtectionArrayOutput) ToProtectionArrayOutput

func (o ProtectionArrayOutput) ToProtectionArrayOutput() ProtectionArrayOutput

func (ProtectionArrayOutput) ToProtectionArrayOutputWithContext

func (o ProtectionArrayOutput) ToProtectionArrayOutputWithContext(ctx context.Context) ProtectionArrayOutput

type ProtectionGroup added in v4.16.0

type ProtectionGroup struct {
	pulumi.CustomResourceState

	// Defines how AWS Shield combines resource data for the group in order to detect, mitigate, and report events.
	Aggregation pulumi.StringOutput `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.
	Pattern pulumi.StringOutput `pulumi:"pattern"`
	// The ARN (Amazon Resource Name) of the protection group.
	ProtectionGroupArn pulumi.StringOutput `pulumi:"protectionGroupArn"`
	// The name of the protection group.
	ProtectionGroupId pulumi.StringOutput `pulumi:"protectionGroupId"`
	// The resource type to include in the protection 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 pulumi.StringPtrOutput `pulumi:"resourceType"`
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Creates a grouping of protected resources so they can be handled as a collective. This resource grouping improves the accuracy of detection and reduces false positives. For more information see [Managing AWS Shield Advanced protection groups](https://docs.aws.amazon.com/waf/latest/developerguide/manage-protection-group.html)

## Example Usage ### Create protection group for all resources

```go package main

import (

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

)

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

``` ### Create protection group for arbitrary number of resources

```go package main

import (

"fmt"

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		currentRegion, err := aws.GetRegion(ctx, nil, nil)
		if err != nil {
			return err
		}
		currentCallerIdentity, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		exampleEip, err := ec2.NewEip(ctx, "exampleEip", &ec2.EipArgs{
			Vpc: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		exampleProtection, err := shield.NewProtection(ctx, "exampleProtection", &shield.ProtectionArgs{
			ResourceArn: exampleEip.ID().ApplyT(func(id string) (string, error) {
				return fmt.Sprintf("%v%v%v%v%v%v", "arn:aws:ec2:", currentRegion.Name, ":", currentCallerIdentity.AccountId, ":eip-allocation/", id), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		_, err = shield.NewProtectionGroup(ctx, "exampleProtectionGroup", &shield.ProtectionGroupArgs{
			ProtectionGroupId: pulumi.String("example"),
			Aggregation:       pulumi.String("MEAN"),
			Pattern:           pulumi.String("ARBITRARY"),
			Members: pulumi.StringArray{
				exampleEip.ID().ApplyT(func(id string) (string, error) {
					return fmt.Sprintf("%v%v%v%v%v%v", "arn:aws:ec2:", currentRegion.Name, ":", currentCallerIdentity.AccountId, ":eip-allocation/", id), nil
				}).(pulumi.StringOutput),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleProtection,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Create protection group for a type of resource

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := shield.NewProtectionGroup(ctx, "example", &shield.ProtectionGroupArgs{
			Aggregation:       pulumi.String("SUM"),
			Pattern:           pulumi.String("BY_RESOURCE_TYPE"),
			ProtectionGroupId: pulumi.String("example"),
			ResourceType:      pulumi.String("ELASTIC_IP_ALLOCATION"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Shield protection group resources can be imported by specifying their protection group id.

```sh

$ pulumi import aws:shield/protectionGroup:ProtectionGroup example example

```

func GetProtectionGroup added in v4.16.0

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 added in v4.16.0

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 added in v4.16.0

func (*ProtectionGroup) ElementType() reflect.Type

func (*ProtectionGroup) ToProtectionGroupOutput added in v4.16.0

func (i *ProtectionGroup) ToProtectionGroupOutput() ProtectionGroupOutput

func (*ProtectionGroup) ToProtectionGroupOutputWithContext added in v4.16.0

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

type ProtectionGroupArgs added in v4.16.0

type ProtectionGroupArgs struct {
	// Defines how AWS Shield combines resource data for the group in order to detect, mitigate, and report events.
	Aggregation pulumi.StringInput
	// 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.
	Pattern pulumi.StringInput
	// The name of the protection group.
	ProtectionGroupId pulumi.StringInput
	// The resource type to include in the protection 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 pulumi.StringPtrInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ProtectionGroup resource.

func (ProtectionGroupArgs) ElementType added in v4.16.0

func (ProtectionGroupArgs) ElementType() reflect.Type

type ProtectionGroupArray added in v4.16.0

type ProtectionGroupArray []ProtectionGroupInput

func (ProtectionGroupArray) ElementType added in v4.16.0

func (ProtectionGroupArray) ElementType() reflect.Type

func (ProtectionGroupArray) ToProtectionGroupArrayOutput added in v4.16.0

func (i ProtectionGroupArray) ToProtectionGroupArrayOutput() ProtectionGroupArrayOutput

func (ProtectionGroupArray) ToProtectionGroupArrayOutputWithContext added in v4.16.0

func (i ProtectionGroupArray) ToProtectionGroupArrayOutputWithContext(ctx context.Context) ProtectionGroupArrayOutput

type ProtectionGroupArrayInput added in v4.16.0

type ProtectionGroupArrayInput interface {
	pulumi.Input

	ToProtectionGroupArrayOutput() ProtectionGroupArrayOutput
	ToProtectionGroupArrayOutputWithContext(context.Context) ProtectionGroupArrayOutput
}

ProtectionGroupArrayInput is an input type that accepts ProtectionGroupArray and ProtectionGroupArrayOutput values. You can construct a concrete instance of `ProtectionGroupArrayInput` via:

ProtectionGroupArray{ ProtectionGroupArgs{...} }

type ProtectionGroupArrayOutput added in v4.16.0

type ProtectionGroupArrayOutput struct{ *pulumi.OutputState }

func (ProtectionGroupArrayOutput) ElementType added in v4.16.0

func (ProtectionGroupArrayOutput) ElementType() reflect.Type

func (ProtectionGroupArrayOutput) Index added in v4.16.0

func (ProtectionGroupArrayOutput) ToProtectionGroupArrayOutput added in v4.16.0

func (o ProtectionGroupArrayOutput) ToProtectionGroupArrayOutput() ProtectionGroupArrayOutput

func (ProtectionGroupArrayOutput) ToProtectionGroupArrayOutputWithContext added in v4.16.0

func (o ProtectionGroupArrayOutput) ToProtectionGroupArrayOutputWithContext(ctx context.Context) ProtectionGroupArrayOutput

type ProtectionGroupInput added in v4.16.0

type ProtectionGroupInput interface {
	pulumi.Input

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

type ProtectionGroupMap added in v4.16.0

type ProtectionGroupMap map[string]ProtectionGroupInput

func (ProtectionGroupMap) ElementType added in v4.16.0

func (ProtectionGroupMap) ElementType() reflect.Type

func (ProtectionGroupMap) ToProtectionGroupMapOutput added in v4.16.0

func (i ProtectionGroupMap) ToProtectionGroupMapOutput() ProtectionGroupMapOutput

func (ProtectionGroupMap) ToProtectionGroupMapOutputWithContext added in v4.16.0

func (i ProtectionGroupMap) ToProtectionGroupMapOutputWithContext(ctx context.Context) ProtectionGroupMapOutput

type ProtectionGroupMapInput added in v4.16.0

type ProtectionGroupMapInput interface {
	pulumi.Input

	ToProtectionGroupMapOutput() ProtectionGroupMapOutput
	ToProtectionGroupMapOutputWithContext(context.Context) ProtectionGroupMapOutput
}

ProtectionGroupMapInput is an input type that accepts ProtectionGroupMap and ProtectionGroupMapOutput values. You can construct a concrete instance of `ProtectionGroupMapInput` via:

ProtectionGroupMap{ "key": ProtectionGroupArgs{...} }

type ProtectionGroupMapOutput added in v4.16.0

type ProtectionGroupMapOutput struct{ *pulumi.OutputState }

func (ProtectionGroupMapOutput) ElementType added in v4.16.0

func (ProtectionGroupMapOutput) ElementType() reflect.Type

func (ProtectionGroupMapOutput) MapIndex added in v4.16.0

func (ProtectionGroupMapOutput) ToProtectionGroupMapOutput added in v4.16.0

func (o ProtectionGroupMapOutput) ToProtectionGroupMapOutput() ProtectionGroupMapOutput

func (ProtectionGroupMapOutput) ToProtectionGroupMapOutputWithContext added in v4.16.0

func (o ProtectionGroupMapOutput) ToProtectionGroupMapOutputWithContext(ctx context.Context) ProtectionGroupMapOutput

type ProtectionGroupOutput added in v4.16.0

type ProtectionGroupOutput struct{ *pulumi.OutputState }

func (ProtectionGroupOutput) ElementType added in v4.16.0

func (ProtectionGroupOutput) ElementType() reflect.Type

func (ProtectionGroupOutput) ToProtectionGroupOutput added in v4.16.0

func (o ProtectionGroupOutput) ToProtectionGroupOutput() ProtectionGroupOutput

func (ProtectionGroupOutput) ToProtectionGroupOutputWithContext added in v4.16.0

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

type ProtectionGroupState added in v4.16.0

type ProtectionGroupState struct {
	// Defines how AWS Shield combines resource data for the group in order to detect, mitigate, and report events.
	Aggregation pulumi.StringPtrInput
	// 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.
	Pattern pulumi.StringPtrInput
	// The ARN (Amazon Resource Name) of the protection group.
	ProtectionGroupArn pulumi.StringPtrInput
	// The name of the protection group.
	ProtectionGroupId pulumi.StringPtrInput
	// The resource type to include in the protection 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 pulumi.StringPtrInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (ProtectionGroupState) ElementType added in v4.16.0

func (ProtectionGroupState) ElementType() reflect.Type

type ProtectionHealthCheckAssociation added in v4.35.0

type ProtectionHealthCheckAssociation struct {
	pulumi.CustomResourceState

	// The ARN (Amazon Resource Name) of the Route53 Health Check resource which will be associated to the protected resource.
	HealthCheckArn pulumi.StringOutput `pulumi:"healthCheckArn"`
	// The ID of the protected resource.
	ShieldProtectionId pulumi.StringOutput `pulumi:"shieldProtectionId"`
}

Creates an association between a Route53 Health Check and a Shield Advanced protected resource. This association uses the health of your applications to improve responsiveness and accuracy in attack detection and mitigation.

Blog post: [AWS Shield Advanced now supports Health Based Detection](https://aws.amazon.com/about-aws/whats-new/2020/02/aws-shield-advanced-now-supports-health-based-detection/)

## Example Usage ### Create an association between a protected EIP and a Route53 Health Check

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/route53"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/shield"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		currentRegion, err := aws.GetRegion(ctx, nil, nil)
		if err != nil {
			return err
		}
		currentCallerIdentity, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		currentPartition, err := aws.GetPartition(ctx, nil, nil)
		if err != nil {
			return err
		}
		exampleEip, err := ec2.NewEip(ctx, "exampleEip", &ec2.EipArgs{
			Vpc: pulumi.Bool(true),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
			},
		})
		if err != nil {
			return err
		}
		exampleProtection, err := shield.NewProtection(ctx, "exampleProtection", &shield.ProtectionArgs{
			ResourceArn: exampleEip.ID().ApplyT(func(id string) (string, error) {
				return fmt.Sprintf("%v%v%v%v%v%v%v%v", "arn:", currentPartition.Partition, ":ec2:", currentRegion.Name, ":", currentCallerIdentity.AccountId, ":eip-allocation/", id), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		exampleHealthCheck, err := route53.NewHealthCheck(ctx, "exampleHealthCheck", &route53.HealthCheckArgs{
			IpAddress:        exampleEip.PublicIp,
			Port:             pulumi.Int(80),
			Type:             pulumi.String("HTTP"),
			ResourcePath:     pulumi.String("/ready"),
			FailureThreshold: pulumi.Int(3),
			RequestInterval:  pulumi.Int(30),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("tf-example-health-check"),
			},
		})
		if err != nil {
			return err
		}
		_, err = shield.NewProtectionHealthCheckAssociation(ctx, "exampleProtectionHealthCheckAssociation", &shield.ProtectionHealthCheckAssociationArgs{
			HealthCheckArn:     exampleHealthCheck.Arn,
			ShieldProtectionId: exampleProtection.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Shield protection health check association resources can be imported by specifying the `shield_protection_id` and `health_check_arn` e.g.,

```sh

$ pulumi import aws:shield/protectionHealthCheckAssociation:ProtectionHealthCheckAssociation example ff9592dc-22f3-4e88-afa1-7b29fde9669a+arn:aws:route53:::healthcheck/3742b175-edb9-46bc-9359-f53e3b794b1b

```

func GetProtectionHealthCheckAssociation added in v4.35.0

func GetProtectionHealthCheckAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProtectionHealthCheckAssociationState, opts ...pulumi.ResourceOption) (*ProtectionHealthCheckAssociation, error)

GetProtectionHealthCheckAssociation gets an existing ProtectionHealthCheckAssociation 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 NewProtectionHealthCheckAssociation added in v4.35.0

func NewProtectionHealthCheckAssociation(ctx *pulumi.Context,
	name string, args *ProtectionHealthCheckAssociationArgs, opts ...pulumi.ResourceOption) (*ProtectionHealthCheckAssociation, error)

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

func (*ProtectionHealthCheckAssociation) ElementType added in v4.35.0

func (*ProtectionHealthCheckAssociation) ToProtectionHealthCheckAssociationOutput added in v4.35.0

func (i *ProtectionHealthCheckAssociation) ToProtectionHealthCheckAssociationOutput() ProtectionHealthCheckAssociationOutput

func (*ProtectionHealthCheckAssociation) ToProtectionHealthCheckAssociationOutputWithContext added in v4.35.0

func (i *ProtectionHealthCheckAssociation) ToProtectionHealthCheckAssociationOutputWithContext(ctx context.Context) ProtectionHealthCheckAssociationOutput

type ProtectionHealthCheckAssociationArgs added in v4.35.0

type ProtectionHealthCheckAssociationArgs struct {
	// The ARN (Amazon Resource Name) of the Route53 Health Check resource which will be associated to the protected resource.
	HealthCheckArn pulumi.StringInput
	// The ID of the protected resource.
	ShieldProtectionId pulumi.StringInput
}

The set of arguments for constructing a ProtectionHealthCheckAssociation resource.

func (ProtectionHealthCheckAssociationArgs) ElementType added in v4.35.0

type ProtectionHealthCheckAssociationArray added in v4.35.0

type ProtectionHealthCheckAssociationArray []ProtectionHealthCheckAssociationInput

func (ProtectionHealthCheckAssociationArray) ElementType added in v4.35.0

func (ProtectionHealthCheckAssociationArray) ToProtectionHealthCheckAssociationArrayOutput added in v4.35.0

func (i ProtectionHealthCheckAssociationArray) ToProtectionHealthCheckAssociationArrayOutput() ProtectionHealthCheckAssociationArrayOutput

func (ProtectionHealthCheckAssociationArray) ToProtectionHealthCheckAssociationArrayOutputWithContext added in v4.35.0

func (i ProtectionHealthCheckAssociationArray) ToProtectionHealthCheckAssociationArrayOutputWithContext(ctx context.Context) ProtectionHealthCheckAssociationArrayOutput

type ProtectionHealthCheckAssociationArrayInput added in v4.35.0

type ProtectionHealthCheckAssociationArrayInput interface {
	pulumi.Input

	ToProtectionHealthCheckAssociationArrayOutput() ProtectionHealthCheckAssociationArrayOutput
	ToProtectionHealthCheckAssociationArrayOutputWithContext(context.Context) ProtectionHealthCheckAssociationArrayOutput
}

ProtectionHealthCheckAssociationArrayInput is an input type that accepts ProtectionHealthCheckAssociationArray and ProtectionHealthCheckAssociationArrayOutput values. You can construct a concrete instance of `ProtectionHealthCheckAssociationArrayInput` via:

ProtectionHealthCheckAssociationArray{ ProtectionHealthCheckAssociationArgs{...} }

type ProtectionHealthCheckAssociationArrayOutput added in v4.35.0

type ProtectionHealthCheckAssociationArrayOutput struct{ *pulumi.OutputState }

func (ProtectionHealthCheckAssociationArrayOutput) ElementType added in v4.35.0

func (ProtectionHealthCheckAssociationArrayOutput) Index added in v4.35.0

func (ProtectionHealthCheckAssociationArrayOutput) ToProtectionHealthCheckAssociationArrayOutput added in v4.35.0

func (o ProtectionHealthCheckAssociationArrayOutput) ToProtectionHealthCheckAssociationArrayOutput() ProtectionHealthCheckAssociationArrayOutput

func (ProtectionHealthCheckAssociationArrayOutput) ToProtectionHealthCheckAssociationArrayOutputWithContext added in v4.35.0

func (o ProtectionHealthCheckAssociationArrayOutput) ToProtectionHealthCheckAssociationArrayOutputWithContext(ctx context.Context) ProtectionHealthCheckAssociationArrayOutput

type ProtectionHealthCheckAssociationInput added in v4.35.0

type ProtectionHealthCheckAssociationInput interface {
	pulumi.Input

	ToProtectionHealthCheckAssociationOutput() ProtectionHealthCheckAssociationOutput
	ToProtectionHealthCheckAssociationOutputWithContext(ctx context.Context) ProtectionHealthCheckAssociationOutput
}

type ProtectionHealthCheckAssociationMap added in v4.35.0

type ProtectionHealthCheckAssociationMap map[string]ProtectionHealthCheckAssociationInput

func (ProtectionHealthCheckAssociationMap) ElementType added in v4.35.0

func (ProtectionHealthCheckAssociationMap) ToProtectionHealthCheckAssociationMapOutput added in v4.35.0

func (i ProtectionHealthCheckAssociationMap) ToProtectionHealthCheckAssociationMapOutput() ProtectionHealthCheckAssociationMapOutput

func (ProtectionHealthCheckAssociationMap) ToProtectionHealthCheckAssociationMapOutputWithContext added in v4.35.0

func (i ProtectionHealthCheckAssociationMap) ToProtectionHealthCheckAssociationMapOutputWithContext(ctx context.Context) ProtectionHealthCheckAssociationMapOutput

type ProtectionHealthCheckAssociationMapInput added in v4.35.0

type ProtectionHealthCheckAssociationMapInput interface {
	pulumi.Input

	ToProtectionHealthCheckAssociationMapOutput() ProtectionHealthCheckAssociationMapOutput
	ToProtectionHealthCheckAssociationMapOutputWithContext(context.Context) ProtectionHealthCheckAssociationMapOutput
}

ProtectionHealthCheckAssociationMapInput is an input type that accepts ProtectionHealthCheckAssociationMap and ProtectionHealthCheckAssociationMapOutput values. You can construct a concrete instance of `ProtectionHealthCheckAssociationMapInput` via:

ProtectionHealthCheckAssociationMap{ "key": ProtectionHealthCheckAssociationArgs{...} }

type ProtectionHealthCheckAssociationMapOutput added in v4.35.0

type ProtectionHealthCheckAssociationMapOutput struct{ *pulumi.OutputState }

func (ProtectionHealthCheckAssociationMapOutput) ElementType added in v4.35.0

func (ProtectionHealthCheckAssociationMapOutput) MapIndex added in v4.35.0

func (ProtectionHealthCheckAssociationMapOutput) ToProtectionHealthCheckAssociationMapOutput added in v4.35.0

func (o ProtectionHealthCheckAssociationMapOutput) ToProtectionHealthCheckAssociationMapOutput() ProtectionHealthCheckAssociationMapOutput

func (ProtectionHealthCheckAssociationMapOutput) ToProtectionHealthCheckAssociationMapOutputWithContext added in v4.35.0

func (o ProtectionHealthCheckAssociationMapOutput) ToProtectionHealthCheckAssociationMapOutputWithContext(ctx context.Context) ProtectionHealthCheckAssociationMapOutput

type ProtectionHealthCheckAssociationOutput added in v4.35.0

type ProtectionHealthCheckAssociationOutput struct{ *pulumi.OutputState }

func (ProtectionHealthCheckAssociationOutput) ElementType added in v4.35.0

func (ProtectionHealthCheckAssociationOutput) ToProtectionHealthCheckAssociationOutput added in v4.35.0

func (o ProtectionHealthCheckAssociationOutput) ToProtectionHealthCheckAssociationOutput() ProtectionHealthCheckAssociationOutput

func (ProtectionHealthCheckAssociationOutput) ToProtectionHealthCheckAssociationOutputWithContext added in v4.35.0

func (o ProtectionHealthCheckAssociationOutput) ToProtectionHealthCheckAssociationOutputWithContext(ctx context.Context) ProtectionHealthCheckAssociationOutput

type ProtectionHealthCheckAssociationState added in v4.35.0

type ProtectionHealthCheckAssociationState struct {
	// The ARN (Amazon Resource Name) of the Route53 Health Check resource which will be associated to the protected resource.
	HealthCheckArn pulumi.StringPtrInput
	// The ID of the protected resource.
	ShieldProtectionId pulumi.StringPtrInput
}

func (ProtectionHealthCheckAssociationState) ElementType added in v4.35.0

type ProtectionInput

type ProtectionInput interface {
	pulumi.Input

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

type ProtectionMap

type ProtectionMap map[string]ProtectionInput

func (ProtectionMap) ElementType

func (ProtectionMap) ElementType() reflect.Type

func (ProtectionMap) ToProtectionMapOutput

func (i ProtectionMap) ToProtectionMapOutput() ProtectionMapOutput

func (ProtectionMap) ToProtectionMapOutputWithContext

func (i ProtectionMap) ToProtectionMapOutputWithContext(ctx context.Context) ProtectionMapOutput

type ProtectionMapInput

type ProtectionMapInput interface {
	pulumi.Input

	ToProtectionMapOutput() ProtectionMapOutput
	ToProtectionMapOutputWithContext(context.Context) ProtectionMapOutput
}

ProtectionMapInput is an input type that accepts ProtectionMap and ProtectionMapOutput values. You can construct a concrete instance of `ProtectionMapInput` via:

ProtectionMap{ "key": ProtectionArgs{...} }

type ProtectionMapOutput

type ProtectionMapOutput struct{ *pulumi.OutputState }

func (ProtectionMapOutput) ElementType

func (ProtectionMapOutput) ElementType() reflect.Type

func (ProtectionMapOutput) MapIndex

func (ProtectionMapOutput) ToProtectionMapOutput

func (o ProtectionMapOutput) ToProtectionMapOutput() ProtectionMapOutput

func (ProtectionMapOutput) ToProtectionMapOutputWithContext

func (o ProtectionMapOutput) ToProtectionMapOutputWithContext(ctx context.Context) ProtectionMapOutput

type ProtectionOutput

type ProtectionOutput struct{ *pulumi.OutputState }

func (ProtectionOutput) ElementType

func (ProtectionOutput) ElementType() reflect.Type

func (ProtectionOutput) ToProtectionOutput

func (o ProtectionOutput) ToProtectionOutput() ProtectionOutput

func (ProtectionOutput) ToProtectionOutputWithContext

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

type ProtectionState

type ProtectionState struct {
	// The ARN of the Protection.
	Arn pulumi.StringPtrInput
	// A friendly name for the Protection you are creating.
	Name pulumi.StringPtrInput
	// The ARN (Amazon Resource Name) of the resource to be protected.
	ResourceArn pulumi.StringPtrInput
	// Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapInput
}

func (ProtectionState) ElementType

func (ProtectionState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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