ddos

package
v3.44.0 Latest Latest
Warning

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

Go to latest
Published: Sep 28, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BasicDefenseThreshold added in v3.20.0

type BasicDefenseThreshold struct {
	pulumi.CustomResourceState

	// Specifies the traffic scrubbing threshold. Unit: Mbit/s. The traffic scrubbing threshold cannot exceed the peak inbound or outbound Internet traffic, whichever is larger, of the asset.
	Bps pulumi.IntOutput `pulumi:"bps"`
	// The type of the threshold to query. Valid values: `defense`,`blackhole`.
	DdosType pulumi.StringOutput `pulumi:"ddosType"`
	// The ID of the instance.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The instance type of the public IP address asset. Value: `ecs`,`slb`,`eip`.
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// The Internet IP address.
	InternetIp pulumi.StringOutput `pulumi:"internetIp"`
	// Whether it is the system default threshold. Value:
	IsAuto pulumi.BoolOutput `pulumi:"isAuto"`
	// The maximum traffic scrubbing threshold. Unit: Mbit/s.
	MaxBps pulumi.IntOutput `pulumi:"maxBps"`
	// The maximum packet scrubbing threshold. Unit: pps.
	MaxPps pulumi.IntOutput `pulumi:"maxPps"`
	// The current message number cleaning threshold. Unit: pps.
	Pps pulumi.IntOutput `pulumi:"pps"`
}

Provides a Ddos Basic defense threshold resource.

For information about Ddos Basic Antiddos and how to use it, see [What is Defense Threshold](https://www.alibabacloud.com/help/en/ddos-protection/latest/modifydefensethreshold).

> **NOTE:** Available since v1.168.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		defaultEipAddress, err := ecs.NewEipAddress(ctx, "defaultEipAddress", &ecs.EipAddressArgs{
			AddressName:        pulumi.String(name),
			Isp:                pulumi.String("BGP"),
			InternetChargeType: pulumi.String("PayByBandwidth"),
			PaymentType:        pulumi.String("PayAsYouGo"),
		})
		if err != nil {
			return err
		}
		_, err = ddos.NewBasicDefenseThreshold(ctx, "defaultBasicDefenseThreshold", &ddos.BasicDefenseThresholdArgs{
			InstanceId:   defaultEipAddress.ID(),
			DdosType:     pulumi.String("defense"),
			InstanceType: pulumi.String("eip"),
			Bps:          pulumi.Int(390),
			Pps:          pulumi.Int(90000),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Ddos Basic Antiddos can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ddos/basicDefenseThreshold:BasicDefenseThreshold example <instance_id>:<instance_type>:<ddos_type>

```

func GetBasicDefenseThreshold added in v3.20.0

func GetBasicDefenseThreshold(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BasicDefenseThresholdState, opts ...pulumi.ResourceOption) (*BasicDefenseThreshold, error)

GetBasicDefenseThreshold gets an existing BasicDefenseThreshold 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 NewBasicDefenseThreshold added in v3.20.0

func NewBasicDefenseThreshold(ctx *pulumi.Context,
	name string, args *BasicDefenseThresholdArgs, opts ...pulumi.ResourceOption) (*BasicDefenseThreshold, error)

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

func (*BasicDefenseThreshold) ElementType added in v3.20.0

func (*BasicDefenseThreshold) ElementType() reflect.Type

func (*BasicDefenseThreshold) ToBasicDefenseThresholdOutput added in v3.20.0

func (i *BasicDefenseThreshold) ToBasicDefenseThresholdOutput() BasicDefenseThresholdOutput

func (*BasicDefenseThreshold) ToBasicDefenseThresholdOutputWithContext added in v3.20.0

func (i *BasicDefenseThreshold) ToBasicDefenseThresholdOutputWithContext(ctx context.Context) BasicDefenseThresholdOutput

func (*BasicDefenseThreshold) ToOutput added in v3.43.1

type BasicDefenseThresholdArgs added in v3.20.0

type BasicDefenseThresholdArgs struct {
	// Specifies the traffic scrubbing threshold. Unit: Mbit/s. The traffic scrubbing threshold cannot exceed the peak inbound or outbound Internet traffic, whichever is larger, of the asset.
	Bps pulumi.IntPtrInput
	// The type of the threshold to query. Valid values: `defense`,`blackhole`.
	DdosType pulumi.StringInput
	// The ID of the instance.
	InstanceId pulumi.StringInput
	// The instance type of the public IP address asset. Value: `ecs`,`slb`,`eip`.
	InstanceType pulumi.StringInput
	// The Internet IP address.
	InternetIp pulumi.StringPtrInput
	// Whether it is the system default threshold. Value:
	IsAuto pulumi.BoolPtrInput
	// The current message number cleaning threshold. Unit: pps.
	Pps pulumi.IntPtrInput
}

The set of arguments for constructing a BasicDefenseThreshold resource.

func (BasicDefenseThresholdArgs) ElementType added in v3.20.0

func (BasicDefenseThresholdArgs) ElementType() reflect.Type

type BasicDefenseThresholdArray added in v3.20.0

type BasicDefenseThresholdArray []BasicDefenseThresholdInput

func (BasicDefenseThresholdArray) ElementType added in v3.20.0

func (BasicDefenseThresholdArray) ElementType() reflect.Type

func (BasicDefenseThresholdArray) ToBasicDefenseThresholdArrayOutput added in v3.20.0

func (i BasicDefenseThresholdArray) ToBasicDefenseThresholdArrayOutput() BasicDefenseThresholdArrayOutput

func (BasicDefenseThresholdArray) ToBasicDefenseThresholdArrayOutputWithContext added in v3.20.0

func (i BasicDefenseThresholdArray) ToBasicDefenseThresholdArrayOutputWithContext(ctx context.Context) BasicDefenseThresholdArrayOutput

func (BasicDefenseThresholdArray) ToOutput added in v3.43.1

type BasicDefenseThresholdArrayInput added in v3.20.0

type BasicDefenseThresholdArrayInput interface {
	pulumi.Input

	ToBasicDefenseThresholdArrayOutput() BasicDefenseThresholdArrayOutput
	ToBasicDefenseThresholdArrayOutputWithContext(context.Context) BasicDefenseThresholdArrayOutput
}

BasicDefenseThresholdArrayInput is an input type that accepts BasicDefenseThresholdArray and BasicDefenseThresholdArrayOutput values. You can construct a concrete instance of `BasicDefenseThresholdArrayInput` via:

BasicDefenseThresholdArray{ BasicDefenseThresholdArgs{...} }

type BasicDefenseThresholdArrayOutput added in v3.20.0

type BasicDefenseThresholdArrayOutput struct{ *pulumi.OutputState }

func (BasicDefenseThresholdArrayOutput) ElementType added in v3.20.0

func (BasicDefenseThresholdArrayOutput) Index added in v3.20.0

func (BasicDefenseThresholdArrayOutput) ToBasicDefenseThresholdArrayOutput added in v3.20.0

func (o BasicDefenseThresholdArrayOutput) ToBasicDefenseThresholdArrayOutput() BasicDefenseThresholdArrayOutput

func (BasicDefenseThresholdArrayOutput) ToBasicDefenseThresholdArrayOutputWithContext added in v3.20.0

func (o BasicDefenseThresholdArrayOutput) ToBasicDefenseThresholdArrayOutputWithContext(ctx context.Context) BasicDefenseThresholdArrayOutput

func (BasicDefenseThresholdArrayOutput) ToOutput added in v3.43.1

type BasicDefenseThresholdInput added in v3.20.0

type BasicDefenseThresholdInput interface {
	pulumi.Input

	ToBasicDefenseThresholdOutput() BasicDefenseThresholdOutput
	ToBasicDefenseThresholdOutputWithContext(ctx context.Context) BasicDefenseThresholdOutput
}

type BasicDefenseThresholdMap added in v3.20.0

type BasicDefenseThresholdMap map[string]BasicDefenseThresholdInput

func (BasicDefenseThresholdMap) ElementType added in v3.20.0

func (BasicDefenseThresholdMap) ElementType() reflect.Type

func (BasicDefenseThresholdMap) ToBasicDefenseThresholdMapOutput added in v3.20.0

func (i BasicDefenseThresholdMap) ToBasicDefenseThresholdMapOutput() BasicDefenseThresholdMapOutput

func (BasicDefenseThresholdMap) ToBasicDefenseThresholdMapOutputWithContext added in v3.20.0

func (i BasicDefenseThresholdMap) ToBasicDefenseThresholdMapOutputWithContext(ctx context.Context) BasicDefenseThresholdMapOutput

func (BasicDefenseThresholdMap) ToOutput added in v3.43.1

type BasicDefenseThresholdMapInput added in v3.20.0

type BasicDefenseThresholdMapInput interface {
	pulumi.Input

	ToBasicDefenseThresholdMapOutput() BasicDefenseThresholdMapOutput
	ToBasicDefenseThresholdMapOutputWithContext(context.Context) BasicDefenseThresholdMapOutput
}

BasicDefenseThresholdMapInput is an input type that accepts BasicDefenseThresholdMap and BasicDefenseThresholdMapOutput values. You can construct a concrete instance of `BasicDefenseThresholdMapInput` via:

BasicDefenseThresholdMap{ "key": BasicDefenseThresholdArgs{...} }

type BasicDefenseThresholdMapOutput added in v3.20.0

type BasicDefenseThresholdMapOutput struct{ *pulumi.OutputState }

func (BasicDefenseThresholdMapOutput) ElementType added in v3.20.0

func (BasicDefenseThresholdMapOutput) MapIndex added in v3.20.0

func (BasicDefenseThresholdMapOutput) ToBasicDefenseThresholdMapOutput added in v3.20.0

func (o BasicDefenseThresholdMapOutput) ToBasicDefenseThresholdMapOutput() BasicDefenseThresholdMapOutput

func (BasicDefenseThresholdMapOutput) ToBasicDefenseThresholdMapOutputWithContext added in v3.20.0

func (o BasicDefenseThresholdMapOutput) ToBasicDefenseThresholdMapOutputWithContext(ctx context.Context) BasicDefenseThresholdMapOutput

func (BasicDefenseThresholdMapOutput) ToOutput added in v3.43.1

type BasicDefenseThresholdOutput added in v3.20.0

type BasicDefenseThresholdOutput struct{ *pulumi.OutputState }

func (BasicDefenseThresholdOutput) Bps added in v3.27.0

Specifies the traffic scrubbing threshold. Unit: Mbit/s. The traffic scrubbing threshold cannot exceed the peak inbound or outbound Internet traffic, whichever is larger, of the asset.

func (BasicDefenseThresholdOutput) DdosType added in v3.27.0

The type of the threshold to query. Valid values: `defense`,`blackhole`.

func (BasicDefenseThresholdOutput) ElementType added in v3.20.0

func (BasicDefenseThresholdOutput) InstanceId added in v3.27.0

The ID of the instance.

func (BasicDefenseThresholdOutput) InstanceType added in v3.27.0

The instance type of the public IP address asset. Value: `ecs`,`slb`,`eip`.

func (BasicDefenseThresholdOutput) InternetIp added in v3.27.0

The Internet IP address.

func (BasicDefenseThresholdOutput) IsAuto added in v3.27.0

Whether it is the system default threshold. Value:

func (BasicDefenseThresholdOutput) MaxBps added in v3.27.0

The maximum traffic scrubbing threshold. Unit: Mbit/s.

func (BasicDefenseThresholdOutput) MaxPps added in v3.27.0

The maximum packet scrubbing threshold. Unit: pps.

func (BasicDefenseThresholdOutput) Pps added in v3.27.0

The current message number cleaning threshold. Unit: pps.

func (BasicDefenseThresholdOutput) ToBasicDefenseThresholdOutput added in v3.20.0

func (o BasicDefenseThresholdOutput) ToBasicDefenseThresholdOutput() BasicDefenseThresholdOutput

func (BasicDefenseThresholdOutput) ToBasicDefenseThresholdOutputWithContext added in v3.20.0

func (o BasicDefenseThresholdOutput) ToBasicDefenseThresholdOutputWithContext(ctx context.Context) BasicDefenseThresholdOutput

func (BasicDefenseThresholdOutput) ToOutput added in v3.43.1

type BasicDefenseThresholdState added in v3.20.0

type BasicDefenseThresholdState struct {
	// Specifies the traffic scrubbing threshold. Unit: Mbit/s. The traffic scrubbing threshold cannot exceed the peak inbound or outbound Internet traffic, whichever is larger, of the asset.
	Bps pulumi.IntPtrInput
	// The type of the threshold to query. Valid values: `defense`,`blackhole`.
	DdosType pulumi.StringPtrInput
	// The ID of the instance.
	InstanceId pulumi.StringPtrInput
	// The instance type of the public IP address asset. Value: `ecs`,`slb`,`eip`.
	InstanceType pulumi.StringPtrInput
	// The Internet IP address.
	InternetIp pulumi.StringPtrInput
	// Whether it is the system default threshold. Value:
	IsAuto pulumi.BoolPtrInput
	// The maximum traffic scrubbing threshold. Unit: Mbit/s.
	MaxBps pulumi.IntPtrInput
	// The maximum packet scrubbing threshold. Unit: pps.
	MaxPps pulumi.IntPtrInput
	// The current message number cleaning threshold. Unit: pps.
	Pps pulumi.IntPtrInput
}

func (BasicDefenseThresholdState) ElementType added in v3.20.0

func (BasicDefenseThresholdState) ElementType() reflect.Type

type BasicThreshold added in v3.29.0

type BasicThreshold struct {
	pulumi.CustomResourceState

	// Specifies the traffic scrubbing threshold. Unit: Mbit/s. The traffic scrubbing threshold cannot exceed the peak inbound or outbound Internet traffic, whichever is larger, of the asset.
	Bps pulumi.IntOutput `pulumi:"bps"`
	// The ID of the instance.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The type of the Instance. Valid values: `ecs`,`slb`,`eip`.
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// The IP address of the public IP address asset.
	InternetIp pulumi.StringOutput `pulumi:"internetIp"`
	// Maximum flow cleaning threshold. Unit: Mbps.
	MaxBps pulumi.IntOutput `pulumi:"maxBps"`
	// The maximum number of messages cleaning threshold. Unit: pps.
	MaxPps pulumi.IntOutput `pulumi:"maxPps"`
	// The current message number cleaning threshold. Unit: pps.
	Pps pulumi.IntOutput `pulumi:"pps"`
}

Provides a Ddos Basic Threshold resource.

For information about Ddos Basic Threshold and how to use it, see [What is Threshold](https://www.alibabacloud.com/help/en/ddos-protection/latest/describe-ip-ddosthreshold).

> **NOTE:** Available since v1.183.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: pulumi.StringRef("Instance"),
		}, nil)
		if err != nil {
			return err
		}
		defaultInstanceTypes, err := ecs.GetInstanceTypes(ctx, &ecs.GetInstanceTypesArgs{
			AvailabilityZone: pulumi.StringRef(defaultZones.Zones[0].Id),
			CpuCoreCount:     pulumi.IntRef(1),
			MemorySize:       pulumi.Float64Ref(2),
		}, nil)
		if err != nil {
			return err
		}
		defaultImages, err := ecs.GetImages(ctx, &ecs.GetImagesArgs{
			Owners:    pulumi.StringRef("system"),
			NameRegex: pulumi.StringRef("^ubuntu_[0-9]+_[0-9]+_x64*"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("10.4.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VswitchName: pulumi.String(name),
			CidrBlock:   pulumi.String("10.4.0.0/24"),
			VpcId:       defaultNetwork.ID(),
			ZoneId:      *pulumi.String(defaultZones.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "defaultSecurityGroup", &ecs.SecurityGroupArgs{
			Description: pulumi.String("New security group"),
			VpcId:       defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := ecs.NewInstance(ctx, "defaultInstance", &ecs.InstanceArgs{
			AvailabilityZone:        *pulumi.String(defaultZones.Zones[0].Id),
			InstanceName:            pulumi.String(name),
			HostName:                pulumi.String(name),
			InternetMaxBandwidthOut: pulumi.Int(10),
			ImageId:                 *pulumi.String(defaultImages.Images[0].Id),
			InstanceType:            *pulumi.String(defaultInstanceTypes.InstanceTypes[0].Id),
			SecurityGroups: pulumi.StringArray{
				defaultSecurityGroup.ID(),
			},
			VswitchId: defaultSwitch.ID(),
		})
		if err != nil {
			return err
		}
		_, err = ddos.NewBasicThreshold(ctx, "example", &ddos.BasicThresholdArgs{
			Pps:          pulumi.Int(60000),
			Bps:          pulumi.Int(100),
			InternetIp:   defaultInstance.PublicIp,
			InstanceId:   defaultInstance.ID(),
			InstanceType: pulumi.String("ecs"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Ddos Basic Threshold can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ddos/basicThreshold:BasicThreshold example <instance_type>:<instance_id>:<internet_ip>

```

func GetBasicThreshold added in v3.29.0

func GetBasicThreshold(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BasicThresholdState, opts ...pulumi.ResourceOption) (*BasicThreshold, error)

GetBasicThreshold gets an existing BasicThreshold 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 NewBasicThreshold added in v3.29.0

func NewBasicThreshold(ctx *pulumi.Context,
	name string, args *BasicThresholdArgs, opts ...pulumi.ResourceOption) (*BasicThreshold, error)

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

func (*BasicThreshold) ElementType added in v3.29.0

func (*BasicThreshold) ElementType() reflect.Type

func (*BasicThreshold) ToBasicThresholdOutput added in v3.29.0

func (i *BasicThreshold) ToBasicThresholdOutput() BasicThresholdOutput

func (*BasicThreshold) ToBasicThresholdOutputWithContext added in v3.29.0

func (i *BasicThreshold) ToBasicThresholdOutputWithContext(ctx context.Context) BasicThresholdOutput

func (*BasicThreshold) ToOutput added in v3.43.1

type BasicThresholdArgs added in v3.29.0

type BasicThresholdArgs struct {
	// Specifies the traffic scrubbing threshold. Unit: Mbit/s. The traffic scrubbing threshold cannot exceed the peak inbound or outbound Internet traffic, whichever is larger, of the asset.
	Bps pulumi.IntInput
	// The ID of the instance.
	InstanceId pulumi.StringInput
	// The type of the Instance. Valid values: `ecs`,`slb`,`eip`.
	InstanceType pulumi.StringInput
	// The IP address of the public IP address asset.
	InternetIp pulumi.StringInput
	// The current message number cleaning threshold. Unit: pps.
	Pps pulumi.IntInput
}

The set of arguments for constructing a BasicThreshold resource.

func (BasicThresholdArgs) ElementType added in v3.29.0

func (BasicThresholdArgs) ElementType() reflect.Type

type BasicThresholdArray added in v3.29.0

type BasicThresholdArray []BasicThresholdInput

func (BasicThresholdArray) ElementType added in v3.29.0

func (BasicThresholdArray) ElementType() reflect.Type

func (BasicThresholdArray) ToBasicThresholdArrayOutput added in v3.29.0

func (i BasicThresholdArray) ToBasicThresholdArrayOutput() BasicThresholdArrayOutput

func (BasicThresholdArray) ToBasicThresholdArrayOutputWithContext added in v3.29.0

func (i BasicThresholdArray) ToBasicThresholdArrayOutputWithContext(ctx context.Context) BasicThresholdArrayOutput

func (BasicThresholdArray) ToOutput added in v3.43.1

type BasicThresholdArrayInput added in v3.29.0

type BasicThresholdArrayInput interface {
	pulumi.Input

	ToBasicThresholdArrayOutput() BasicThresholdArrayOutput
	ToBasicThresholdArrayOutputWithContext(context.Context) BasicThresholdArrayOutput
}

BasicThresholdArrayInput is an input type that accepts BasicThresholdArray and BasicThresholdArrayOutput values. You can construct a concrete instance of `BasicThresholdArrayInput` via:

BasicThresholdArray{ BasicThresholdArgs{...} }

type BasicThresholdArrayOutput added in v3.29.0

type BasicThresholdArrayOutput struct{ *pulumi.OutputState }

func (BasicThresholdArrayOutput) ElementType added in v3.29.0

func (BasicThresholdArrayOutput) ElementType() reflect.Type

func (BasicThresholdArrayOutput) Index added in v3.29.0

func (BasicThresholdArrayOutput) ToBasicThresholdArrayOutput added in v3.29.0

func (o BasicThresholdArrayOutput) ToBasicThresholdArrayOutput() BasicThresholdArrayOutput

func (BasicThresholdArrayOutput) ToBasicThresholdArrayOutputWithContext added in v3.29.0

func (o BasicThresholdArrayOutput) ToBasicThresholdArrayOutputWithContext(ctx context.Context) BasicThresholdArrayOutput

func (BasicThresholdArrayOutput) ToOutput added in v3.43.1

type BasicThresholdInput added in v3.29.0

type BasicThresholdInput interface {
	pulumi.Input

	ToBasicThresholdOutput() BasicThresholdOutput
	ToBasicThresholdOutputWithContext(ctx context.Context) BasicThresholdOutput
}

type BasicThresholdMap added in v3.29.0

type BasicThresholdMap map[string]BasicThresholdInput

func (BasicThresholdMap) ElementType added in v3.29.0

func (BasicThresholdMap) ElementType() reflect.Type

func (BasicThresholdMap) ToBasicThresholdMapOutput added in v3.29.0

func (i BasicThresholdMap) ToBasicThresholdMapOutput() BasicThresholdMapOutput

func (BasicThresholdMap) ToBasicThresholdMapOutputWithContext added in v3.29.0

func (i BasicThresholdMap) ToBasicThresholdMapOutputWithContext(ctx context.Context) BasicThresholdMapOutput

func (BasicThresholdMap) ToOutput added in v3.43.1

type BasicThresholdMapInput added in v3.29.0

type BasicThresholdMapInput interface {
	pulumi.Input

	ToBasicThresholdMapOutput() BasicThresholdMapOutput
	ToBasicThresholdMapOutputWithContext(context.Context) BasicThresholdMapOutput
}

BasicThresholdMapInput is an input type that accepts BasicThresholdMap and BasicThresholdMapOutput values. You can construct a concrete instance of `BasicThresholdMapInput` via:

BasicThresholdMap{ "key": BasicThresholdArgs{...} }

type BasicThresholdMapOutput added in v3.29.0

type BasicThresholdMapOutput struct{ *pulumi.OutputState }

func (BasicThresholdMapOutput) ElementType added in v3.29.0

func (BasicThresholdMapOutput) ElementType() reflect.Type

func (BasicThresholdMapOutput) MapIndex added in v3.29.0

func (BasicThresholdMapOutput) ToBasicThresholdMapOutput added in v3.29.0

func (o BasicThresholdMapOutput) ToBasicThresholdMapOutput() BasicThresholdMapOutput

func (BasicThresholdMapOutput) ToBasicThresholdMapOutputWithContext added in v3.29.0

func (o BasicThresholdMapOutput) ToBasicThresholdMapOutputWithContext(ctx context.Context) BasicThresholdMapOutput

func (BasicThresholdMapOutput) ToOutput added in v3.43.1

type BasicThresholdOutput added in v3.29.0

type BasicThresholdOutput struct{ *pulumi.OutputState }

func (BasicThresholdOutput) Bps added in v3.29.0

Specifies the traffic scrubbing threshold. Unit: Mbit/s. The traffic scrubbing threshold cannot exceed the peak inbound or outbound Internet traffic, whichever is larger, of the asset.

func (BasicThresholdOutput) ElementType added in v3.29.0

func (BasicThresholdOutput) ElementType() reflect.Type

func (BasicThresholdOutput) InstanceId added in v3.29.0

func (o BasicThresholdOutput) InstanceId() pulumi.StringOutput

The ID of the instance.

func (BasicThresholdOutput) InstanceType added in v3.29.0

func (o BasicThresholdOutput) InstanceType() pulumi.StringOutput

The type of the Instance. Valid values: `ecs`,`slb`,`eip`.

func (BasicThresholdOutput) InternetIp added in v3.29.0

func (o BasicThresholdOutput) InternetIp() pulumi.StringOutput

The IP address of the public IP address asset.

func (BasicThresholdOutput) MaxBps added in v3.29.0

Maximum flow cleaning threshold. Unit: Mbps.

func (BasicThresholdOutput) MaxPps added in v3.29.0

The maximum number of messages cleaning threshold. Unit: pps.

func (BasicThresholdOutput) Pps added in v3.29.0

The current message number cleaning threshold. Unit: pps.

func (BasicThresholdOutput) ToBasicThresholdOutput added in v3.29.0

func (o BasicThresholdOutput) ToBasicThresholdOutput() BasicThresholdOutput

func (BasicThresholdOutput) ToBasicThresholdOutputWithContext added in v3.29.0

func (o BasicThresholdOutput) ToBasicThresholdOutputWithContext(ctx context.Context) BasicThresholdOutput

func (BasicThresholdOutput) ToOutput added in v3.43.1

type BasicThresholdState added in v3.29.0

type BasicThresholdState struct {
	// Specifies the traffic scrubbing threshold. Unit: Mbit/s. The traffic scrubbing threshold cannot exceed the peak inbound or outbound Internet traffic, whichever is larger, of the asset.
	Bps pulumi.IntPtrInput
	// The ID of the instance.
	InstanceId pulumi.StringPtrInput
	// The type of the Instance. Valid values: `ecs`,`slb`,`eip`.
	InstanceType pulumi.StringPtrInput
	// The IP address of the public IP address asset.
	InternetIp pulumi.StringPtrInput
	// Maximum flow cleaning threshold. Unit: Mbps.
	MaxBps pulumi.IntPtrInput
	// The maximum number of messages cleaning threshold. Unit: pps.
	MaxPps pulumi.IntPtrInput
	// The current message number cleaning threshold. Unit: pps.
	Pps pulumi.IntPtrInput
}

func (BasicThresholdState) ElementType added in v3.29.0

func (BasicThresholdState) ElementType() reflect.Type

type BgpIp added in v3.28.0

type BgpIp struct {
	pulumi.CustomResourceState

	// The ID of the native protection enterprise instance to be operated.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The IP address.
	Ip pulumi.StringOutput `pulumi:"ip"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// The current state of the IP address. Valid Value: `normal`, `holeBegin`.
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a Ddos Bgp Ip resource.

For information about Ddos Bgp Ip and how to use it, see [What is Ip](https://www.alibabacloud.com/help/en/ddos-protection/latest/addip).

> **NOTE:** Available since v1.180.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		defaultResourceGroups, err := resourcemanager.GetResourceGroups(ctx, nil, nil)
		if err != nil {
			return err
		}
		instance, err := ddos.NewDdosBgpInstance(ctx, "instance", &ddos.DdosBgpInstanceArgs{
			BaseBandwidth:   pulumi.Int(20),
			Bandwidth:       -1,
			IpCount:         pulumi.Int(100),
			IpType:          pulumi.String("IPv4"),
			NormalBandwidth: pulumi.Int(100),
			Type:            pulumi.String("Enterprise"),
		})
		if err != nil {
			return err
		}
		defaultEipAddress, err := ecs.NewEipAddress(ctx, "defaultEipAddress", &ecs.EipAddressArgs{
			AddressName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = ddos.NewBgpIp(ctx, "defaultBgpIp", &ddos.BgpIpArgs{
			InstanceId:      instance.ID(),
			Ip:              defaultEipAddress.IpAddress,
			ResourceGroupId: *pulumi.String(defaultResourceGroups.Groups[0].Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Ddos Bgp Ip can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ddos/bgpIp:BgpIp example <instance_id>:<ip>

```

func GetBgpIp added in v3.28.0

func GetBgpIp(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BgpIpState, opts ...pulumi.ResourceOption) (*BgpIp, error)

GetBgpIp gets an existing BgpIp 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 NewBgpIp added in v3.28.0

func NewBgpIp(ctx *pulumi.Context,
	name string, args *BgpIpArgs, opts ...pulumi.ResourceOption) (*BgpIp, error)

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

func (*BgpIp) ElementType added in v3.28.0

func (*BgpIp) ElementType() reflect.Type

func (*BgpIp) ToBgpIpOutput added in v3.28.0

func (i *BgpIp) ToBgpIpOutput() BgpIpOutput

func (*BgpIp) ToBgpIpOutputWithContext added in v3.28.0

func (i *BgpIp) ToBgpIpOutputWithContext(ctx context.Context) BgpIpOutput

func (*BgpIp) ToOutput added in v3.43.1

func (i *BgpIp) ToOutput(ctx context.Context) pulumix.Output[*BgpIp]

type BgpIpArgs added in v3.28.0

type BgpIpArgs struct {
	// The ID of the native protection enterprise instance to be operated.
	InstanceId pulumi.StringInput
	// The IP address.
	Ip pulumi.StringInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
}

The set of arguments for constructing a BgpIp resource.

func (BgpIpArgs) ElementType added in v3.28.0

func (BgpIpArgs) ElementType() reflect.Type

type BgpIpArray added in v3.28.0

type BgpIpArray []BgpIpInput

func (BgpIpArray) ElementType added in v3.28.0

func (BgpIpArray) ElementType() reflect.Type

func (BgpIpArray) ToBgpIpArrayOutput added in v3.28.0

func (i BgpIpArray) ToBgpIpArrayOutput() BgpIpArrayOutput

func (BgpIpArray) ToBgpIpArrayOutputWithContext added in v3.28.0

func (i BgpIpArray) ToBgpIpArrayOutputWithContext(ctx context.Context) BgpIpArrayOutput

func (BgpIpArray) ToOutput added in v3.43.1

func (i BgpIpArray) ToOutput(ctx context.Context) pulumix.Output[[]*BgpIp]

type BgpIpArrayInput added in v3.28.0

type BgpIpArrayInput interface {
	pulumi.Input

	ToBgpIpArrayOutput() BgpIpArrayOutput
	ToBgpIpArrayOutputWithContext(context.Context) BgpIpArrayOutput
}

BgpIpArrayInput is an input type that accepts BgpIpArray and BgpIpArrayOutput values. You can construct a concrete instance of `BgpIpArrayInput` via:

BgpIpArray{ BgpIpArgs{...} }

type BgpIpArrayOutput added in v3.28.0

type BgpIpArrayOutput struct{ *pulumi.OutputState }

func (BgpIpArrayOutput) ElementType added in v3.28.0

func (BgpIpArrayOutput) ElementType() reflect.Type

func (BgpIpArrayOutput) Index added in v3.28.0

func (BgpIpArrayOutput) ToBgpIpArrayOutput added in v3.28.0

func (o BgpIpArrayOutput) ToBgpIpArrayOutput() BgpIpArrayOutput

func (BgpIpArrayOutput) ToBgpIpArrayOutputWithContext added in v3.28.0

func (o BgpIpArrayOutput) ToBgpIpArrayOutputWithContext(ctx context.Context) BgpIpArrayOutput

func (BgpIpArrayOutput) ToOutput added in v3.43.1

func (o BgpIpArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]*BgpIp]

type BgpIpInput added in v3.28.0

type BgpIpInput interface {
	pulumi.Input

	ToBgpIpOutput() BgpIpOutput
	ToBgpIpOutputWithContext(ctx context.Context) BgpIpOutput
}

type BgpIpMap added in v3.28.0

type BgpIpMap map[string]BgpIpInput

func (BgpIpMap) ElementType added in v3.28.0

func (BgpIpMap) ElementType() reflect.Type

func (BgpIpMap) ToBgpIpMapOutput added in v3.28.0

func (i BgpIpMap) ToBgpIpMapOutput() BgpIpMapOutput

func (BgpIpMap) ToBgpIpMapOutputWithContext added in v3.28.0

func (i BgpIpMap) ToBgpIpMapOutputWithContext(ctx context.Context) BgpIpMapOutput

func (BgpIpMap) ToOutput added in v3.43.1

func (i BgpIpMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*BgpIp]

type BgpIpMapInput added in v3.28.0

type BgpIpMapInput interface {
	pulumi.Input

	ToBgpIpMapOutput() BgpIpMapOutput
	ToBgpIpMapOutputWithContext(context.Context) BgpIpMapOutput
}

BgpIpMapInput is an input type that accepts BgpIpMap and BgpIpMapOutput values. You can construct a concrete instance of `BgpIpMapInput` via:

BgpIpMap{ "key": BgpIpArgs{...} }

type BgpIpMapOutput added in v3.28.0

type BgpIpMapOutput struct{ *pulumi.OutputState }

func (BgpIpMapOutput) ElementType added in v3.28.0

func (BgpIpMapOutput) ElementType() reflect.Type

func (BgpIpMapOutput) MapIndex added in v3.28.0

func (BgpIpMapOutput) ToBgpIpMapOutput added in v3.28.0

func (o BgpIpMapOutput) ToBgpIpMapOutput() BgpIpMapOutput

func (BgpIpMapOutput) ToBgpIpMapOutputWithContext added in v3.28.0

func (o BgpIpMapOutput) ToBgpIpMapOutputWithContext(ctx context.Context) BgpIpMapOutput

func (BgpIpMapOutput) ToOutput added in v3.43.1

func (o BgpIpMapOutput) ToOutput(ctx context.Context) pulumix.Output[map[string]*BgpIp]

type BgpIpOutput added in v3.28.0

type BgpIpOutput struct{ *pulumi.OutputState }

func (BgpIpOutput) ElementType added in v3.28.0

func (BgpIpOutput) ElementType() reflect.Type

func (BgpIpOutput) InstanceId added in v3.28.0

func (o BgpIpOutput) InstanceId() pulumi.StringOutput

The ID of the native protection enterprise instance to be operated.

func (BgpIpOutput) Ip added in v3.28.0

The IP address.

func (BgpIpOutput) ResourceGroupId added in v3.28.0

func (o BgpIpOutput) ResourceGroupId() pulumi.StringPtrOutput

The ID of the resource group.

func (BgpIpOutput) Status added in v3.28.0

func (o BgpIpOutput) Status() pulumi.StringOutput

The current state of the IP address. Valid Value: `normal`, `holeBegin`.

func (BgpIpOutput) ToBgpIpOutput added in v3.28.0

func (o BgpIpOutput) ToBgpIpOutput() BgpIpOutput

func (BgpIpOutput) ToBgpIpOutputWithContext added in v3.28.0

func (o BgpIpOutput) ToBgpIpOutputWithContext(ctx context.Context) BgpIpOutput

func (BgpIpOutput) ToOutput added in v3.43.1

func (o BgpIpOutput) ToOutput(ctx context.Context) pulumix.Output[*BgpIp]

type BgpIpState added in v3.28.0

type BgpIpState struct {
	// The ID of the native protection enterprise instance to be operated.
	InstanceId pulumi.StringPtrInput
	// The IP address.
	Ip pulumi.StringPtrInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
	// The current state of the IP address. Valid Value: `normal`, `holeBegin`.
	Status pulumi.StringPtrInput
}

func (BgpIpState) ElementType added in v3.28.0

func (BgpIpState) ElementType() reflect.Type

type DdosBgpInstance

type DdosBgpInstance struct {
	pulumi.CustomResourceState

	// Elastic defend bandwidth of the instance. This value must be larger than the base defend bandwidth. Valid values: 51,91,101,201,301. The unit is Gbps.
	Bandwidth pulumi.IntOutput `pulumi:"bandwidth"`
	// Base defend bandwidth of the instance. Valid values: 20. The unit is Gbps. Default to `20`.
	BaseBandwidth pulumi.IntPtrOutput `pulumi:"baseBandwidth"`
	// IP count of the instance. Valid values: 100.
	IpCount pulumi.IntOutput `pulumi:"ipCount"`
	// IP version of the instance. Valid values: IPv4,IPv6.
	IpType pulumi.StringOutput `pulumi:"ipType"`
	// Name of the instance. This name can have a string of 1 to 63 characters.
	Name pulumi.StringOutput `pulumi:"name"`
	// Normal defend bandwidth of the instance. The unit is Gbps.
	NormalBandwidth pulumi.IntOutput `pulumi:"normalBandwidth"`
	// The duration that you will buy Ddosbgp instance (in month). Valid values: [1~9], 12, 24, 36. Default to 12. At present, the provider does not support modify "period".
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// Type of the instance. Valid values: `Enterprise`, `Professional`. Default to `Enterprise`
	Type pulumi.StringPtrOutput `pulumi:"type"`
}

Anti-DDoS Advanced instance resource. "Ddosbgp" is the short term of this product.

> **NOTE:** The endpoint of bssopenapi used only support "business.aliyuncs.com" at present.

> **NOTE:** Available since v1.183.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ddos.NewDdosBgpInstance(ctx, "instance", &ddos.DdosBgpInstanceArgs{
			BaseBandwidth:   pulumi.Int(20),
			Bandwidth:       -1,
			IpCount:         pulumi.Int(100),
			IpType:          pulumi.String("IPv4"),
			NormalBandwidth: pulumi.Int(100),
			Type:            pulumi.String("Enterprise"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Ddosbgp instance can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ddos/ddosBgpInstance:DdosBgpInstance example ddosbgp-abc123456

```

func GetDdosBgpInstance

func GetDdosBgpInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DdosBgpInstanceState, opts ...pulumi.ResourceOption) (*DdosBgpInstance, error)

GetDdosBgpInstance gets an existing DdosBgpInstance 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 NewDdosBgpInstance

func NewDdosBgpInstance(ctx *pulumi.Context,
	name string, args *DdosBgpInstanceArgs, opts ...pulumi.ResourceOption) (*DdosBgpInstance, error)

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

func (*DdosBgpInstance) ElementType

func (*DdosBgpInstance) ElementType() reflect.Type

func (*DdosBgpInstance) ToDdosBgpInstanceOutput

func (i *DdosBgpInstance) ToDdosBgpInstanceOutput() DdosBgpInstanceOutput

func (*DdosBgpInstance) ToDdosBgpInstanceOutputWithContext

func (i *DdosBgpInstance) ToDdosBgpInstanceOutputWithContext(ctx context.Context) DdosBgpInstanceOutput

func (*DdosBgpInstance) ToOutput added in v3.43.1

type DdosBgpInstanceArgs

type DdosBgpInstanceArgs struct {
	// Elastic defend bandwidth of the instance. This value must be larger than the base defend bandwidth. Valid values: 51,91,101,201,301. The unit is Gbps.
	Bandwidth pulumi.IntInput
	// Base defend bandwidth of the instance. Valid values: 20. The unit is Gbps. Default to `20`.
	BaseBandwidth pulumi.IntPtrInput
	// IP count of the instance. Valid values: 100.
	IpCount pulumi.IntInput
	// IP version of the instance. Valid values: IPv4,IPv6.
	IpType pulumi.StringInput
	// Name of the instance. This name can have a string of 1 to 63 characters.
	Name pulumi.StringPtrInput
	// Normal defend bandwidth of the instance. The unit is Gbps.
	NormalBandwidth pulumi.IntInput
	// The duration that you will buy Ddosbgp instance (in month). Valid values: [1~9], 12, 24, 36. Default to 12. At present, the provider does not support modify "period".
	Period pulumi.IntPtrInput
	// Type of the instance. Valid values: `Enterprise`, `Professional`. Default to `Enterprise`
	Type pulumi.StringPtrInput
}

The set of arguments for constructing a DdosBgpInstance resource.

func (DdosBgpInstanceArgs) ElementType

func (DdosBgpInstanceArgs) ElementType() reflect.Type

type DdosBgpInstanceArray

type DdosBgpInstanceArray []DdosBgpInstanceInput

func (DdosBgpInstanceArray) ElementType

func (DdosBgpInstanceArray) ElementType() reflect.Type

func (DdosBgpInstanceArray) ToDdosBgpInstanceArrayOutput

func (i DdosBgpInstanceArray) ToDdosBgpInstanceArrayOutput() DdosBgpInstanceArrayOutput

func (DdosBgpInstanceArray) ToDdosBgpInstanceArrayOutputWithContext

func (i DdosBgpInstanceArray) ToDdosBgpInstanceArrayOutputWithContext(ctx context.Context) DdosBgpInstanceArrayOutput

func (DdosBgpInstanceArray) ToOutput added in v3.43.1

type DdosBgpInstanceArrayInput

type DdosBgpInstanceArrayInput interface {
	pulumi.Input

	ToDdosBgpInstanceArrayOutput() DdosBgpInstanceArrayOutput
	ToDdosBgpInstanceArrayOutputWithContext(context.Context) DdosBgpInstanceArrayOutput
}

DdosBgpInstanceArrayInput is an input type that accepts DdosBgpInstanceArray and DdosBgpInstanceArrayOutput values. You can construct a concrete instance of `DdosBgpInstanceArrayInput` via:

DdosBgpInstanceArray{ DdosBgpInstanceArgs{...} }

type DdosBgpInstanceArrayOutput

type DdosBgpInstanceArrayOutput struct{ *pulumi.OutputState }

func (DdosBgpInstanceArrayOutput) ElementType

func (DdosBgpInstanceArrayOutput) ElementType() reflect.Type

func (DdosBgpInstanceArrayOutput) Index

func (DdosBgpInstanceArrayOutput) ToDdosBgpInstanceArrayOutput

func (o DdosBgpInstanceArrayOutput) ToDdosBgpInstanceArrayOutput() DdosBgpInstanceArrayOutput

func (DdosBgpInstanceArrayOutput) ToDdosBgpInstanceArrayOutputWithContext

func (o DdosBgpInstanceArrayOutput) ToDdosBgpInstanceArrayOutputWithContext(ctx context.Context) DdosBgpInstanceArrayOutput

func (DdosBgpInstanceArrayOutput) ToOutput added in v3.43.1

type DdosBgpInstanceInput

type DdosBgpInstanceInput interface {
	pulumi.Input

	ToDdosBgpInstanceOutput() DdosBgpInstanceOutput
	ToDdosBgpInstanceOutputWithContext(ctx context.Context) DdosBgpInstanceOutput
}

type DdosBgpInstanceMap

type DdosBgpInstanceMap map[string]DdosBgpInstanceInput

func (DdosBgpInstanceMap) ElementType

func (DdosBgpInstanceMap) ElementType() reflect.Type

func (DdosBgpInstanceMap) ToDdosBgpInstanceMapOutput

func (i DdosBgpInstanceMap) ToDdosBgpInstanceMapOutput() DdosBgpInstanceMapOutput

func (DdosBgpInstanceMap) ToDdosBgpInstanceMapOutputWithContext

func (i DdosBgpInstanceMap) ToDdosBgpInstanceMapOutputWithContext(ctx context.Context) DdosBgpInstanceMapOutput

func (DdosBgpInstanceMap) ToOutput added in v3.43.1

type DdosBgpInstanceMapInput

type DdosBgpInstanceMapInput interface {
	pulumi.Input

	ToDdosBgpInstanceMapOutput() DdosBgpInstanceMapOutput
	ToDdosBgpInstanceMapOutputWithContext(context.Context) DdosBgpInstanceMapOutput
}

DdosBgpInstanceMapInput is an input type that accepts DdosBgpInstanceMap and DdosBgpInstanceMapOutput values. You can construct a concrete instance of `DdosBgpInstanceMapInput` via:

DdosBgpInstanceMap{ "key": DdosBgpInstanceArgs{...} }

type DdosBgpInstanceMapOutput

type DdosBgpInstanceMapOutput struct{ *pulumi.OutputState }

func (DdosBgpInstanceMapOutput) ElementType

func (DdosBgpInstanceMapOutput) ElementType() reflect.Type

func (DdosBgpInstanceMapOutput) MapIndex

func (DdosBgpInstanceMapOutput) ToDdosBgpInstanceMapOutput

func (o DdosBgpInstanceMapOutput) ToDdosBgpInstanceMapOutput() DdosBgpInstanceMapOutput

func (DdosBgpInstanceMapOutput) ToDdosBgpInstanceMapOutputWithContext

func (o DdosBgpInstanceMapOutput) ToDdosBgpInstanceMapOutputWithContext(ctx context.Context) DdosBgpInstanceMapOutput

func (DdosBgpInstanceMapOutput) ToOutput added in v3.43.1

type DdosBgpInstanceOutput

type DdosBgpInstanceOutput struct{ *pulumi.OutputState }

func (DdosBgpInstanceOutput) Bandwidth added in v3.27.0

func (o DdosBgpInstanceOutput) Bandwidth() pulumi.IntOutput

Elastic defend bandwidth of the instance. This value must be larger than the base defend bandwidth. Valid values: 51,91,101,201,301. The unit is Gbps.

func (DdosBgpInstanceOutput) BaseBandwidth added in v3.27.0

func (o DdosBgpInstanceOutput) BaseBandwidth() pulumi.IntPtrOutput

Base defend bandwidth of the instance. Valid values: 20. The unit is Gbps. Default to `20`.

func (DdosBgpInstanceOutput) ElementType

func (DdosBgpInstanceOutput) ElementType() reflect.Type

func (DdosBgpInstanceOutput) IpCount added in v3.27.0

IP count of the instance. Valid values: 100.

func (DdosBgpInstanceOutput) IpType added in v3.27.0

IP version of the instance. Valid values: IPv4,IPv6.

func (DdosBgpInstanceOutput) Name added in v3.27.0

Name of the instance. This name can have a string of 1 to 63 characters.

func (DdosBgpInstanceOutput) NormalBandwidth added in v3.29.0

func (o DdosBgpInstanceOutput) NormalBandwidth() pulumi.IntOutput

Normal defend bandwidth of the instance. The unit is Gbps.

func (DdosBgpInstanceOutput) Period added in v3.27.0

The duration that you will buy Ddosbgp instance (in month). Valid values: [1~9], 12, 24, 36. Default to 12. At present, the provider does not support modify "period".

func (DdosBgpInstanceOutput) ToDdosBgpInstanceOutput

func (o DdosBgpInstanceOutput) ToDdosBgpInstanceOutput() DdosBgpInstanceOutput

func (DdosBgpInstanceOutput) ToDdosBgpInstanceOutputWithContext

func (o DdosBgpInstanceOutput) ToDdosBgpInstanceOutputWithContext(ctx context.Context) DdosBgpInstanceOutput

func (DdosBgpInstanceOutput) ToOutput added in v3.43.1

func (DdosBgpInstanceOutput) Type added in v3.27.0

Type of the instance. Valid values: `Enterprise`, `Professional`. Default to `Enterprise`

type DdosBgpInstanceState

type DdosBgpInstanceState struct {
	// Elastic defend bandwidth of the instance. This value must be larger than the base defend bandwidth. Valid values: 51,91,101,201,301. The unit is Gbps.
	Bandwidth pulumi.IntPtrInput
	// Base defend bandwidth of the instance. Valid values: 20. The unit is Gbps. Default to `20`.
	BaseBandwidth pulumi.IntPtrInput
	// IP count of the instance. Valid values: 100.
	IpCount pulumi.IntPtrInput
	// IP version of the instance. Valid values: IPv4,IPv6.
	IpType pulumi.StringPtrInput
	// Name of the instance. This name can have a string of 1 to 63 characters.
	Name pulumi.StringPtrInput
	// Normal defend bandwidth of the instance. The unit is Gbps.
	NormalBandwidth pulumi.IntPtrInput
	// The duration that you will buy Ddosbgp instance (in month). Valid values: [1~9], 12, 24, 36. Default to 12. At present, the provider does not support modify "period".
	Period pulumi.IntPtrInput
	// Type of the instance. Valid values: `Enterprise`, `Professional`. Default to `Enterprise`
	Type pulumi.StringPtrInput
}

func (DdosBgpInstanceState) ElementType

func (DdosBgpInstanceState) ElementType() reflect.Type

type DdosCooInstance

type DdosCooInstance struct {
	pulumi.CustomResourceState

	// Elastic defend bandwidth of the instance. This value must be larger than the base defend bandwidth. Valid values: 30, 60, 100, 300, 400, 500, 600. The unit is Gbps. Only support upgrade.
	Bandwidth pulumi.StringOutput `pulumi:"bandwidth"`
	// Base defend bandwidth of the instance. Valid values: 30, 60, 100, 300, 400, 500, 600. The unit is Gbps. Only support upgrade.
	BaseBandwidth pulumi.StringOutput `pulumi:"baseBandwidth"`
	// Domain retransmission rule count of the instance. At least 50. Increase 5 per step, such as 55, 60, 65. Only support upgrade.
	DomainCount pulumi.StringOutput `pulumi:"domainCount"`
	// Name of the instance. This name can have a string of 1 to 63 characters.
	Name pulumi.StringOutput `pulumi:"name"`
	// The duration that you will buy Ddoscoo instance (in month). Valid values: [1~9], 12, 24, 36. Default to 1. At present, the provider does not support modify "period".
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// Port retransmission rule count of the instance. At least 50. Increase 5 per step, such as 55, 60, 65. Only support upgrade.
	PortCount pulumi.StringOutput `pulumi:"portCount"`
	// The product type for purchasing DDOSCOO instances used to differ different account type. Valid values:
	// - ddoscoo: Only supports domestic account.
	// - ddoscoo_intl: Only supports to international account.
	//   Default to ddoscoo.
	ProductType pulumi.StringPtrOutput `pulumi:"productType"`
	// Business bandwidth of the instance. At leaset 100. Increased 100 per step, such as 100, 200, 300. The unit is Mbps. Only support upgrade.
	ServiceBandwidth pulumi.StringOutput `pulumi:"serviceBandwidth"`
}

BGP-Line Anti-DDoS instance resource. "Ddoscoo" is the short term of this product. See [What is Anti-DDoS Pro](https://www.alibabacloud.com/help/en/ddos-protection/latest/api-ddoscoo-2020-01-01-describeinstances).

> **NOTE:** The product region only support cn-hangzhou.

> **NOTE:** The endpoint of bssopenapi used only support "business.aliyuncs.com" at present.

> **NOTE:** Available since v1.37.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ddos.NewDdosCooInstance(ctx, "default", &ddos.DdosCooInstanceArgs{
			Bandwidth:        pulumi.String("30"),
			BaseBandwidth:    pulumi.String("30"),
			ServiceBandwidth: pulumi.String("100"),
			PortCount:        pulumi.String("50"),
			DomainCount:      pulumi.String("50"),
			Period:           pulumi.Int(1),
			ProductType:      pulumi.String("ddoscoo"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Ddoscoo instance can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ddos/ddosCooInstance:DdosCooInstance example ddoscoo-cn-123456

```

func GetDdosCooInstance

func GetDdosCooInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DdosCooInstanceState, opts ...pulumi.ResourceOption) (*DdosCooInstance, error)

GetDdosCooInstance gets an existing DdosCooInstance 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 NewDdosCooInstance

func NewDdosCooInstance(ctx *pulumi.Context,
	name string, args *DdosCooInstanceArgs, opts ...pulumi.ResourceOption) (*DdosCooInstance, error)

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

func (*DdosCooInstance) ElementType

func (*DdosCooInstance) ElementType() reflect.Type

func (*DdosCooInstance) ToDdosCooInstanceOutput

func (i *DdosCooInstance) ToDdosCooInstanceOutput() DdosCooInstanceOutput

func (*DdosCooInstance) ToDdosCooInstanceOutputWithContext

func (i *DdosCooInstance) ToDdosCooInstanceOutputWithContext(ctx context.Context) DdosCooInstanceOutput

func (*DdosCooInstance) ToOutput added in v3.43.1

type DdosCooInstanceArgs

type DdosCooInstanceArgs struct {
	// Elastic defend bandwidth of the instance. This value must be larger than the base defend bandwidth. Valid values: 30, 60, 100, 300, 400, 500, 600. The unit is Gbps. Only support upgrade.
	Bandwidth pulumi.StringInput
	// Base defend bandwidth of the instance. Valid values: 30, 60, 100, 300, 400, 500, 600. The unit is Gbps. Only support upgrade.
	BaseBandwidth pulumi.StringInput
	// Domain retransmission rule count of the instance. At least 50. Increase 5 per step, such as 55, 60, 65. Only support upgrade.
	DomainCount pulumi.StringInput
	// Name of the instance. This name can have a string of 1 to 63 characters.
	Name pulumi.StringPtrInput
	// The duration that you will buy Ddoscoo instance (in month). Valid values: [1~9], 12, 24, 36. Default to 1. At present, the provider does not support modify "period".
	Period pulumi.IntPtrInput
	// Port retransmission rule count of the instance. At least 50. Increase 5 per step, such as 55, 60, 65. Only support upgrade.
	PortCount pulumi.StringInput
	// The product type for purchasing DDOSCOO instances used to differ different account type. Valid values:
	// - ddoscoo: Only supports domestic account.
	// - ddoscoo_intl: Only supports to international account.
	//   Default to ddoscoo.
	ProductType pulumi.StringPtrInput
	// Business bandwidth of the instance. At leaset 100. Increased 100 per step, such as 100, 200, 300. The unit is Mbps. Only support upgrade.
	ServiceBandwidth pulumi.StringInput
}

The set of arguments for constructing a DdosCooInstance resource.

func (DdosCooInstanceArgs) ElementType

func (DdosCooInstanceArgs) ElementType() reflect.Type

type DdosCooInstanceArray

type DdosCooInstanceArray []DdosCooInstanceInput

func (DdosCooInstanceArray) ElementType

func (DdosCooInstanceArray) ElementType() reflect.Type

func (DdosCooInstanceArray) ToDdosCooInstanceArrayOutput

func (i DdosCooInstanceArray) ToDdosCooInstanceArrayOutput() DdosCooInstanceArrayOutput

func (DdosCooInstanceArray) ToDdosCooInstanceArrayOutputWithContext

func (i DdosCooInstanceArray) ToDdosCooInstanceArrayOutputWithContext(ctx context.Context) DdosCooInstanceArrayOutput

func (DdosCooInstanceArray) ToOutput added in v3.43.1

type DdosCooInstanceArrayInput

type DdosCooInstanceArrayInput interface {
	pulumi.Input

	ToDdosCooInstanceArrayOutput() DdosCooInstanceArrayOutput
	ToDdosCooInstanceArrayOutputWithContext(context.Context) DdosCooInstanceArrayOutput
}

DdosCooInstanceArrayInput is an input type that accepts DdosCooInstanceArray and DdosCooInstanceArrayOutput values. You can construct a concrete instance of `DdosCooInstanceArrayInput` via:

DdosCooInstanceArray{ DdosCooInstanceArgs{...} }

type DdosCooInstanceArrayOutput

type DdosCooInstanceArrayOutput struct{ *pulumi.OutputState }

func (DdosCooInstanceArrayOutput) ElementType

func (DdosCooInstanceArrayOutput) ElementType() reflect.Type

func (DdosCooInstanceArrayOutput) Index

func (DdosCooInstanceArrayOutput) ToDdosCooInstanceArrayOutput

func (o DdosCooInstanceArrayOutput) ToDdosCooInstanceArrayOutput() DdosCooInstanceArrayOutput

func (DdosCooInstanceArrayOutput) ToDdosCooInstanceArrayOutputWithContext

func (o DdosCooInstanceArrayOutput) ToDdosCooInstanceArrayOutputWithContext(ctx context.Context) DdosCooInstanceArrayOutput

func (DdosCooInstanceArrayOutput) ToOutput added in v3.43.1

type DdosCooInstanceInput

type DdosCooInstanceInput interface {
	pulumi.Input

	ToDdosCooInstanceOutput() DdosCooInstanceOutput
	ToDdosCooInstanceOutputWithContext(ctx context.Context) DdosCooInstanceOutput
}

type DdosCooInstanceMap

type DdosCooInstanceMap map[string]DdosCooInstanceInput

func (DdosCooInstanceMap) ElementType

func (DdosCooInstanceMap) ElementType() reflect.Type

func (DdosCooInstanceMap) ToDdosCooInstanceMapOutput

func (i DdosCooInstanceMap) ToDdosCooInstanceMapOutput() DdosCooInstanceMapOutput

func (DdosCooInstanceMap) ToDdosCooInstanceMapOutputWithContext

func (i DdosCooInstanceMap) ToDdosCooInstanceMapOutputWithContext(ctx context.Context) DdosCooInstanceMapOutput

func (DdosCooInstanceMap) ToOutput added in v3.43.1

type DdosCooInstanceMapInput

type DdosCooInstanceMapInput interface {
	pulumi.Input

	ToDdosCooInstanceMapOutput() DdosCooInstanceMapOutput
	ToDdosCooInstanceMapOutputWithContext(context.Context) DdosCooInstanceMapOutput
}

DdosCooInstanceMapInput is an input type that accepts DdosCooInstanceMap and DdosCooInstanceMapOutput values. You can construct a concrete instance of `DdosCooInstanceMapInput` via:

DdosCooInstanceMap{ "key": DdosCooInstanceArgs{...} }

type DdosCooInstanceMapOutput

type DdosCooInstanceMapOutput struct{ *pulumi.OutputState }

func (DdosCooInstanceMapOutput) ElementType

func (DdosCooInstanceMapOutput) ElementType() reflect.Type

func (DdosCooInstanceMapOutput) MapIndex

func (DdosCooInstanceMapOutput) ToDdosCooInstanceMapOutput

func (o DdosCooInstanceMapOutput) ToDdosCooInstanceMapOutput() DdosCooInstanceMapOutput

func (DdosCooInstanceMapOutput) ToDdosCooInstanceMapOutputWithContext

func (o DdosCooInstanceMapOutput) ToDdosCooInstanceMapOutputWithContext(ctx context.Context) DdosCooInstanceMapOutput

func (DdosCooInstanceMapOutput) ToOutput added in v3.43.1

type DdosCooInstanceOutput

type DdosCooInstanceOutput struct{ *pulumi.OutputState }

func (DdosCooInstanceOutput) Bandwidth added in v3.27.0

Elastic defend bandwidth of the instance. This value must be larger than the base defend bandwidth. Valid values: 30, 60, 100, 300, 400, 500, 600. The unit is Gbps. Only support upgrade.

func (DdosCooInstanceOutput) BaseBandwidth added in v3.27.0

func (o DdosCooInstanceOutput) BaseBandwidth() pulumi.StringOutput

Base defend bandwidth of the instance. Valid values: 30, 60, 100, 300, 400, 500, 600. The unit is Gbps. Only support upgrade.

func (DdosCooInstanceOutput) DomainCount added in v3.27.0

func (o DdosCooInstanceOutput) DomainCount() pulumi.StringOutput

Domain retransmission rule count of the instance. At least 50. Increase 5 per step, such as 55, 60, 65. Only support upgrade.

func (DdosCooInstanceOutput) ElementType

func (DdosCooInstanceOutput) ElementType() reflect.Type

func (DdosCooInstanceOutput) Name added in v3.27.0

Name of the instance. This name can have a string of 1 to 63 characters.

func (DdosCooInstanceOutput) Period added in v3.27.0

The duration that you will buy Ddoscoo instance (in month). Valid values: [1~9], 12, 24, 36. Default to 1. At present, the provider does not support modify "period".

func (DdosCooInstanceOutput) PortCount added in v3.27.0

Port retransmission rule count of the instance. At least 50. Increase 5 per step, such as 55, 60, 65. Only support upgrade.

func (DdosCooInstanceOutput) ProductType added in v3.27.0

The product type for purchasing DDOSCOO instances used to differ different account type. Valid values:

  • ddoscoo: Only supports domestic account.
  • ddoscoo_intl: Only supports to international account. Default to ddoscoo.

func (DdosCooInstanceOutput) ServiceBandwidth added in v3.27.0

func (o DdosCooInstanceOutput) ServiceBandwidth() pulumi.StringOutput

Business bandwidth of the instance. At leaset 100. Increased 100 per step, such as 100, 200, 300. The unit is Mbps. Only support upgrade.

func (DdosCooInstanceOutput) ToDdosCooInstanceOutput

func (o DdosCooInstanceOutput) ToDdosCooInstanceOutput() DdosCooInstanceOutput

func (DdosCooInstanceOutput) ToDdosCooInstanceOutputWithContext

func (o DdosCooInstanceOutput) ToDdosCooInstanceOutputWithContext(ctx context.Context) DdosCooInstanceOutput

func (DdosCooInstanceOutput) ToOutput added in v3.43.1

type DdosCooInstanceState

type DdosCooInstanceState struct {
	// Elastic defend bandwidth of the instance. This value must be larger than the base defend bandwidth. Valid values: 30, 60, 100, 300, 400, 500, 600. The unit is Gbps. Only support upgrade.
	Bandwidth pulumi.StringPtrInput
	// Base defend bandwidth of the instance. Valid values: 30, 60, 100, 300, 400, 500, 600. The unit is Gbps. Only support upgrade.
	BaseBandwidth pulumi.StringPtrInput
	// Domain retransmission rule count of the instance. At least 50. Increase 5 per step, such as 55, 60, 65. Only support upgrade.
	DomainCount pulumi.StringPtrInput
	// Name of the instance. This name can have a string of 1 to 63 characters.
	Name pulumi.StringPtrInput
	// The duration that you will buy Ddoscoo instance (in month). Valid values: [1~9], 12, 24, 36. Default to 1. At present, the provider does not support modify "period".
	Period pulumi.IntPtrInput
	// Port retransmission rule count of the instance. At least 50. Increase 5 per step, such as 55, 60, 65. Only support upgrade.
	PortCount pulumi.StringPtrInput
	// The product type for purchasing DDOSCOO instances used to differ different account type. Valid values:
	// - ddoscoo: Only supports domestic account.
	// - ddoscoo_intl: Only supports to international account.
	//   Default to ddoscoo.
	ProductType pulumi.StringPtrInput
	// Business bandwidth of the instance. At leaset 100. Increased 100 per step, such as 100, 200, 300. The unit is Mbps. Only support upgrade.
	ServiceBandwidth pulumi.StringPtrInput
}

func (DdosCooInstanceState) ElementType

func (DdosCooInstanceState) ElementType() reflect.Type

type DomainResource added in v3.2.0

type DomainResource struct {
	pulumi.CustomResourceState

	// (Available since v1.207.2) The CNAME assigned to the domain name.
	Cname pulumi.StringOutput `pulumi:"cname"`
	// The domain name of the website that you want to add to the instance.
	Domain pulumi.StringOutput `pulumi:"domain"`
	// The advanced HTTPS settings. This parameter takes effect only when the value of ProxyType includes https. This parameter is a string that contains a JSON struct. The JSON struct includes the following fields:
	HttpsExt pulumi.StringOutput `pulumi:"httpsExt"`
	// A list of instance ID that you want to associate. If this parameter is empty, only the domain name of the website is added but no instance is associated with the website.
	// > **NOTE:** There is a potential diff error because of the order of `instanceIds` values indefinite. So, from version 1.161.0, `instanceIds` type has been updated as `set` from `list`, and you can use tolist to convert it to a list.
	InstanceIds pulumi.StringArrayOutput `pulumi:"instanceIds"`
	// Specifies whether to enable the OCSP feature. Default value: `false`. Valid values:
	OcspEnabled pulumi.BoolPtrOutput `pulumi:"ocspEnabled"`
	// Protocol type and port number information. See `proxyTypes` below.
	// > **NOTE:** From version 1.206.0, `proxyTypes` can be modified.
	ProxyTypes DomainResourceProxyTypeArrayOutput `pulumi:"proxyTypes"`
	// the IP address. This field is required and must be a string array.
	RealServers pulumi.StringArrayOutput `pulumi:"realServers"`
	// The address type of the origin server. Use the domain name of the origin server if you deploy proxies, such as Web Application Firewall (WAF), between the origin server and the Anti-DDoS Pro or Anti-DDoS Premium instance. If you use the domain name, you must enter the address of the proxy, such as the CNAME of WAF. Valid values:
	RsType pulumi.IntOutput `pulumi:"rsType"`
}

Provides a Anti-DDoS Pro Domain Resource resource.

For information about Anti-DDoS Pro Domain Resource and how to use it, see [What is Domain Resource](https://www.alibabacloud.com/help/en/ddos-protection/latest/api-ddoscoo-2020-01-01-createwebrule).

> **NOTE:** Available since v1.123.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		domain := "tf-example.alibaba.com"
		if param := cfg.Get("domain"); param != "" {
			domain = param
		}
		defaultDdosCooInstance, err := ddos.NewDdosCooInstance(ctx, "defaultDdosCooInstance", &ddos.DdosCooInstanceArgs{
			Bandwidth:        pulumi.String("30"),
			BaseBandwidth:    pulumi.String("30"),
			ServiceBandwidth: pulumi.String("100"),
			PortCount:        pulumi.String("50"),
			DomainCount:      pulumi.String("50"),
			Period:           pulumi.Int(1),
			ProductType:      pulumi.String("ddoscoo"),
		})
		if err != nil {
			return err
		}
		_, err = ddos.NewDomainResource(ctx, "defaultDomainResource", &ddos.DomainResourceArgs{
			Domain: pulumi.String(domain),
			RsType: pulumi.Int(0),
			InstanceIds: pulumi.StringArray{
				defaultDdosCooInstance.ID(),
			},
			RealServers: pulumi.StringArray{
				pulumi.String("177.167.32.11"),
			},
			HttpsExt: pulumi.String("{\"Http2\":1,\"Http2https\":0,\"Https2http\":0}"),
			ProxyTypes: ddos.DomainResourceProxyTypeArray{
				&ddos.DomainResourceProxyTypeArgs{
					ProxyPorts: pulumi.IntArray{
						pulumi.Int(443),
					},
					ProxyType: pulumi.String("https"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Anti-DDoS Pro Domain Resource can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ddos/domainResource:DomainResource example <domain>

```

func GetDomainResource added in v3.2.0

func GetDomainResource(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DomainResourceState, opts ...pulumi.ResourceOption) (*DomainResource, error)

GetDomainResource gets an existing DomainResource 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 NewDomainResource added in v3.2.0

func NewDomainResource(ctx *pulumi.Context,
	name string, args *DomainResourceArgs, opts ...pulumi.ResourceOption) (*DomainResource, error)

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

func (*DomainResource) ElementType added in v3.2.0

func (*DomainResource) ElementType() reflect.Type

func (*DomainResource) ToDomainResourceOutput added in v3.2.0

func (i *DomainResource) ToDomainResourceOutput() DomainResourceOutput

func (*DomainResource) ToDomainResourceOutputWithContext added in v3.2.0

func (i *DomainResource) ToDomainResourceOutputWithContext(ctx context.Context) DomainResourceOutput

func (*DomainResource) ToOutput added in v3.43.1

type DomainResourceArgs added in v3.2.0

type DomainResourceArgs struct {
	// The domain name of the website that you want to add to the instance.
	Domain pulumi.StringInput
	// The advanced HTTPS settings. This parameter takes effect only when the value of ProxyType includes https. This parameter is a string that contains a JSON struct. The JSON struct includes the following fields:
	HttpsExt pulumi.StringPtrInput
	// A list of instance ID that you want to associate. If this parameter is empty, only the domain name of the website is added but no instance is associated with the website.
	// > **NOTE:** There is a potential diff error because of the order of `instanceIds` values indefinite. So, from version 1.161.0, `instanceIds` type has been updated as `set` from `list`, and you can use tolist to convert it to a list.
	InstanceIds pulumi.StringArrayInput
	// Specifies whether to enable the OCSP feature. Default value: `false`. Valid values:
	OcspEnabled pulumi.BoolPtrInput
	// Protocol type and port number information. See `proxyTypes` below.
	// > **NOTE:** From version 1.206.0, `proxyTypes` can be modified.
	ProxyTypes DomainResourceProxyTypeArrayInput
	// the IP address. This field is required and must be a string array.
	RealServers pulumi.StringArrayInput
	// The address type of the origin server. Use the domain name of the origin server if you deploy proxies, such as Web Application Firewall (WAF), between the origin server and the Anti-DDoS Pro or Anti-DDoS Premium instance. If you use the domain name, you must enter the address of the proxy, such as the CNAME of WAF. Valid values:
	RsType pulumi.IntInput
}

The set of arguments for constructing a DomainResource resource.

func (DomainResourceArgs) ElementType added in v3.2.0

func (DomainResourceArgs) ElementType() reflect.Type

type DomainResourceArray added in v3.2.0

type DomainResourceArray []DomainResourceInput

func (DomainResourceArray) ElementType added in v3.2.0

func (DomainResourceArray) ElementType() reflect.Type

func (DomainResourceArray) ToDomainResourceArrayOutput added in v3.2.0

func (i DomainResourceArray) ToDomainResourceArrayOutput() DomainResourceArrayOutput

func (DomainResourceArray) ToDomainResourceArrayOutputWithContext added in v3.2.0

func (i DomainResourceArray) ToDomainResourceArrayOutputWithContext(ctx context.Context) DomainResourceArrayOutput

func (DomainResourceArray) ToOutput added in v3.43.1

type DomainResourceArrayInput added in v3.2.0

type DomainResourceArrayInput interface {
	pulumi.Input

	ToDomainResourceArrayOutput() DomainResourceArrayOutput
	ToDomainResourceArrayOutputWithContext(context.Context) DomainResourceArrayOutput
}

DomainResourceArrayInput is an input type that accepts DomainResourceArray and DomainResourceArrayOutput values. You can construct a concrete instance of `DomainResourceArrayInput` via:

DomainResourceArray{ DomainResourceArgs{...} }

type DomainResourceArrayOutput added in v3.2.0

type DomainResourceArrayOutput struct{ *pulumi.OutputState }

func (DomainResourceArrayOutput) ElementType added in v3.2.0

func (DomainResourceArrayOutput) ElementType() reflect.Type

func (DomainResourceArrayOutput) Index added in v3.2.0

func (DomainResourceArrayOutput) ToDomainResourceArrayOutput added in v3.2.0

func (o DomainResourceArrayOutput) ToDomainResourceArrayOutput() DomainResourceArrayOutput

func (DomainResourceArrayOutput) ToDomainResourceArrayOutputWithContext added in v3.2.0

func (o DomainResourceArrayOutput) ToDomainResourceArrayOutputWithContext(ctx context.Context) DomainResourceArrayOutput

func (DomainResourceArrayOutput) ToOutput added in v3.43.1

type DomainResourceInput added in v3.2.0

type DomainResourceInput interface {
	pulumi.Input

	ToDomainResourceOutput() DomainResourceOutput
	ToDomainResourceOutputWithContext(ctx context.Context) DomainResourceOutput
}

type DomainResourceMap added in v3.2.0

type DomainResourceMap map[string]DomainResourceInput

func (DomainResourceMap) ElementType added in v3.2.0

func (DomainResourceMap) ElementType() reflect.Type

func (DomainResourceMap) ToDomainResourceMapOutput added in v3.2.0

func (i DomainResourceMap) ToDomainResourceMapOutput() DomainResourceMapOutput

func (DomainResourceMap) ToDomainResourceMapOutputWithContext added in v3.2.0

func (i DomainResourceMap) ToDomainResourceMapOutputWithContext(ctx context.Context) DomainResourceMapOutput

func (DomainResourceMap) ToOutput added in v3.43.1

type DomainResourceMapInput added in v3.2.0

type DomainResourceMapInput interface {
	pulumi.Input

	ToDomainResourceMapOutput() DomainResourceMapOutput
	ToDomainResourceMapOutputWithContext(context.Context) DomainResourceMapOutput
}

DomainResourceMapInput is an input type that accepts DomainResourceMap and DomainResourceMapOutput values. You can construct a concrete instance of `DomainResourceMapInput` via:

DomainResourceMap{ "key": DomainResourceArgs{...} }

type DomainResourceMapOutput added in v3.2.0

type DomainResourceMapOutput struct{ *pulumi.OutputState }

func (DomainResourceMapOutput) ElementType added in v3.2.0

func (DomainResourceMapOutput) ElementType() reflect.Type

func (DomainResourceMapOutput) MapIndex added in v3.2.0

func (DomainResourceMapOutput) ToDomainResourceMapOutput added in v3.2.0

func (o DomainResourceMapOutput) ToDomainResourceMapOutput() DomainResourceMapOutput

func (DomainResourceMapOutput) ToDomainResourceMapOutputWithContext added in v3.2.0

func (o DomainResourceMapOutput) ToDomainResourceMapOutputWithContext(ctx context.Context) DomainResourceMapOutput

func (DomainResourceMapOutput) ToOutput added in v3.43.1

type DomainResourceOutput added in v3.2.0

type DomainResourceOutput struct{ *pulumi.OutputState }

func (DomainResourceOutput) Cname added in v3.40.0

(Available since v1.207.2) The CNAME assigned to the domain name.

func (DomainResourceOutput) Domain added in v3.27.0

The domain name of the website that you want to add to the instance.

func (DomainResourceOutput) ElementType added in v3.2.0

func (DomainResourceOutput) ElementType() reflect.Type

func (DomainResourceOutput) HttpsExt added in v3.27.0

The advanced HTTPS settings. This parameter takes effect only when the value of ProxyType includes https. This parameter is a string that contains a JSON struct. The JSON struct includes the following fields:

func (DomainResourceOutput) InstanceIds added in v3.27.0

A list of instance ID that you want to associate. If this parameter is empty, only the domain name of the website is added but no instance is associated with the website. > **NOTE:** There is a potential diff error because of the order of `instanceIds` values indefinite. So, from version 1.161.0, `instanceIds` type has been updated as `set` from `list`, and you can use tolist to convert it to a list.

func (DomainResourceOutput) OcspEnabled added in v3.42.0

func (o DomainResourceOutput) OcspEnabled() pulumi.BoolPtrOutput

Specifies whether to enable the OCSP feature. Default value: `false`. Valid values:

func (DomainResourceOutput) ProxyTypes added in v3.27.0

Protocol type and port number information. See `proxyTypes` below. > **NOTE:** From version 1.206.0, `proxyTypes` can be modified.

func (DomainResourceOutput) RealServers added in v3.27.0

the IP address. This field is required and must be a string array.

func (DomainResourceOutput) RsType added in v3.27.0

The address type of the origin server. Use the domain name of the origin server if you deploy proxies, such as Web Application Firewall (WAF), between the origin server and the Anti-DDoS Pro or Anti-DDoS Premium instance. If you use the domain name, you must enter the address of the proxy, such as the CNAME of WAF. Valid values:

func (DomainResourceOutput) ToDomainResourceOutput added in v3.2.0

func (o DomainResourceOutput) ToDomainResourceOutput() DomainResourceOutput

func (DomainResourceOutput) ToDomainResourceOutputWithContext added in v3.2.0

func (o DomainResourceOutput) ToDomainResourceOutputWithContext(ctx context.Context) DomainResourceOutput

func (DomainResourceOutput) ToOutput added in v3.43.1

type DomainResourceProxyType added in v3.2.0

type DomainResourceProxyType struct {
	// the port number. This field is required and must be an integer. **NOTE:** From version 1.206.0, `proxyPorts` can be modified.
	ProxyPorts []int `pulumi:"proxyPorts"`
	// the protocol type. This field is required and must be a string. Valid values: `http`, `https`, `websocket`, and `websockets`.
	ProxyType *string `pulumi:"proxyType"`
}

type DomainResourceProxyTypeArgs added in v3.2.0

type DomainResourceProxyTypeArgs struct {
	// the port number. This field is required and must be an integer. **NOTE:** From version 1.206.0, `proxyPorts` can be modified.
	ProxyPorts pulumi.IntArrayInput `pulumi:"proxyPorts"`
	// the protocol type. This field is required and must be a string. Valid values: `http`, `https`, `websocket`, and `websockets`.
	ProxyType pulumi.StringPtrInput `pulumi:"proxyType"`
}

func (DomainResourceProxyTypeArgs) ElementType added in v3.2.0

func (DomainResourceProxyTypeArgs) ToDomainResourceProxyTypeOutput added in v3.2.0

func (i DomainResourceProxyTypeArgs) ToDomainResourceProxyTypeOutput() DomainResourceProxyTypeOutput

func (DomainResourceProxyTypeArgs) ToDomainResourceProxyTypeOutputWithContext added in v3.2.0

func (i DomainResourceProxyTypeArgs) ToDomainResourceProxyTypeOutputWithContext(ctx context.Context) DomainResourceProxyTypeOutput

func (DomainResourceProxyTypeArgs) ToOutput added in v3.43.1

type DomainResourceProxyTypeArray added in v3.2.0

type DomainResourceProxyTypeArray []DomainResourceProxyTypeInput

func (DomainResourceProxyTypeArray) ElementType added in v3.2.0

func (DomainResourceProxyTypeArray) ToDomainResourceProxyTypeArrayOutput added in v3.2.0

func (i DomainResourceProxyTypeArray) ToDomainResourceProxyTypeArrayOutput() DomainResourceProxyTypeArrayOutput

func (DomainResourceProxyTypeArray) ToDomainResourceProxyTypeArrayOutputWithContext added in v3.2.0

func (i DomainResourceProxyTypeArray) ToDomainResourceProxyTypeArrayOutputWithContext(ctx context.Context) DomainResourceProxyTypeArrayOutput

func (DomainResourceProxyTypeArray) ToOutput added in v3.43.1

type DomainResourceProxyTypeArrayInput added in v3.2.0

type DomainResourceProxyTypeArrayInput interface {
	pulumi.Input

	ToDomainResourceProxyTypeArrayOutput() DomainResourceProxyTypeArrayOutput
	ToDomainResourceProxyTypeArrayOutputWithContext(context.Context) DomainResourceProxyTypeArrayOutput
}

DomainResourceProxyTypeArrayInput is an input type that accepts DomainResourceProxyTypeArray and DomainResourceProxyTypeArrayOutput values. You can construct a concrete instance of `DomainResourceProxyTypeArrayInput` via:

DomainResourceProxyTypeArray{ DomainResourceProxyTypeArgs{...} }

type DomainResourceProxyTypeArrayOutput added in v3.2.0

type DomainResourceProxyTypeArrayOutput struct{ *pulumi.OutputState }

func (DomainResourceProxyTypeArrayOutput) ElementType added in v3.2.0

func (DomainResourceProxyTypeArrayOutput) Index added in v3.2.0

func (DomainResourceProxyTypeArrayOutput) ToDomainResourceProxyTypeArrayOutput added in v3.2.0

func (o DomainResourceProxyTypeArrayOutput) ToDomainResourceProxyTypeArrayOutput() DomainResourceProxyTypeArrayOutput

func (DomainResourceProxyTypeArrayOutput) ToDomainResourceProxyTypeArrayOutputWithContext added in v3.2.0

func (o DomainResourceProxyTypeArrayOutput) ToDomainResourceProxyTypeArrayOutputWithContext(ctx context.Context) DomainResourceProxyTypeArrayOutput

func (DomainResourceProxyTypeArrayOutput) ToOutput added in v3.43.1

type DomainResourceProxyTypeInput added in v3.2.0

type DomainResourceProxyTypeInput interface {
	pulumi.Input

	ToDomainResourceProxyTypeOutput() DomainResourceProxyTypeOutput
	ToDomainResourceProxyTypeOutputWithContext(context.Context) DomainResourceProxyTypeOutput
}

DomainResourceProxyTypeInput is an input type that accepts DomainResourceProxyTypeArgs and DomainResourceProxyTypeOutput values. You can construct a concrete instance of `DomainResourceProxyTypeInput` via:

DomainResourceProxyTypeArgs{...}

type DomainResourceProxyTypeOutput added in v3.2.0

type DomainResourceProxyTypeOutput struct{ *pulumi.OutputState }

func (DomainResourceProxyTypeOutput) ElementType added in v3.2.0

func (DomainResourceProxyTypeOutput) ProxyPorts added in v3.2.0

the port number. This field is required and must be an integer. **NOTE:** From version 1.206.0, `proxyPorts` can be modified.

func (DomainResourceProxyTypeOutput) ProxyType added in v3.2.0

the protocol type. This field is required and must be a string. Valid values: `http`, `https`, `websocket`, and `websockets`.

func (DomainResourceProxyTypeOutput) ToDomainResourceProxyTypeOutput added in v3.2.0

func (o DomainResourceProxyTypeOutput) ToDomainResourceProxyTypeOutput() DomainResourceProxyTypeOutput

func (DomainResourceProxyTypeOutput) ToDomainResourceProxyTypeOutputWithContext added in v3.2.0

func (o DomainResourceProxyTypeOutput) ToDomainResourceProxyTypeOutputWithContext(ctx context.Context) DomainResourceProxyTypeOutput

func (DomainResourceProxyTypeOutput) ToOutput added in v3.43.1

type DomainResourceState added in v3.2.0

type DomainResourceState struct {
	// (Available since v1.207.2) The CNAME assigned to the domain name.
	Cname pulumi.StringPtrInput
	// The domain name of the website that you want to add to the instance.
	Domain pulumi.StringPtrInput
	// The advanced HTTPS settings. This parameter takes effect only when the value of ProxyType includes https. This parameter is a string that contains a JSON struct. The JSON struct includes the following fields:
	HttpsExt pulumi.StringPtrInput
	// A list of instance ID that you want to associate. If this parameter is empty, only the domain name of the website is added but no instance is associated with the website.
	// > **NOTE:** There is a potential diff error because of the order of `instanceIds` values indefinite. So, from version 1.161.0, `instanceIds` type has been updated as `set` from `list`, and you can use tolist to convert it to a list.
	InstanceIds pulumi.StringArrayInput
	// Specifies whether to enable the OCSP feature. Default value: `false`. Valid values:
	OcspEnabled pulumi.BoolPtrInput
	// Protocol type and port number information. See `proxyTypes` below.
	// > **NOTE:** From version 1.206.0, `proxyTypes` can be modified.
	ProxyTypes DomainResourceProxyTypeArrayInput
	// the IP address. This field is required and must be a string array.
	RealServers pulumi.StringArrayInput
	// The address type of the origin server. Use the domain name of the origin server if you deploy proxies, such as Web Application Firewall (WAF), between the origin server and the Anti-DDoS Pro or Anti-DDoS Premium instance. If you use the domain name, you must enter the address of the proxy, such as the CNAME of WAF. Valid values:
	RsType pulumi.IntPtrInput
}

func (DomainResourceState) ElementType added in v3.2.0

func (DomainResourceState) ElementType() reflect.Type

type GetDdosBgpInstancesArgs

type GetDdosBgpInstancesArgs struct {
	// A list of instance IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by the instance name.
	NameRegex *string `pulumi:"nameRegex"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getDdosBgpInstances.

type GetDdosBgpInstancesInstance

type GetDdosBgpInstancesInstance struct {
	// The instance's elastic defend bandwidth.
	Bandwidth int `pulumi:"bandwidth"`
	// The instance's base defend bandwidth.
	BaseBandwidth int `pulumi:"baseBandwidth"`
	// The instance's id.
	Id string `pulumi:"id"`
	// The instance's count of ip config.
	IpCount int `pulumi:"ipCount"`
	// The instance's IP version.
	IpType string `pulumi:"ipType"`
	// The instance's remark.
	Name string `pulumi:"name"`
	// Normal defend bandwidth of the instance. The unit is Gbps.
	NormalBandwidth int `pulumi:"normalBandwidth"`
	// A region of instance.
	Region string `pulumi:"region"`
	// The instance's type.
	Type string `pulumi:"type"`
}

type GetDdosBgpInstancesInstanceArgs

type GetDdosBgpInstancesInstanceArgs struct {
	// The instance's elastic defend bandwidth.
	Bandwidth pulumi.IntInput `pulumi:"bandwidth"`
	// The instance's base defend bandwidth.
	BaseBandwidth pulumi.IntInput `pulumi:"baseBandwidth"`
	// The instance's id.
	Id pulumi.StringInput `pulumi:"id"`
	// The instance's count of ip config.
	IpCount pulumi.IntInput `pulumi:"ipCount"`
	// The instance's IP version.
	IpType pulumi.StringInput `pulumi:"ipType"`
	// The instance's remark.
	Name pulumi.StringInput `pulumi:"name"`
	// Normal defend bandwidth of the instance. The unit is Gbps.
	NormalBandwidth pulumi.IntInput `pulumi:"normalBandwidth"`
	// A region of instance.
	Region pulumi.StringInput `pulumi:"region"`
	// The instance's type.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetDdosBgpInstancesInstanceArgs) ElementType

func (GetDdosBgpInstancesInstanceArgs) ToGetDdosBgpInstancesInstanceOutput

func (i GetDdosBgpInstancesInstanceArgs) ToGetDdosBgpInstancesInstanceOutput() GetDdosBgpInstancesInstanceOutput

func (GetDdosBgpInstancesInstanceArgs) ToGetDdosBgpInstancesInstanceOutputWithContext

func (i GetDdosBgpInstancesInstanceArgs) ToGetDdosBgpInstancesInstanceOutputWithContext(ctx context.Context) GetDdosBgpInstancesInstanceOutput

func (GetDdosBgpInstancesInstanceArgs) ToOutput added in v3.43.1

type GetDdosBgpInstancesInstanceArray

type GetDdosBgpInstancesInstanceArray []GetDdosBgpInstancesInstanceInput

func (GetDdosBgpInstancesInstanceArray) ElementType

func (GetDdosBgpInstancesInstanceArray) ToGetDdosBgpInstancesInstanceArrayOutput

func (i GetDdosBgpInstancesInstanceArray) ToGetDdosBgpInstancesInstanceArrayOutput() GetDdosBgpInstancesInstanceArrayOutput

func (GetDdosBgpInstancesInstanceArray) ToGetDdosBgpInstancesInstanceArrayOutputWithContext

func (i GetDdosBgpInstancesInstanceArray) ToGetDdosBgpInstancesInstanceArrayOutputWithContext(ctx context.Context) GetDdosBgpInstancesInstanceArrayOutput

func (GetDdosBgpInstancesInstanceArray) ToOutput added in v3.43.1

type GetDdosBgpInstancesInstanceArrayInput

type GetDdosBgpInstancesInstanceArrayInput interface {
	pulumi.Input

	ToGetDdosBgpInstancesInstanceArrayOutput() GetDdosBgpInstancesInstanceArrayOutput
	ToGetDdosBgpInstancesInstanceArrayOutputWithContext(context.Context) GetDdosBgpInstancesInstanceArrayOutput
}

GetDdosBgpInstancesInstanceArrayInput is an input type that accepts GetDdosBgpInstancesInstanceArray and GetDdosBgpInstancesInstanceArrayOutput values. You can construct a concrete instance of `GetDdosBgpInstancesInstanceArrayInput` via:

GetDdosBgpInstancesInstanceArray{ GetDdosBgpInstancesInstanceArgs{...} }

type GetDdosBgpInstancesInstanceArrayOutput

type GetDdosBgpInstancesInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetDdosBgpInstancesInstanceArrayOutput) ElementType

func (GetDdosBgpInstancesInstanceArrayOutput) Index

func (GetDdosBgpInstancesInstanceArrayOutput) ToGetDdosBgpInstancesInstanceArrayOutput

func (o GetDdosBgpInstancesInstanceArrayOutput) ToGetDdosBgpInstancesInstanceArrayOutput() GetDdosBgpInstancesInstanceArrayOutput

func (GetDdosBgpInstancesInstanceArrayOutput) ToGetDdosBgpInstancesInstanceArrayOutputWithContext

func (o GetDdosBgpInstancesInstanceArrayOutput) ToGetDdosBgpInstancesInstanceArrayOutputWithContext(ctx context.Context) GetDdosBgpInstancesInstanceArrayOutput

func (GetDdosBgpInstancesInstanceArrayOutput) ToOutput added in v3.43.1

type GetDdosBgpInstancesInstanceInput

type GetDdosBgpInstancesInstanceInput interface {
	pulumi.Input

	ToGetDdosBgpInstancesInstanceOutput() GetDdosBgpInstancesInstanceOutput
	ToGetDdosBgpInstancesInstanceOutputWithContext(context.Context) GetDdosBgpInstancesInstanceOutput
}

GetDdosBgpInstancesInstanceInput is an input type that accepts GetDdosBgpInstancesInstanceArgs and GetDdosBgpInstancesInstanceOutput values. You can construct a concrete instance of `GetDdosBgpInstancesInstanceInput` via:

GetDdosBgpInstancesInstanceArgs{...}

type GetDdosBgpInstancesInstanceOutput

type GetDdosBgpInstancesInstanceOutput struct{ *pulumi.OutputState }

func (GetDdosBgpInstancesInstanceOutput) Bandwidth

The instance's elastic defend bandwidth.

func (GetDdosBgpInstancesInstanceOutput) BaseBandwidth

The instance's base defend bandwidth.

func (GetDdosBgpInstancesInstanceOutput) ElementType

func (GetDdosBgpInstancesInstanceOutput) Id

The instance's id.

func (GetDdosBgpInstancesInstanceOutput) IpCount

The instance's count of ip config.

func (GetDdosBgpInstancesInstanceOutput) IpType

The instance's IP version.

func (GetDdosBgpInstancesInstanceOutput) Name

The instance's remark.

func (GetDdosBgpInstancesInstanceOutput) NormalBandwidth added in v3.29.0

Normal defend bandwidth of the instance. The unit is Gbps.

func (GetDdosBgpInstancesInstanceOutput) Region

A region of instance.

func (GetDdosBgpInstancesInstanceOutput) ToGetDdosBgpInstancesInstanceOutput

func (o GetDdosBgpInstancesInstanceOutput) ToGetDdosBgpInstancesInstanceOutput() GetDdosBgpInstancesInstanceOutput

func (GetDdosBgpInstancesInstanceOutput) ToGetDdosBgpInstancesInstanceOutputWithContext

func (o GetDdosBgpInstancesInstanceOutput) ToGetDdosBgpInstancesInstanceOutputWithContext(ctx context.Context) GetDdosBgpInstancesInstanceOutput

func (GetDdosBgpInstancesInstanceOutput) ToOutput added in v3.43.1

func (GetDdosBgpInstancesInstanceOutput) Type

The instance's type.

type GetDdosBgpInstancesOutputArgs added in v3.9.0

type GetDdosBgpInstancesOutputArgs struct {
	// A list of instance IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by the instance name.
	NameRegex pulumi.StringPtrInput `pulumi:"nameRegex"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getDdosBgpInstances.

func (GetDdosBgpInstancesOutputArgs) ElementType added in v3.9.0

type GetDdosBgpInstancesResult

type GetDdosBgpInstancesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of instance IDs.
	Ids []string `pulumi:"ids"`
	// A list of apis. Each element contains the following attributes:
	Instances []GetDdosBgpInstancesInstance `pulumi:"instances"`
	NameRegex *string                       `pulumi:"nameRegex"`
	// A list of instance names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of values returned by getDdosBgpInstances.

func GetDdosBgpInstances

func GetDdosBgpInstances(ctx *pulumi.Context, args *GetDdosBgpInstancesArgs, opts ...pulumi.InvokeOption) (*GetDdosBgpInstancesResult, error)

This data source provides a list of Anti-DDoS Advanced instances in an Alibaba Cloud account according to the specified filters.

> **NOTE:** Available in 1.183.0+ .

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ddos.GetDdosBgpInstances(ctx, &ddos.GetDdosBgpInstancesArgs{
			NameRegex: pulumi.StringRef("^ddosbgp"),
		}, nil)
		if err != nil {
			return err
		}
		var splat0 []interface{}
		for _, val0 := range alicloud_ddosbgp_instances.Instance {
			splat0 = append(splat0, val0.Id)
		}
		ctx.Export("instance", splat0)
		return nil
	})
}

```

type GetDdosBgpInstancesResultOutput added in v3.9.0

type GetDdosBgpInstancesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDdosBgpInstances.

func GetDdosBgpInstancesOutput added in v3.9.0

func (GetDdosBgpInstancesResultOutput) ElementType added in v3.9.0

func (GetDdosBgpInstancesResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetDdosBgpInstancesResultOutput) Ids added in v3.9.0

A list of instance IDs.

func (GetDdosBgpInstancesResultOutput) Instances added in v3.9.0

A list of apis. Each element contains the following attributes:

func (GetDdosBgpInstancesResultOutput) NameRegex added in v3.9.0

func (GetDdosBgpInstancesResultOutput) Names added in v3.9.0

A list of instance names.

func (GetDdosBgpInstancesResultOutput) OutputFile added in v3.9.0

func (GetDdosBgpInstancesResultOutput) ToGetDdosBgpInstancesResultOutput added in v3.9.0

func (o GetDdosBgpInstancesResultOutput) ToGetDdosBgpInstancesResultOutput() GetDdosBgpInstancesResultOutput

func (GetDdosBgpInstancesResultOutput) ToGetDdosBgpInstancesResultOutputWithContext added in v3.9.0

func (o GetDdosBgpInstancesResultOutput) ToGetDdosBgpInstancesResultOutputWithContext(ctx context.Context) GetDdosBgpInstancesResultOutput

func (GetDdosBgpInstancesResultOutput) ToOutput added in v3.43.1

type GetDdosBgpIpsArgs added in v3.28.0

type GetDdosBgpIpsArgs struct {
	// A list of Ip IDs.
	Ids []string `pulumi:"ids"`
	// The ID of the native protection enterprise instance to be operated.
	InstanceId string `pulumi:"instanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
	PageNumber *int    `pulumi:"pageNumber"`
	PageSize   *int    `pulumi:"pageSize"`
	// The product name. Valid Value:`ECS`, `SLB`, `EIP`, `WAF`.
	ProductName *string `pulumi:"productName"`
	// The current state of the IP address.
	Status *string `pulumi:"status"`
}

A collection of arguments for invoking getDdosBgpIps.

type GetDdosBgpIpsIp added in v3.28.0

type GetDdosBgpIpsIp struct {
	// The ID of the Ip. The value formats as `<instance_id>:<ip>`.
	Id string `pulumi:"id"`
	// The ID of the native protection enterprise instance to be operated.
	InstanceId string `pulumi:"instanceId"`
	// The IP address.
	Ip string `pulumi:"ip"`
	// The type of cloud asset to which the IP address belongs.
	Product string `pulumi:"product"`
	// The current state of the IP address.
	Status string `pulumi:"status"`
}

type GetDdosBgpIpsIpArgs added in v3.28.0

type GetDdosBgpIpsIpArgs struct {
	// The ID of the Ip. The value formats as `<instance_id>:<ip>`.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the native protection enterprise instance to be operated.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The IP address.
	Ip pulumi.StringInput `pulumi:"ip"`
	// The type of cloud asset to which the IP address belongs.
	Product pulumi.StringInput `pulumi:"product"`
	// The current state of the IP address.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetDdosBgpIpsIpArgs) ElementType added in v3.28.0

func (GetDdosBgpIpsIpArgs) ElementType() reflect.Type

func (GetDdosBgpIpsIpArgs) ToGetDdosBgpIpsIpOutput added in v3.28.0

func (i GetDdosBgpIpsIpArgs) ToGetDdosBgpIpsIpOutput() GetDdosBgpIpsIpOutput

func (GetDdosBgpIpsIpArgs) ToGetDdosBgpIpsIpOutputWithContext added in v3.28.0

func (i GetDdosBgpIpsIpArgs) ToGetDdosBgpIpsIpOutputWithContext(ctx context.Context) GetDdosBgpIpsIpOutput

func (GetDdosBgpIpsIpArgs) ToOutput added in v3.43.1

type GetDdosBgpIpsIpArray added in v3.28.0

type GetDdosBgpIpsIpArray []GetDdosBgpIpsIpInput

func (GetDdosBgpIpsIpArray) ElementType added in v3.28.0

func (GetDdosBgpIpsIpArray) ElementType() reflect.Type

func (GetDdosBgpIpsIpArray) ToGetDdosBgpIpsIpArrayOutput added in v3.28.0

func (i GetDdosBgpIpsIpArray) ToGetDdosBgpIpsIpArrayOutput() GetDdosBgpIpsIpArrayOutput

func (GetDdosBgpIpsIpArray) ToGetDdosBgpIpsIpArrayOutputWithContext added in v3.28.0

func (i GetDdosBgpIpsIpArray) ToGetDdosBgpIpsIpArrayOutputWithContext(ctx context.Context) GetDdosBgpIpsIpArrayOutput

func (GetDdosBgpIpsIpArray) ToOutput added in v3.43.1

type GetDdosBgpIpsIpArrayInput added in v3.28.0

type GetDdosBgpIpsIpArrayInput interface {
	pulumi.Input

	ToGetDdosBgpIpsIpArrayOutput() GetDdosBgpIpsIpArrayOutput
	ToGetDdosBgpIpsIpArrayOutputWithContext(context.Context) GetDdosBgpIpsIpArrayOutput
}

GetDdosBgpIpsIpArrayInput is an input type that accepts GetDdosBgpIpsIpArray and GetDdosBgpIpsIpArrayOutput values. You can construct a concrete instance of `GetDdosBgpIpsIpArrayInput` via:

GetDdosBgpIpsIpArray{ GetDdosBgpIpsIpArgs{...} }

type GetDdosBgpIpsIpArrayOutput added in v3.28.0

type GetDdosBgpIpsIpArrayOutput struct{ *pulumi.OutputState }

func (GetDdosBgpIpsIpArrayOutput) ElementType added in v3.28.0

func (GetDdosBgpIpsIpArrayOutput) ElementType() reflect.Type

func (GetDdosBgpIpsIpArrayOutput) Index added in v3.28.0

func (GetDdosBgpIpsIpArrayOutput) ToGetDdosBgpIpsIpArrayOutput added in v3.28.0

func (o GetDdosBgpIpsIpArrayOutput) ToGetDdosBgpIpsIpArrayOutput() GetDdosBgpIpsIpArrayOutput

func (GetDdosBgpIpsIpArrayOutput) ToGetDdosBgpIpsIpArrayOutputWithContext added in v3.28.0

func (o GetDdosBgpIpsIpArrayOutput) ToGetDdosBgpIpsIpArrayOutputWithContext(ctx context.Context) GetDdosBgpIpsIpArrayOutput

func (GetDdosBgpIpsIpArrayOutput) ToOutput added in v3.43.1

type GetDdosBgpIpsIpInput added in v3.28.0

type GetDdosBgpIpsIpInput interface {
	pulumi.Input

	ToGetDdosBgpIpsIpOutput() GetDdosBgpIpsIpOutput
	ToGetDdosBgpIpsIpOutputWithContext(context.Context) GetDdosBgpIpsIpOutput
}

GetDdosBgpIpsIpInput is an input type that accepts GetDdosBgpIpsIpArgs and GetDdosBgpIpsIpOutput values. You can construct a concrete instance of `GetDdosBgpIpsIpInput` via:

GetDdosBgpIpsIpArgs{...}

type GetDdosBgpIpsIpOutput added in v3.28.0

type GetDdosBgpIpsIpOutput struct{ *pulumi.OutputState }

func (GetDdosBgpIpsIpOutput) ElementType added in v3.28.0

func (GetDdosBgpIpsIpOutput) ElementType() reflect.Type

func (GetDdosBgpIpsIpOutput) Id added in v3.28.0

The ID of the Ip. The value formats as `<instance_id>:<ip>`.

func (GetDdosBgpIpsIpOutput) InstanceId added in v3.28.0

func (o GetDdosBgpIpsIpOutput) InstanceId() pulumi.StringOutput

The ID of the native protection enterprise instance to be operated.

func (GetDdosBgpIpsIpOutput) Ip added in v3.28.0

The IP address.

func (GetDdosBgpIpsIpOutput) Product added in v3.28.0

The type of cloud asset to which the IP address belongs.

func (GetDdosBgpIpsIpOutput) Status added in v3.28.0

The current state of the IP address.

func (GetDdosBgpIpsIpOutput) ToGetDdosBgpIpsIpOutput added in v3.28.0

func (o GetDdosBgpIpsIpOutput) ToGetDdosBgpIpsIpOutput() GetDdosBgpIpsIpOutput

func (GetDdosBgpIpsIpOutput) ToGetDdosBgpIpsIpOutputWithContext added in v3.28.0

func (o GetDdosBgpIpsIpOutput) ToGetDdosBgpIpsIpOutputWithContext(ctx context.Context) GetDdosBgpIpsIpOutput

func (GetDdosBgpIpsIpOutput) ToOutput added in v3.43.1

type GetDdosBgpIpsOutputArgs added in v3.28.0

type GetDdosBgpIpsOutputArgs struct {
	// A list of Ip IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The ID of the native protection enterprise instance to be operated.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	PageNumber pulumi.IntPtrInput    `pulumi:"pageNumber"`
	PageSize   pulumi.IntPtrInput    `pulumi:"pageSize"`
	// The product name. Valid Value:`ECS`, `SLB`, `EIP`, `WAF`.
	ProductName pulumi.StringPtrInput `pulumi:"productName"`
	// The current state of the IP address.
	Status pulumi.StringPtrInput `pulumi:"status"`
}

A collection of arguments for invoking getDdosBgpIps.

func (GetDdosBgpIpsOutputArgs) ElementType added in v3.28.0

func (GetDdosBgpIpsOutputArgs) ElementType() reflect.Type

type GetDdosBgpIpsResult added in v3.28.0

type GetDdosBgpIpsResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id          string            `pulumi:"id"`
	Ids         []string          `pulumi:"ids"`
	InstanceId  string            `pulumi:"instanceId"`
	Ips         []GetDdosBgpIpsIp `pulumi:"ips"`
	OutputFile  *string           `pulumi:"outputFile"`
	PageNumber  *int              `pulumi:"pageNumber"`
	PageSize    *int              `pulumi:"pageSize"`
	ProductName *string           `pulumi:"productName"`
	Status      *string           `pulumi:"status"`
}

A collection of values returned by getDdosBgpIps.

func GetDdosBgpIps added in v3.28.0

func GetDdosBgpIps(ctx *pulumi.Context, args *GetDdosBgpIpsArgs, opts ...pulumi.InvokeOption) (*GetDdosBgpIpsResult, error)

This data source provides the Ddos Bgp Ips of the current Alibaba Cloud user.

> **NOTE:** Available in v1.180.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := ddos.GetDdosBgpIps(ctx, &ddos.GetDdosBgpIpsArgs{
			InstanceId: "example_value",
			Ids: []string{
				"example_value-1",
				"example_value-2",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ddosbgpIpId1", ids.Ips[0].Id)
		return nil
	})
}

```

type GetDdosBgpIpsResultOutput added in v3.28.0

type GetDdosBgpIpsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDdosBgpIps.

func GetDdosBgpIpsOutput added in v3.28.0

func GetDdosBgpIpsOutput(ctx *pulumi.Context, args GetDdosBgpIpsOutputArgs, opts ...pulumi.InvokeOption) GetDdosBgpIpsResultOutput

func (GetDdosBgpIpsResultOutput) ElementType added in v3.28.0

func (GetDdosBgpIpsResultOutput) ElementType() reflect.Type

func (GetDdosBgpIpsResultOutput) Id added in v3.28.0

The provider-assigned unique ID for this managed resource.

func (GetDdosBgpIpsResultOutput) Ids added in v3.28.0

func (GetDdosBgpIpsResultOutput) InstanceId added in v3.28.0

func (GetDdosBgpIpsResultOutput) Ips added in v3.28.0

func (GetDdosBgpIpsResultOutput) OutputFile added in v3.28.0

func (GetDdosBgpIpsResultOutput) PageNumber added in v3.28.0

func (GetDdosBgpIpsResultOutput) PageSize added in v3.28.0

func (GetDdosBgpIpsResultOutput) ProductName added in v3.28.0

func (GetDdosBgpIpsResultOutput) Status added in v3.28.0

func (GetDdosBgpIpsResultOutput) ToGetDdosBgpIpsResultOutput added in v3.28.0

func (o GetDdosBgpIpsResultOutput) ToGetDdosBgpIpsResultOutput() GetDdosBgpIpsResultOutput

func (GetDdosBgpIpsResultOutput) ToGetDdosBgpIpsResultOutputWithContext added in v3.28.0

func (o GetDdosBgpIpsResultOutput) ToGetDdosBgpIpsResultOutputWithContext(ctx context.Context) GetDdosBgpIpsResultOutput

func (GetDdosBgpIpsResultOutput) ToOutput added in v3.43.1

type GetDdosCooDomainResourcesArgs added in v3.2.0

type GetDdosCooDomainResourcesArgs struct {
	// A list of Domain Resource IDs.
	Ids []string `pulumi:"ids"`
	// A list ID of instance that you want to associate.
	InstanceIds []string `pulumi:"instanceIds"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
	// Match the pattern.
	QueryDomainPattern *string `pulumi:"queryDomainPattern"`
}

A collection of arguments for invoking getDdosCooDomainResources.

type GetDdosCooDomainResourcesOutputArgs added in v3.9.0

type GetDdosCooDomainResourcesOutputArgs struct {
	// A list of Domain Resource IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A list ID of instance that you want to associate.
	InstanceIds pulumi.StringArrayInput `pulumi:"instanceIds"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// Match the pattern.
	QueryDomainPattern pulumi.StringPtrInput `pulumi:"queryDomainPattern"`
}

A collection of arguments for invoking getDdosCooDomainResources.

func (GetDdosCooDomainResourcesOutputArgs) ElementType added in v3.9.0

type GetDdosCooDomainResourcesResource added in v3.2.0

type GetDdosCooDomainResourcesResource struct {
	// The IP addresses in the blacklist for the domain name.
	BlackLists []string `pulumi:"blackLists"`
	// Whether frequency control guard (CC guard) is enabled. Values: `True`: Opened, `False`: Not enabled.
	CcEnabled bool `pulumi:"ccEnabled"`
	// Whether custom frequency control guard (CC guard) is enabled. Values: `True`: Opened, `False`: Not enabled.
	CcRuleEnabled bool `pulumi:"ccRuleEnabled"`
	// The mode of the Frequency Control policy.
	CcTemplate string `pulumi:"ccTemplate"`
	// The name of the certificate.
	CertName string `pulumi:"certName"`
	// The domain name of the website that you want to add to the instance.
	Domain string `pulumi:"domain"`
	// Whether Http2.0 is enabled.
	Http2Enable bool `pulumi:"http2Enable"`
	// The advanced HTTPS settings.
	HttpsExt string `pulumi:"httpsExt"`
	// The ID of the Domain Resource.
	Id string `pulumi:"id"`
	// A list ID of instance that you want to associate.
	InstanceIds []string `pulumi:"instanceIds"`
	// The type of backload algorithm.
	PolicyMode string `pulumi:"policyMode"`
	// Whether the website service forwarding rules have been turned on.
	ProxyEnabled bool `pulumi:"proxyEnabled"`
	// Protocol type and port number information.
	ProxyTypes []GetDdosCooDomainResourcesResourceProxyType `pulumi:"proxyTypes"`
	// Server address information of the source station.
	RealServers []string `pulumi:"realServers"`
	// Server address type.
	RsType int `pulumi:"rsType"`
	// The type of the cipher suite.
	SslCiphers string `pulumi:"sslCiphers"`
	// The version of the TLS protocol.
	SslProtocols string `pulumi:"sslProtocols"`
	// The IP addresses in the whitelist for the domain name.
	WhiteLists []string `pulumi:"whiteLists"`
}

type GetDdosCooDomainResourcesResourceArgs added in v3.2.0

type GetDdosCooDomainResourcesResourceArgs struct {
	// The IP addresses in the blacklist for the domain name.
	BlackLists pulumi.StringArrayInput `pulumi:"blackLists"`
	// Whether frequency control guard (CC guard) is enabled. Values: `True`: Opened, `False`: Not enabled.
	CcEnabled pulumi.BoolInput `pulumi:"ccEnabled"`
	// Whether custom frequency control guard (CC guard) is enabled. Values: `True`: Opened, `False`: Not enabled.
	CcRuleEnabled pulumi.BoolInput `pulumi:"ccRuleEnabled"`
	// The mode of the Frequency Control policy.
	CcTemplate pulumi.StringInput `pulumi:"ccTemplate"`
	// The name of the certificate.
	CertName pulumi.StringInput `pulumi:"certName"`
	// The domain name of the website that you want to add to the instance.
	Domain pulumi.StringInput `pulumi:"domain"`
	// Whether Http2.0 is enabled.
	Http2Enable pulumi.BoolInput `pulumi:"http2Enable"`
	// The advanced HTTPS settings.
	HttpsExt pulumi.StringInput `pulumi:"httpsExt"`
	// The ID of the Domain Resource.
	Id pulumi.StringInput `pulumi:"id"`
	// A list ID of instance that you want to associate.
	InstanceIds pulumi.StringArrayInput `pulumi:"instanceIds"`
	// The type of backload algorithm.
	PolicyMode pulumi.StringInput `pulumi:"policyMode"`
	// Whether the website service forwarding rules have been turned on.
	ProxyEnabled pulumi.BoolInput `pulumi:"proxyEnabled"`
	// Protocol type and port number information.
	ProxyTypes GetDdosCooDomainResourcesResourceProxyTypeArrayInput `pulumi:"proxyTypes"`
	// Server address information of the source station.
	RealServers pulumi.StringArrayInput `pulumi:"realServers"`
	// Server address type.
	RsType pulumi.IntInput `pulumi:"rsType"`
	// The type of the cipher suite.
	SslCiphers pulumi.StringInput `pulumi:"sslCiphers"`
	// The version of the TLS protocol.
	SslProtocols pulumi.StringInput `pulumi:"sslProtocols"`
	// The IP addresses in the whitelist for the domain name.
	WhiteLists pulumi.StringArrayInput `pulumi:"whiteLists"`
}

func (GetDdosCooDomainResourcesResourceArgs) ElementType added in v3.2.0

func (GetDdosCooDomainResourcesResourceArgs) ToGetDdosCooDomainResourcesResourceOutput added in v3.2.0

func (i GetDdosCooDomainResourcesResourceArgs) ToGetDdosCooDomainResourcesResourceOutput() GetDdosCooDomainResourcesResourceOutput

func (GetDdosCooDomainResourcesResourceArgs) ToGetDdosCooDomainResourcesResourceOutputWithContext added in v3.2.0

func (i GetDdosCooDomainResourcesResourceArgs) ToGetDdosCooDomainResourcesResourceOutputWithContext(ctx context.Context) GetDdosCooDomainResourcesResourceOutput

func (GetDdosCooDomainResourcesResourceArgs) ToOutput added in v3.43.1

type GetDdosCooDomainResourcesResourceArray added in v3.2.0

type GetDdosCooDomainResourcesResourceArray []GetDdosCooDomainResourcesResourceInput

func (GetDdosCooDomainResourcesResourceArray) ElementType added in v3.2.0

func (GetDdosCooDomainResourcesResourceArray) ToGetDdosCooDomainResourcesResourceArrayOutput added in v3.2.0

func (i GetDdosCooDomainResourcesResourceArray) ToGetDdosCooDomainResourcesResourceArrayOutput() GetDdosCooDomainResourcesResourceArrayOutput

func (GetDdosCooDomainResourcesResourceArray) ToGetDdosCooDomainResourcesResourceArrayOutputWithContext added in v3.2.0

func (i GetDdosCooDomainResourcesResourceArray) ToGetDdosCooDomainResourcesResourceArrayOutputWithContext(ctx context.Context) GetDdosCooDomainResourcesResourceArrayOutput

func (GetDdosCooDomainResourcesResourceArray) ToOutput added in v3.43.1

type GetDdosCooDomainResourcesResourceArrayInput added in v3.2.0

type GetDdosCooDomainResourcesResourceArrayInput interface {
	pulumi.Input

	ToGetDdosCooDomainResourcesResourceArrayOutput() GetDdosCooDomainResourcesResourceArrayOutput
	ToGetDdosCooDomainResourcesResourceArrayOutputWithContext(context.Context) GetDdosCooDomainResourcesResourceArrayOutput
}

GetDdosCooDomainResourcesResourceArrayInput is an input type that accepts GetDdosCooDomainResourcesResourceArray and GetDdosCooDomainResourcesResourceArrayOutput values. You can construct a concrete instance of `GetDdosCooDomainResourcesResourceArrayInput` via:

GetDdosCooDomainResourcesResourceArray{ GetDdosCooDomainResourcesResourceArgs{...} }

type GetDdosCooDomainResourcesResourceArrayOutput added in v3.2.0

type GetDdosCooDomainResourcesResourceArrayOutput struct{ *pulumi.OutputState }

func (GetDdosCooDomainResourcesResourceArrayOutput) ElementType added in v3.2.0

func (GetDdosCooDomainResourcesResourceArrayOutput) Index added in v3.2.0

func (GetDdosCooDomainResourcesResourceArrayOutput) ToGetDdosCooDomainResourcesResourceArrayOutput added in v3.2.0

func (o GetDdosCooDomainResourcesResourceArrayOutput) ToGetDdosCooDomainResourcesResourceArrayOutput() GetDdosCooDomainResourcesResourceArrayOutput

func (GetDdosCooDomainResourcesResourceArrayOutput) ToGetDdosCooDomainResourcesResourceArrayOutputWithContext added in v3.2.0

func (o GetDdosCooDomainResourcesResourceArrayOutput) ToGetDdosCooDomainResourcesResourceArrayOutputWithContext(ctx context.Context) GetDdosCooDomainResourcesResourceArrayOutput

func (GetDdosCooDomainResourcesResourceArrayOutput) ToOutput added in v3.43.1

type GetDdosCooDomainResourcesResourceInput added in v3.2.0

type GetDdosCooDomainResourcesResourceInput interface {
	pulumi.Input

	ToGetDdosCooDomainResourcesResourceOutput() GetDdosCooDomainResourcesResourceOutput
	ToGetDdosCooDomainResourcesResourceOutputWithContext(context.Context) GetDdosCooDomainResourcesResourceOutput
}

GetDdosCooDomainResourcesResourceInput is an input type that accepts GetDdosCooDomainResourcesResourceArgs and GetDdosCooDomainResourcesResourceOutput values. You can construct a concrete instance of `GetDdosCooDomainResourcesResourceInput` via:

GetDdosCooDomainResourcesResourceArgs{...}

type GetDdosCooDomainResourcesResourceOutput added in v3.2.0

type GetDdosCooDomainResourcesResourceOutput struct{ *pulumi.OutputState }

func (GetDdosCooDomainResourcesResourceOutput) BlackLists added in v3.2.0

The IP addresses in the blacklist for the domain name.

func (GetDdosCooDomainResourcesResourceOutput) CcEnabled added in v3.2.0

Whether frequency control guard (CC guard) is enabled. Values: `True`: Opened, `False`: Not enabled.

func (GetDdosCooDomainResourcesResourceOutput) CcRuleEnabled added in v3.2.0

Whether custom frequency control guard (CC guard) is enabled. Values: `True`: Opened, `False`: Not enabled.

func (GetDdosCooDomainResourcesResourceOutput) CcTemplate added in v3.2.0

The mode of the Frequency Control policy.

func (GetDdosCooDomainResourcesResourceOutput) CertName added in v3.2.0

The name of the certificate.

func (GetDdosCooDomainResourcesResourceOutput) Domain added in v3.2.0

The domain name of the website that you want to add to the instance.

func (GetDdosCooDomainResourcesResourceOutput) ElementType added in v3.2.0

func (GetDdosCooDomainResourcesResourceOutput) Http2Enable added in v3.2.0

Whether Http2.0 is enabled.

func (GetDdosCooDomainResourcesResourceOutput) HttpsExt added in v3.2.0

The advanced HTTPS settings.

func (GetDdosCooDomainResourcesResourceOutput) Id added in v3.2.0

The ID of the Domain Resource.

func (GetDdosCooDomainResourcesResourceOutput) InstanceIds added in v3.2.0

A list ID of instance that you want to associate.

func (GetDdosCooDomainResourcesResourceOutput) PolicyMode added in v3.2.0

The type of backload algorithm.

func (GetDdosCooDomainResourcesResourceOutput) ProxyEnabled added in v3.2.0

Whether the website service forwarding rules have been turned on.

func (GetDdosCooDomainResourcesResourceOutput) ProxyTypes added in v3.2.0

Protocol type and port number information.

func (GetDdosCooDomainResourcesResourceOutput) RealServers added in v3.2.0

Server address information of the source station.

func (GetDdosCooDomainResourcesResourceOutput) RsType added in v3.2.0

Server address type.

func (GetDdosCooDomainResourcesResourceOutput) SslCiphers added in v3.2.0

The type of the cipher suite.

func (GetDdosCooDomainResourcesResourceOutput) SslProtocols added in v3.2.0

The version of the TLS protocol.

func (GetDdosCooDomainResourcesResourceOutput) ToGetDdosCooDomainResourcesResourceOutput added in v3.2.0

func (o GetDdosCooDomainResourcesResourceOutput) ToGetDdosCooDomainResourcesResourceOutput() GetDdosCooDomainResourcesResourceOutput

func (GetDdosCooDomainResourcesResourceOutput) ToGetDdosCooDomainResourcesResourceOutputWithContext added in v3.2.0

func (o GetDdosCooDomainResourcesResourceOutput) ToGetDdosCooDomainResourcesResourceOutputWithContext(ctx context.Context) GetDdosCooDomainResourcesResourceOutput

func (GetDdosCooDomainResourcesResourceOutput) ToOutput added in v3.43.1

func (GetDdosCooDomainResourcesResourceOutput) WhiteLists added in v3.2.0

The IP addresses in the whitelist for the domain name.

type GetDdosCooDomainResourcesResourceProxyType added in v3.2.0

type GetDdosCooDomainResourcesResourceProxyType struct {
	// The forwarding port.
	ProxyPorts []int `pulumi:"proxyPorts"`
	// Protocol type.
	ProxyType string `pulumi:"proxyType"`
}

type GetDdosCooDomainResourcesResourceProxyTypeArgs added in v3.2.0

type GetDdosCooDomainResourcesResourceProxyTypeArgs struct {
	// The forwarding port.
	ProxyPorts pulumi.IntArrayInput `pulumi:"proxyPorts"`
	// Protocol type.
	ProxyType pulumi.StringInput `pulumi:"proxyType"`
}

func (GetDdosCooDomainResourcesResourceProxyTypeArgs) ElementType added in v3.2.0

func (GetDdosCooDomainResourcesResourceProxyTypeArgs) ToGetDdosCooDomainResourcesResourceProxyTypeOutput added in v3.2.0

func (i GetDdosCooDomainResourcesResourceProxyTypeArgs) ToGetDdosCooDomainResourcesResourceProxyTypeOutput() GetDdosCooDomainResourcesResourceProxyTypeOutput

func (GetDdosCooDomainResourcesResourceProxyTypeArgs) ToGetDdosCooDomainResourcesResourceProxyTypeOutputWithContext added in v3.2.0

func (i GetDdosCooDomainResourcesResourceProxyTypeArgs) ToGetDdosCooDomainResourcesResourceProxyTypeOutputWithContext(ctx context.Context) GetDdosCooDomainResourcesResourceProxyTypeOutput

func (GetDdosCooDomainResourcesResourceProxyTypeArgs) ToOutput added in v3.43.1

type GetDdosCooDomainResourcesResourceProxyTypeArray added in v3.2.0

type GetDdosCooDomainResourcesResourceProxyTypeArray []GetDdosCooDomainResourcesResourceProxyTypeInput

func (GetDdosCooDomainResourcesResourceProxyTypeArray) ElementType added in v3.2.0

func (GetDdosCooDomainResourcesResourceProxyTypeArray) ToGetDdosCooDomainResourcesResourceProxyTypeArrayOutput added in v3.2.0

func (i GetDdosCooDomainResourcesResourceProxyTypeArray) ToGetDdosCooDomainResourcesResourceProxyTypeArrayOutput() GetDdosCooDomainResourcesResourceProxyTypeArrayOutput

func (GetDdosCooDomainResourcesResourceProxyTypeArray) ToGetDdosCooDomainResourcesResourceProxyTypeArrayOutputWithContext added in v3.2.0

func (i GetDdosCooDomainResourcesResourceProxyTypeArray) ToGetDdosCooDomainResourcesResourceProxyTypeArrayOutputWithContext(ctx context.Context) GetDdosCooDomainResourcesResourceProxyTypeArrayOutput

func (GetDdosCooDomainResourcesResourceProxyTypeArray) ToOutput added in v3.43.1

type GetDdosCooDomainResourcesResourceProxyTypeArrayInput added in v3.2.0

type GetDdosCooDomainResourcesResourceProxyTypeArrayInput interface {
	pulumi.Input

	ToGetDdosCooDomainResourcesResourceProxyTypeArrayOutput() GetDdosCooDomainResourcesResourceProxyTypeArrayOutput
	ToGetDdosCooDomainResourcesResourceProxyTypeArrayOutputWithContext(context.Context) GetDdosCooDomainResourcesResourceProxyTypeArrayOutput
}

GetDdosCooDomainResourcesResourceProxyTypeArrayInput is an input type that accepts GetDdosCooDomainResourcesResourceProxyTypeArray and GetDdosCooDomainResourcesResourceProxyTypeArrayOutput values. You can construct a concrete instance of `GetDdosCooDomainResourcesResourceProxyTypeArrayInput` via:

GetDdosCooDomainResourcesResourceProxyTypeArray{ GetDdosCooDomainResourcesResourceProxyTypeArgs{...} }

type GetDdosCooDomainResourcesResourceProxyTypeArrayOutput added in v3.2.0

type GetDdosCooDomainResourcesResourceProxyTypeArrayOutput struct{ *pulumi.OutputState }

func (GetDdosCooDomainResourcesResourceProxyTypeArrayOutput) ElementType added in v3.2.0

func (GetDdosCooDomainResourcesResourceProxyTypeArrayOutput) Index added in v3.2.0

func (GetDdosCooDomainResourcesResourceProxyTypeArrayOutput) ToGetDdosCooDomainResourcesResourceProxyTypeArrayOutput added in v3.2.0

func (GetDdosCooDomainResourcesResourceProxyTypeArrayOutput) ToGetDdosCooDomainResourcesResourceProxyTypeArrayOutputWithContext added in v3.2.0

func (o GetDdosCooDomainResourcesResourceProxyTypeArrayOutput) ToGetDdosCooDomainResourcesResourceProxyTypeArrayOutputWithContext(ctx context.Context) GetDdosCooDomainResourcesResourceProxyTypeArrayOutput

func (GetDdosCooDomainResourcesResourceProxyTypeArrayOutput) ToOutput added in v3.43.1

type GetDdosCooDomainResourcesResourceProxyTypeInput added in v3.2.0

type GetDdosCooDomainResourcesResourceProxyTypeInput interface {
	pulumi.Input

	ToGetDdosCooDomainResourcesResourceProxyTypeOutput() GetDdosCooDomainResourcesResourceProxyTypeOutput
	ToGetDdosCooDomainResourcesResourceProxyTypeOutputWithContext(context.Context) GetDdosCooDomainResourcesResourceProxyTypeOutput
}

GetDdosCooDomainResourcesResourceProxyTypeInput is an input type that accepts GetDdosCooDomainResourcesResourceProxyTypeArgs and GetDdosCooDomainResourcesResourceProxyTypeOutput values. You can construct a concrete instance of `GetDdosCooDomainResourcesResourceProxyTypeInput` via:

GetDdosCooDomainResourcesResourceProxyTypeArgs{...}

type GetDdosCooDomainResourcesResourceProxyTypeOutput added in v3.2.0

type GetDdosCooDomainResourcesResourceProxyTypeOutput struct{ *pulumi.OutputState }

func (GetDdosCooDomainResourcesResourceProxyTypeOutput) ElementType added in v3.2.0

func (GetDdosCooDomainResourcesResourceProxyTypeOutput) ProxyPorts added in v3.2.0

The forwarding port.

func (GetDdosCooDomainResourcesResourceProxyTypeOutput) ProxyType added in v3.2.0

Protocol type.

func (GetDdosCooDomainResourcesResourceProxyTypeOutput) ToGetDdosCooDomainResourcesResourceProxyTypeOutput added in v3.2.0

func (o GetDdosCooDomainResourcesResourceProxyTypeOutput) ToGetDdosCooDomainResourcesResourceProxyTypeOutput() GetDdosCooDomainResourcesResourceProxyTypeOutput

func (GetDdosCooDomainResourcesResourceProxyTypeOutput) ToGetDdosCooDomainResourcesResourceProxyTypeOutputWithContext added in v3.2.0

func (o GetDdosCooDomainResourcesResourceProxyTypeOutput) ToGetDdosCooDomainResourcesResourceProxyTypeOutputWithContext(ctx context.Context) GetDdosCooDomainResourcesResourceProxyTypeOutput

func (GetDdosCooDomainResourcesResourceProxyTypeOutput) ToOutput added in v3.43.1

type GetDdosCooDomainResourcesResult added in v3.2.0

type GetDdosCooDomainResourcesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id                 string                              `pulumi:"id"`
	Ids                []string                            `pulumi:"ids"`
	InstanceIds        []string                            `pulumi:"instanceIds"`
	OutputFile         *string                             `pulumi:"outputFile"`
	QueryDomainPattern *string                             `pulumi:"queryDomainPattern"`
	Resources          []GetDdosCooDomainResourcesResource `pulumi:"resources"`
}

A collection of values returned by getDdosCooDomainResources.

func GetDdosCooDomainResources added in v3.2.0

func GetDdosCooDomainResources(ctx *pulumi.Context, args *GetDdosCooDomainResourcesArgs, opts ...pulumi.InvokeOption) (*GetDdosCooDomainResourcesResult, error)

This data source provides the Ddoscoo Domain Resources of the current Alibaba Cloud user.

> **NOTE:** Available in v1.123.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ddos.GetDdosCooDomainResources(ctx, &ddos.GetDdosCooDomainResourcesArgs{
			Ids: []string{
				"tftestacc1234.abc",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstDdoscooDomainResourceId", example.Resources[0].Id)
		return nil
	})
}

```

type GetDdosCooDomainResourcesResultOutput added in v3.9.0

type GetDdosCooDomainResourcesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDdosCooDomainResources.

func (GetDdosCooDomainResourcesResultOutput) ElementType added in v3.9.0

func (GetDdosCooDomainResourcesResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetDdosCooDomainResourcesResultOutput) Ids added in v3.9.0

func (GetDdosCooDomainResourcesResultOutput) InstanceIds added in v3.9.0

func (GetDdosCooDomainResourcesResultOutput) OutputFile added in v3.9.0

func (GetDdosCooDomainResourcesResultOutput) QueryDomainPattern added in v3.9.0

func (GetDdosCooDomainResourcesResultOutput) Resources added in v3.9.0

func (GetDdosCooDomainResourcesResultOutput) ToGetDdosCooDomainResourcesResultOutput added in v3.9.0

func (o GetDdosCooDomainResourcesResultOutput) ToGetDdosCooDomainResourcesResultOutput() GetDdosCooDomainResourcesResultOutput

func (GetDdosCooDomainResourcesResultOutput) ToGetDdosCooDomainResourcesResultOutputWithContext added in v3.9.0

func (o GetDdosCooDomainResourcesResultOutput) ToGetDdosCooDomainResourcesResultOutputWithContext(ctx context.Context) GetDdosCooDomainResourcesResultOutput

func (GetDdosCooDomainResourcesResultOutput) ToOutput added in v3.43.1

type GetDdosCooInstancesArgs

type GetDdosCooInstancesArgs struct {
	// A list of instance IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by the instance name.
	NameRegex *string `pulumi:"nameRegex"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getDdosCooInstances.

type GetDdosCooInstancesInstance

type GetDdosCooInstancesInstance struct {
	// The instance's elastic defend bandwidth.
	Bandwidth int `pulumi:"bandwidth"`
	// The instance's base defend bandwidth.
	BaseBandwidth int `pulumi:"baseBandwidth"`
	// The creation time of the instance.
	CreateTime int `pulumi:"createTime"`
	// The debt status of the instance.
	DebtStatus int `pulumi:"debtStatus"`
	// The instance's count of domain retransmission config.
	DomainCount int `pulumi:"domainCount"`
	// The edition of the instance. The Valid Values : `0`, `1`, `2`, `9`.
	Edition int `pulumi:"edition"`
	// The enabled of the instance. The Valid Values : `0`, `1`.
	Enabled int `pulumi:"enabled"`
	// The expiry time of the instance.
	ExpireTime int `pulumi:"expireTime"`
	// The instance's id.
	Id string `pulumi:"id"`
	// The ip mode of the instance. The Valid Values : `fnat`, `v6tov4`.
	IpMode string `pulumi:"ipMode"`
	// The ip version of the instance. The Valid Values : `Ipv4`, `Ipv6`.
	IpVersion string `pulumi:"ipVersion"`
	// The instance's remark.
	Name string `pulumi:"name"`
	// The instance's count of port retransmission config.
	PortCount int `pulumi:"portCount"`
	// The remark of the instance.
	Remark string `pulumi:"remark"`
	// The instance's business bandwidth.
	ServiceBandwidth int `pulumi:"serviceBandwidth"`
	// The status of the instance. The Valid Values : `1`, `2`.
	Status int `pulumi:"status"`
}

type GetDdosCooInstancesInstanceArgs

type GetDdosCooInstancesInstanceArgs struct {
	// The instance's elastic defend bandwidth.
	Bandwidth pulumi.IntInput `pulumi:"bandwidth"`
	// The instance's base defend bandwidth.
	BaseBandwidth pulumi.IntInput `pulumi:"baseBandwidth"`
	// The creation time of the instance.
	CreateTime pulumi.IntInput `pulumi:"createTime"`
	// The debt status of the instance.
	DebtStatus pulumi.IntInput `pulumi:"debtStatus"`
	// The instance's count of domain retransmission config.
	DomainCount pulumi.IntInput `pulumi:"domainCount"`
	// The edition of the instance. The Valid Values : `0`, `1`, `2`, `9`.
	Edition pulumi.IntInput `pulumi:"edition"`
	// The enabled of the instance. The Valid Values : `0`, `1`.
	Enabled pulumi.IntInput `pulumi:"enabled"`
	// The expiry time of the instance.
	ExpireTime pulumi.IntInput `pulumi:"expireTime"`
	// The instance's id.
	Id pulumi.StringInput `pulumi:"id"`
	// The ip mode of the instance. The Valid Values : `fnat`, `v6tov4`.
	IpMode pulumi.StringInput `pulumi:"ipMode"`
	// The ip version of the instance. The Valid Values : `Ipv4`, `Ipv6`.
	IpVersion pulumi.StringInput `pulumi:"ipVersion"`
	// The instance's remark.
	Name pulumi.StringInput `pulumi:"name"`
	// The instance's count of port retransmission config.
	PortCount pulumi.IntInput `pulumi:"portCount"`
	// The remark of the instance.
	Remark pulumi.StringInput `pulumi:"remark"`
	// The instance's business bandwidth.
	ServiceBandwidth pulumi.IntInput `pulumi:"serviceBandwidth"`
	// The status of the instance. The Valid Values : `1`, `2`.
	Status pulumi.IntInput `pulumi:"status"`
}

func (GetDdosCooInstancesInstanceArgs) ElementType

func (GetDdosCooInstancesInstanceArgs) ToGetDdosCooInstancesInstanceOutput

func (i GetDdosCooInstancesInstanceArgs) ToGetDdosCooInstancesInstanceOutput() GetDdosCooInstancesInstanceOutput

func (GetDdosCooInstancesInstanceArgs) ToGetDdosCooInstancesInstanceOutputWithContext

func (i GetDdosCooInstancesInstanceArgs) ToGetDdosCooInstancesInstanceOutputWithContext(ctx context.Context) GetDdosCooInstancesInstanceOutput

func (GetDdosCooInstancesInstanceArgs) ToOutput added in v3.43.1

type GetDdosCooInstancesInstanceArray

type GetDdosCooInstancesInstanceArray []GetDdosCooInstancesInstanceInput

func (GetDdosCooInstancesInstanceArray) ElementType

func (GetDdosCooInstancesInstanceArray) ToGetDdosCooInstancesInstanceArrayOutput

func (i GetDdosCooInstancesInstanceArray) ToGetDdosCooInstancesInstanceArrayOutput() GetDdosCooInstancesInstanceArrayOutput

func (GetDdosCooInstancesInstanceArray) ToGetDdosCooInstancesInstanceArrayOutputWithContext

func (i GetDdosCooInstancesInstanceArray) ToGetDdosCooInstancesInstanceArrayOutputWithContext(ctx context.Context) GetDdosCooInstancesInstanceArrayOutput

func (GetDdosCooInstancesInstanceArray) ToOutput added in v3.43.1

type GetDdosCooInstancesInstanceArrayInput

type GetDdosCooInstancesInstanceArrayInput interface {
	pulumi.Input

	ToGetDdosCooInstancesInstanceArrayOutput() GetDdosCooInstancesInstanceArrayOutput
	ToGetDdosCooInstancesInstanceArrayOutputWithContext(context.Context) GetDdosCooInstancesInstanceArrayOutput
}

GetDdosCooInstancesInstanceArrayInput is an input type that accepts GetDdosCooInstancesInstanceArray and GetDdosCooInstancesInstanceArrayOutput values. You can construct a concrete instance of `GetDdosCooInstancesInstanceArrayInput` via:

GetDdosCooInstancesInstanceArray{ GetDdosCooInstancesInstanceArgs{...} }

type GetDdosCooInstancesInstanceArrayOutput

type GetDdosCooInstancesInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetDdosCooInstancesInstanceArrayOutput) ElementType

func (GetDdosCooInstancesInstanceArrayOutput) Index

func (GetDdosCooInstancesInstanceArrayOutput) ToGetDdosCooInstancesInstanceArrayOutput

func (o GetDdosCooInstancesInstanceArrayOutput) ToGetDdosCooInstancesInstanceArrayOutput() GetDdosCooInstancesInstanceArrayOutput

func (GetDdosCooInstancesInstanceArrayOutput) ToGetDdosCooInstancesInstanceArrayOutputWithContext

func (o GetDdosCooInstancesInstanceArrayOutput) ToGetDdosCooInstancesInstanceArrayOutputWithContext(ctx context.Context) GetDdosCooInstancesInstanceArrayOutput

func (GetDdosCooInstancesInstanceArrayOutput) ToOutput added in v3.43.1

type GetDdosCooInstancesInstanceInput

type GetDdosCooInstancesInstanceInput interface {
	pulumi.Input

	ToGetDdosCooInstancesInstanceOutput() GetDdosCooInstancesInstanceOutput
	ToGetDdosCooInstancesInstanceOutputWithContext(context.Context) GetDdosCooInstancesInstanceOutput
}

GetDdosCooInstancesInstanceInput is an input type that accepts GetDdosCooInstancesInstanceArgs and GetDdosCooInstancesInstanceOutput values. You can construct a concrete instance of `GetDdosCooInstancesInstanceInput` via:

GetDdosCooInstancesInstanceArgs{...}

type GetDdosCooInstancesInstanceOutput

type GetDdosCooInstancesInstanceOutput struct{ *pulumi.OutputState }

func (GetDdosCooInstancesInstanceOutput) Bandwidth

The instance's elastic defend bandwidth.

func (GetDdosCooInstancesInstanceOutput) BaseBandwidth

The instance's base defend bandwidth.

func (GetDdosCooInstancesInstanceOutput) CreateTime added in v3.12.0

The creation time of the instance.

func (GetDdosCooInstancesInstanceOutput) DebtStatus added in v3.12.0

The debt status of the instance.

func (GetDdosCooInstancesInstanceOutput) DomainCount

The instance's count of domain retransmission config.

func (GetDdosCooInstancesInstanceOutput) Edition added in v3.12.0

The edition of the instance. The Valid Values : `0`, `1`, `2`, `9`.

func (GetDdosCooInstancesInstanceOutput) ElementType

func (GetDdosCooInstancesInstanceOutput) Enabled added in v3.12.0

The enabled of the instance. The Valid Values : `0`, `1`.

func (GetDdosCooInstancesInstanceOutput) ExpireTime added in v3.12.0

The expiry time of the instance.

func (GetDdosCooInstancesInstanceOutput) Id

The instance's id.

func (GetDdosCooInstancesInstanceOutput) IpMode added in v3.12.0

The ip mode of the instance. The Valid Values : `fnat`, `v6tov4`.

func (GetDdosCooInstancesInstanceOutput) IpVersion added in v3.12.0

The ip version of the instance. The Valid Values : `Ipv4`, `Ipv6`.

func (GetDdosCooInstancesInstanceOutput) Name

The instance's remark.

func (GetDdosCooInstancesInstanceOutput) PortCount

The instance's count of port retransmission config.

func (GetDdosCooInstancesInstanceOutput) Remark added in v3.12.0

The remark of the instance.

func (GetDdosCooInstancesInstanceOutput) ServiceBandwidth

func (o GetDdosCooInstancesInstanceOutput) ServiceBandwidth() pulumi.IntOutput

The instance's business bandwidth.

func (GetDdosCooInstancesInstanceOutput) Status added in v3.12.0

The status of the instance. The Valid Values : `1`, `2`.

func (GetDdosCooInstancesInstanceOutput) ToGetDdosCooInstancesInstanceOutput

func (o GetDdosCooInstancesInstanceOutput) ToGetDdosCooInstancesInstanceOutput() GetDdosCooInstancesInstanceOutput

func (GetDdosCooInstancesInstanceOutput) ToGetDdosCooInstancesInstanceOutputWithContext

func (o GetDdosCooInstancesInstanceOutput) ToGetDdosCooInstancesInstanceOutputWithContext(ctx context.Context) GetDdosCooInstancesInstanceOutput

func (GetDdosCooInstancesInstanceOutput) ToOutput added in v3.43.1

type GetDdosCooInstancesOutputArgs added in v3.9.0

type GetDdosCooInstancesOutputArgs struct {
	// A list of instance IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by the instance name.
	NameRegex pulumi.StringPtrInput `pulumi:"nameRegex"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getDdosCooInstances.

func (GetDdosCooInstancesOutputArgs) ElementType added in v3.9.0

type GetDdosCooInstancesResult

type GetDdosCooInstancesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of instance IDs.
	Ids []string `pulumi:"ids"`
	// A list of apis. Each element contains the following attributes:
	Instances []GetDdosCooInstancesInstance `pulumi:"instances"`
	NameRegex *string                       `pulumi:"nameRegex"`
	// A list of instance names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of values returned by getDdosCooInstances.

func GetDdosCooInstances

func GetDdosCooInstances(ctx *pulumi.Context, args *GetDdosCooInstancesArgs, opts ...pulumi.InvokeOption) (*GetDdosCooInstancesResult, error)

This data source provides a list of BGP-Line Anti-DDoS Pro instances in an Alibaba Cloud account according to the specified filters.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ddos.GetDdosCooInstances(ctx, &ddos.GetDdosCooInstancesArgs{
			NameRegex: pulumi.StringRef("^ddoscoo"),
		}, nil)
		if err != nil {
			return err
		}
		var splat0 []interface{}
		for _, val0 := range alicloud_ddoscoo_instances.Instance {
			splat0 = append(splat0, val0.Id)
		}
		ctx.Export("instance", splat0)
		return nil
	})
}

```

type GetDdosCooInstancesResultOutput added in v3.9.0

type GetDdosCooInstancesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDdosCooInstances.

func GetDdosCooInstancesOutput added in v3.9.0

func (GetDdosCooInstancesResultOutput) ElementType added in v3.9.0

func (GetDdosCooInstancesResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetDdosCooInstancesResultOutput) Ids added in v3.9.0

A list of instance IDs.

func (GetDdosCooInstancesResultOutput) Instances added in v3.9.0

A list of apis. Each element contains the following attributes:

func (GetDdosCooInstancesResultOutput) NameRegex added in v3.9.0

func (GetDdosCooInstancesResultOutput) Names added in v3.9.0

A list of instance names.

func (GetDdosCooInstancesResultOutput) OutputFile added in v3.9.0

func (GetDdosCooInstancesResultOutput) ToGetDdosCooInstancesResultOutput added in v3.9.0

func (o GetDdosCooInstancesResultOutput) ToGetDdosCooInstancesResultOutput() GetDdosCooInstancesResultOutput

func (GetDdosCooInstancesResultOutput) ToGetDdosCooInstancesResultOutputWithContext added in v3.9.0

func (o GetDdosCooInstancesResultOutput) ToGetDdosCooInstancesResultOutputWithContext(ctx context.Context) GetDdosCooInstancesResultOutput

func (GetDdosCooInstancesResultOutput) ToOutput added in v3.43.1

type GetDdosCooPortsArgs added in v3.2.0

type GetDdosCooPortsArgs struct {
	// The forwarding port.
	FrontendPort *string `pulumi:"frontendPort"`
	// The forwarding protocol.
	FrontendProtocol *string `pulumi:"frontendProtocol"`
	// A list of Port IDs.
	Ids []string `pulumi:"ids"`
	// The Ddoscoo instance ID.
	InstanceId string `pulumi:"instanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getDdosCooPorts.

type GetDdosCooPortsOutputArgs added in v3.9.0

type GetDdosCooPortsOutputArgs struct {
	// The forwarding port.
	FrontendPort pulumi.StringPtrInput `pulumi:"frontendPort"`
	// The forwarding protocol.
	FrontendProtocol pulumi.StringPtrInput `pulumi:"frontendProtocol"`
	// A list of Port IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The Ddoscoo instance ID.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getDdosCooPorts.

func (GetDdosCooPortsOutputArgs) ElementType added in v3.9.0

func (GetDdosCooPortsOutputArgs) ElementType() reflect.Type

type GetDdosCooPortsPort added in v3.2.0

type GetDdosCooPortsPort struct {
	// The source station port.
	BackendPort string `pulumi:"backendPort"`
	// The forwarding port.
	FrontendPort string `pulumi:"frontendPort"`
	// The forwarding protocol.
	FrontendProtocol string `pulumi:"frontendProtocol"`
	// The ID of the Port.
	Id string `pulumi:"id"`
	// The Ddoscoo instance ID.
	InstanceId string `pulumi:"instanceId"`
	// List of source IP addresses.
	RealServers []string `pulumi:"realServers"`
}

type GetDdosCooPortsPortArgs added in v3.2.0

type GetDdosCooPortsPortArgs struct {
	// The source station port.
	BackendPort pulumi.StringInput `pulumi:"backendPort"`
	// The forwarding port.
	FrontendPort pulumi.StringInput `pulumi:"frontendPort"`
	// The forwarding protocol.
	FrontendProtocol pulumi.StringInput `pulumi:"frontendProtocol"`
	// The ID of the Port.
	Id pulumi.StringInput `pulumi:"id"`
	// The Ddoscoo instance ID.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// List of source IP addresses.
	RealServers pulumi.StringArrayInput `pulumi:"realServers"`
}

func (GetDdosCooPortsPortArgs) ElementType added in v3.2.0

func (GetDdosCooPortsPortArgs) ElementType() reflect.Type

func (GetDdosCooPortsPortArgs) ToGetDdosCooPortsPortOutput added in v3.2.0

func (i GetDdosCooPortsPortArgs) ToGetDdosCooPortsPortOutput() GetDdosCooPortsPortOutput

func (GetDdosCooPortsPortArgs) ToGetDdosCooPortsPortOutputWithContext added in v3.2.0

func (i GetDdosCooPortsPortArgs) ToGetDdosCooPortsPortOutputWithContext(ctx context.Context) GetDdosCooPortsPortOutput

func (GetDdosCooPortsPortArgs) ToOutput added in v3.43.1

type GetDdosCooPortsPortArray added in v3.2.0

type GetDdosCooPortsPortArray []GetDdosCooPortsPortInput

func (GetDdosCooPortsPortArray) ElementType added in v3.2.0

func (GetDdosCooPortsPortArray) ElementType() reflect.Type

func (GetDdosCooPortsPortArray) ToGetDdosCooPortsPortArrayOutput added in v3.2.0

func (i GetDdosCooPortsPortArray) ToGetDdosCooPortsPortArrayOutput() GetDdosCooPortsPortArrayOutput

func (GetDdosCooPortsPortArray) ToGetDdosCooPortsPortArrayOutputWithContext added in v3.2.0

func (i GetDdosCooPortsPortArray) ToGetDdosCooPortsPortArrayOutputWithContext(ctx context.Context) GetDdosCooPortsPortArrayOutput

func (GetDdosCooPortsPortArray) ToOutput added in v3.43.1

type GetDdosCooPortsPortArrayInput added in v3.2.0

type GetDdosCooPortsPortArrayInput interface {
	pulumi.Input

	ToGetDdosCooPortsPortArrayOutput() GetDdosCooPortsPortArrayOutput
	ToGetDdosCooPortsPortArrayOutputWithContext(context.Context) GetDdosCooPortsPortArrayOutput
}

GetDdosCooPortsPortArrayInput is an input type that accepts GetDdosCooPortsPortArray and GetDdosCooPortsPortArrayOutput values. You can construct a concrete instance of `GetDdosCooPortsPortArrayInput` via:

GetDdosCooPortsPortArray{ GetDdosCooPortsPortArgs{...} }

type GetDdosCooPortsPortArrayOutput added in v3.2.0

type GetDdosCooPortsPortArrayOutput struct{ *pulumi.OutputState }

func (GetDdosCooPortsPortArrayOutput) ElementType added in v3.2.0

func (GetDdosCooPortsPortArrayOutput) Index added in v3.2.0

func (GetDdosCooPortsPortArrayOutput) ToGetDdosCooPortsPortArrayOutput added in v3.2.0

func (o GetDdosCooPortsPortArrayOutput) ToGetDdosCooPortsPortArrayOutput() GetDdosCooPortsPortArrayOutput

func (GetDdosCooPortsPortArrayOutput) ToGetDdosCooPortsPortArrayOutputWithContext added in v3.2.0

func (o GetDdosCooPortsPortArrayOutput) ToGetDdosCooPortsPortArrayOutputWithContext(ctx context.Context) GetDdosCooPortsPortArrayOutput

func (GetDdosCooPortsPortArrayOutput) ToOutput added in v3.43.1

type GetDdosCooPortsPortInput added in v3.2.0

type GetDdosCooPortsPortInput interface {
	pulumi.Input

	ToGetDdosCooPortsPortOutput() GetDdosCooPortsPortOutput
	ToGetDdosCooPortsPortOutputWithContext(context.Context) GetDdosCooPortsPortOutput
}

GetDdosCooPortsPortInput is an input type that accepts GetDdosCooPortsPortArgs and GetDdosCooPortsPortOutput values. You can construct a concrete instance of `GetDdosCooPortsPortInput` via:

GetDdosCooPortsPortArgs{...}

type GetDdosCooPortsPortOutput added in v3.2.0

type GetDdosCooPortsPortOutput struct{ *pulumi.OutputState }

func (GetDdosCooPortsPortOutput) BackendPort added in v3.2.0

The source station port.

func (GetDdosCooPortsPortOutput) ElementType added in v3.2.0

func (GetDdosCooPortsPortOutput) ElementType() reflect.Type

func (GetDdosCooPortsPortOutput) FrontendPort added in v3.2.0

The forwarding port.

func (GetDdosCooPortsPortOutput) FrontendProtocol added in v3.2.0

func (o GetDdosCooPortsPortOutput) FrontendProtocol() pulumi.StringOutput

The forwarding protocol.

func (GetDdosCooPortsPortOutput) Id added in v3.2.0

The ID of the Port.

func (GetDdosCooPortsPortOutput) InstanceId added in v3.2.0

The Ddoscoo instance ID.

func (GetDdosCooPortsPortOutput) RealServers added in v3.2.0

List of source IP addresses.

func (GetDdosCooPortsPortOutput) ToGetDdosCooPortsPortOutput added in v3.2.0

func (o GetDdosCooPortsPortOutput) ToGetDdosCooPortsPortOutput() GetDdosCooPortsPortOutput

func (GetDdosCooPortsPortOutput) ToGetDdosCooPortsPortOutputWithContext added in v3.2.0

func (o GetDdosCooPortsPortOutput) ToGetDdosCooPortsPortOutputWithContext(ctx context.Context) GetDdosCooPortsPortOutput

func (GetDdosCooPortsPortOutput) ToOutput added in v3.43.1

type GetDdosCooPortsResult added in v3.2.0

type GetDdosCooPortsResult struct {
	FrontendPort     *string `pulumi:"frontendPort"`
	FrontendProtocol *string `pulumi:"frontendProtocol"`
	// The provider-assigned unique ID for this managed resource.
	Id         string                `pulumi:"id"`
	Ids        []string              `pulumi:"ids"`
	InstanceId string                `pulumi:"instanceId"`
	OutputFile *string               `pulumi:"outputFile"`
	Ports      []GetDdosCooPortsPort `pulumi:"ports"`
}

A collection of values returned by getDdosCooPorts.

func GetDdosCooPorts added in v3.2.0

func GetDdosCooPorts(ctx *pulumi.Context, args *GetDdosCooPortsArgs, opts ...pulumi.InvokeOption) (*GetDdosCooPortsResult, error)

This data source provides the Ddoscoo Ports of the current Alibaba Cloud user.

> **NOTE:** Available in v1.123.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ddos.GetDdosCooPorts(ctx, &ddos.GetDdosCooPortsArgs{
			InstanceId: "ddoscoo-cn-6ja1rl4j****",
			Ids: []string{
				"ddoscoo-cn-6ja1rl4j****:7001:tcp",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstDdoscooPortId", example.Ports[0].Id)
		return nil
	})
}

```

type GetDdosCooPortsResultOutput added in v3.9.0

type GetDdosCooPortsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDdosCooPorts.

func GetDdosCooPortsOutput added in v3.9.0

func (GetDdosCooPortsResultOutput) ElementType added in v3.9.0

func (GetDdosCooPortsResultOutput) FrontendPort added in v3.9.0

func (GetDdosCooPortsResultOutput) FrontendProtocol added in v3.9.0

func (o GetDdosCooPortsResultOutput) FrontendProtocol() pulumi.StringPtrOutput

func (GetDdosCooPortsResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetDdosCooPortsResultOutput) Ids added in v3.9.0

func (GetDdosCooPortsResultOutput) InstanceId added in v3.9.0

func (GetDdosCooPortsResultOutput) OutputFile added in v3.9.0

func (GetDdosCooPortsResultOutput) Ports added in v3.9.0

func (GetDdosCooPortsResultOutput) ToGetDdosCooPortsResultOutput added in v3.9.0

func (o GetDdosCooPortsResultOutput) ToGetDdosCooPortsResultOutput() GetDdosCooPortsResultOutput

func (GetDdosCooPortsResultOutput) ToGetDdosCooPortsResultOutputWithContext added in v3.9.0

func (o GetDdosCooPortsResultOutput) ToGetDdosCooPortsResultOutputWithContext(ctx context.Context) GetDdosCooPortsResultOutput

func (GetDdosCooPortsResultOutput) ToOutput added in v3.43.1

type Port added in v3.2.0

type Port struct {
	pulumi.CustomResourceState

	// The port of the origin server. Valid values: [1~65535].
	BackendPort pulumi.StringPtrOutput `pulumi:"backendPort"`
	// The forwarding port. Valid values: [1~65535].
	FrontendPort pulumi.StringOutput `pulumi:"frontendPort"`
	// The forwarding protocol. Valid values `tcp` and `udp`.
	FrontendProtocol pulumi.StringOutput `pulumi:"frontendProtocol"`
	// The ID of Ddoscoo instance.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// List of source IP addresses.
	RealServers pulumi.StringArrayOutput `pulumi:"realServers"`
}

Provides a Anti-DDoS Pro Port resource.

For information about Anti-DDoS Pro Port and how to use it, see [What is Port](https://www.alibabacloud.com/help/en/ddos-protection/latest/api-ddoscoo-2020-01-01-createport).

> **NOTE:** Available since v1.123.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		defaultDdosCooInstance, err := ddos.NewDdosCooInstance(ctx, "defaultDdosCooInstance", &ddos.DdosCooInstanceArgs{
			Bandwidth:        pulumi.String("30"),
			BaseBandwidth:    pulumi.String("30"),
			ServiceBandwidth: pulumi.String("100"),
			PortCount:        pulumi.String("50"),
			DomainCount:      pulumi.String("50"),
			Period:           pulumi.Int(1),
			ProductType:      pulumi.String("ddoscoo"),
		})
		if err != nil {
			return err
		}
		_, err = ddos.NewPort(ctx, "defaultPort", &ddos.PortArgs{
			InstanceId:       defaultDdosCooInstance.ID(),
			FrontendPort:     pulumi.String("7001"),
			BackendPort:      pulumi.String("7002"),
			FrontendProtocol: pulumi.String("tcp"),
			RealServers: pulumi.StringArray{
				pulumi.String("1.1.1.1"),
				pulumi.String("2.2.2.2"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Anti-DDoS Pro Port can be imported using the id, e.g.

```sh

$ pulumi import alicloud:ddos/port:Port example <instance_id>:<frontend_port>:<frontend_protocol>

```

func GetPort added in v3.2.0

func GetPort(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PortState, opts ...pulumi.ResourceOption) (*Port, error)

GetPort gets an existing Port 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 NewPort added in v3.2.0

func NewPort(ctx *pulumi.Context,
	name string, args *PortArgs, opts ...pulumi.ResourceOption) (*Port, error)

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

func (*Port) ElementType added in v3.2.0

func (*Port) ElementType() reflect.Type

func (*Port) ToOutput added in v3.43.1

func (i *Port) ToOutput(ctx context.Context) pulumix.Output[*Port]

func (*Port) ToPortOutput added in v3.2.0

func (i *Port) ToPortOutput() PortOutput

func (*Port) ToPortOutputWithContext added in v3.2.0

func (i *Port) ToPortOutputWithContext(ctx context.Context) PortOutput

type PortArgs added in v3.2.0

type PortArgs struct {
	// The port of the origin server. Valid values: [1~65535].
	BackendPort pulumi.StringPtrInput
	// The forwarding port. Valid values: [1~65535].
	FrontendPort pulumi.StringInput
	// The forwarding protocol. Valid values `tcp` and `udp`.
	FrontendProtocol pulumi.StringInput
	// The ID of Ddoscoo instance.
	InstanceId pulumi.StringInput
	// List of source IP addresses.
	RealServers pulumi.StringArrayInput
}

The set of arguments for constructing a Port resource.

func (PortArgs) ElementType added in v3.2.0

func (PortArgs) ElementType() reflect.Type

type PortArray added in v3.2.0

type PortArray []PortInput

func (PortArray) ElementType added in v3.2.0

func (PortArray) ElementType() reflect.Type

func (PortArray) ToOutput added in v3.43.1

func (i PortArray) ToOutput(ctx context.Context) pulumix.Output[[]*Port]

func (PortArray) ToPortArrayOutput added in v3.2.0

func (i PortArray) ToPortArrayOutput() PortArrayOutput

func (PortArray) ToPortArrayOutputWithContext added in v3.2.0

func (i PortArray) ToPortArrayOutputWithContext(ctx context.Context) PortArrayOutput

type PortArrayInput added in v3.2.0

type PortArrayInput interface {
	pulumi.Input

	ToPortArrayOutput() PortArrayOutput
	ToPortArrayOutputWithContext(context.Context) PortArrayOutput
}

PortArrayInput is an input type that accepts PortArray and PortArrayOutput values. You can construct a concrete instance of `PortArrayInput` via:

PortArray{ PortArgs{...} }

type PortArrayOutput added in v3.2.0

type PortArrayOutput struct{ *pulumi.OutputState }

func (PortArrayOutput) ElementType added in v3.2.0

func (PortArrayOutput) ElementType() reflect.Type

func (PortArrayOutput) Index added in v3.2.0

func (PortArrayOutput) ToOutput added in v3.43.1

func (o PortArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]*Port]

func (PortArrayOutput) ToPortArrayOutput added in v3.2.0

func (o PortArrayOutput) ToPortArrayOutput() PortArrayOutput

func (PortArrayOutput) ToPortArrayOutputWithContext added in v3.2.0

func (o PortArrayOutput) ToPortArrayOutputWithContext(ctx context.Context) PortArrayOutput

type PortInput added in v3.2.0

type PortInput interface {
	pulumi.Input

	ToPortOutput() PortOutput
	ToPortOutputWithContext(ctx context.Context) PortOutput
}

type PortMap added in v3.2.0

type PortMap map[string]PortInput

func (PortMap) ElementType added in v3.2.0

func (PortMap) ElementType() reflect.Type

func (PortMap) ToOutput added in v3.43.1

func (i PortMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Port]

func (PortMap) ToPortMapOutput added in v3.2.0

func (i PortMap) ToPortMapOutput() PortMapOutput

func (PortMap) ToPortMapOutputWithContext added in v3.2.0

func (i PortMap) ToPortMapOutputWithContext(ctx context.Context) PortMapOutput

type PortMapInput added in v3.2.0

type PortMapInput interface {
	pulumi.Input

	ToPortMapOutput() PortMapOutput
	ToPortMapOutputWithContext(context.Context) PortMapOutput
}

PortMapInput is an input type that accepts PortMap and PortMapOutput values. You can construct a concrete instance of `PortMapInput` via:

PortMap{ "key": PortArgs{...} }

type PortMapOutput added in v3.2.0

type PortMapOutput struct{ *pulumi.OutputState }

func (PortMapOutput) ElementType added in v3.2.0

func (PortMapOutput) ElementType() reflect.Type

func (PortMapOutput) MapIndex added in v3.2.0

func (PortMapOutput) ToOutput added in v3.43.1

func (o PortMapOutput) ToOutput(ctx context.Context) pulumix.Output[map[string]*Port]

func (PortMapOutput) ToPortMapOutput added in v3.2.0

func (o PortMapOutput) ToPortMapOutput() PortMapOutput

func (PortMapOutput) ToPortMapOutputWithContext added in v3.2.0

func (o PortMapOutput) ToPortMapOutputWithContext(ctx context.Context) PortMapOutput

type PortOutput added in v3.2.0

type PortOutput struct{ *pulumi.OutputState }

func (PortOutput) BackendPort added in v3.27.0

func (o PortOutput) BackendPort() pulumi.StringPtrOutput

The port of the origin server. Valid values: [1~65535].

func (PortOutput) ElementType added in v3.2.0

func (PortOutput) ElementType() reflect.Type

func (PortOutput) FrontendPort added in v3.27.0

func (o PortOutput) FrontendPort() pulumi.StringOutput

The forwarding port. Valid values: [1~65535].

func (PortOutput) FrontendProtocol added in v3.27.0

func (o PortOutput) FrontendProtocol() pulumi.StringOutput

The forwarding protocol. Valid values `tcp` and `udp`.

func (PortOutput) InstanceId added in v3.27.0

func (o PortOutput) InstanceId() pulumi.StringOutput

The ID of Ddoscoo instance.

func (PortOutput) RealServers added in v3.27.0

func (o PortOutput) RealServers() pulumi.StringArrayOutput

List of source IP addresses.

func (PortOutput) ToOutput added in v3.43.1

func (o PortOutput) ToOutput(ctx context.Context) pulumix.Output[*Port]

func (PortOutput) ToPortOutput added in v3.2.0

func (o PortOutput) ToPortOutput() PortOutput

func (PortOutput) ToPortOutputWithContext added in v3.2.0

func (o PortOutput) ToPortOutputWithContext(ctx context.Context) PortOutput

type PortState added in v3.2.0

type PortState struct {
	// The port of the origin server. Valid values: [1~65535].
	BackendPort pulumi.StringPtrInput
	// The forwarding port. Valid values: [1~65535].
	FrontendPort pulumi.StringPtrInput
	// The forwarding protocol. Valid values `tcp` and `udp`.
	FrontendProtocol pulumi.StringPtrInput
	// The ID of Ddoscoo instance.
	InstanceId pulumi.StringPtrInput
	// List of source IP addresses.
	RealServers pulumi.StringArrayInput
}

func (PortState) ElementType added in v3.2.0

func (PortState) ElementType() reflect.Type

type SchedulerRule

type SchedulerRule struct {
	pulumi.CustomResourceState

	// The cname is the traffic scheduler corresponding to rules.
	Cname pulumi.StringOutput `pulumi:"cname"`
	// The scheduling rule for the Global Accelerator instance that interacts with Anti-DDoS Pro or Anti-DDoS Premium.
	Param pulumi.StringPtrOutput `pulumi:"param"`
	// The ID of the resource group to which the anti-DDoS pro instance belongs in resource management. By default, no value is specified, indicating that the domains in the default resource group are listed.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// The name of the rule.
	RuleName pulumi.StringOutput `pulumi:"ruleName"`
	// The rule type. Valid values:
	// `2`: tiered protection.
	// `3`: globalization acceleration.
	// `6`: Cloud product interaction.
	RuleType pulumi.IntOutput `pulumi:"ruleType"`
	// The information about the scheduling rules. See `rules` below.
	Rules SchedulerRuleRuleArrayOutput `pulumi:"rules"`
}

Provides a DdosCoo Scheduler Rule resource. For information about DdosCoo Scheduler Rule and how to use it, see[What is DdosCoo Scheduler Rule](https://www.alibabacloud.com/help/en/ddos-protection/latest/api-ddoscoo-2020-01-01-createschedulerrule).

> **NOTE:** Available since v1.86.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ddos"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ddos.NewSchedulerRule(ctx, "example", &ddos.SchedulerRuleArgs{
			RuleName: pulumi.String(name),
			RuleType: pulumi.Int(3),
			Rules: ddos.SchedulerRuleRuleArray{
				&ddos.SchedulerRuleRuleArgs{
					Priority:  pulumi.Int(100),
					RegionId:  pulumi.String("cn-hangzhou"),
					Type:      pulumi.String("A"),
					Value:     pulumi.String("127.0.0.1"),
					ValueType: pulumi.Int(3),
				},
				&ddos.SchedulerRuleRuleArgs{
					Priority:  pulumi.Int(50),
					RegionId:  pulumi.String("cn-hangzhou"),
					Type:      pulumi.String("A"),
					Value:     pulumi.String("127.0.0.0"),
					ValueType: pulumi.Int(1),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DdosCoo Scheduler Rule can be imported using the id or the rule name, e.g.

```sh

$ pulumi import alicloud:ddos/schedulerRule:SchedulerRule example fbb20dc77e8fc******

```

func GetSchedulerRule

func GetSchedulerRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SchedulerRuleState, opts ...pulumi.ResourceOption) (*SchedulerRule, error)

GetSchedulerRule gets an existing SchedulerRule 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 NewSchedulerRule

func NewSchedulerRule(ctx *pulumi.Context,
	name string, args *SchedulerRuleArgs, opts ...pulumi.ResourceOption) (*SchedulerRule, error)

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

func (*SchedulerRule) ElementType

func (*SchedulerRule) ElementType() reflect.Type

func (*SchedulerRule) ToOutput added in v3.43.1

func (*SchedulerRule) ToSchedulerRuleOutput

func (i *SchedulerRule) ToSchedulerRuleOutput() SchedulerRuleOutput

func (*SchedulerRule) ToSchedulerRuleOutputWithContext

func (i *SchedulerRule) ToSchedulerRuleOutputWithContext(ctx context.Context) SchedulerRuleOutput

type SchedulerRuleArgs

type SchedulerRuleArgs struct {
	// The scheduling rule for the Global Accelerator instance that interacts with Anti-DDoS Pro or Anti-DDoS Premium.
	Param pulumi.StringPtrInput
	// The ID of the resource group to which the anti-DDoS pro instance belongs in resource management. By default, no value is specified, indicating that the domains in the default resource group are listed.
	ResourceGroupId pulumi.StringPtrInput
	// The name of the rule.
	RuleName pulumi.StringInput
	// The rule type. Valid values:
	// `2`: tiered protection.
	// `3`: globalization acceleration.
	// `6`: Cloud product interaction.
	RuleType pulumi.IntInput
	// The information about the scheduling rules. See `rules` below.
	Rules SchedulerRuleRuleArrayInput
}

The set of arguments for constructing a SchedulerRule resource.

func (SchedulerRuleArgs) ElementType

func (SchedulerRuleArgs) ElementType() reflect.Type

type SchedulerRuleArray

type SchedulerRuleArray []SchedulerRuleInput

func (SchedulerRuleArray) ElementType

func (SchedulerRuleArray) ElementType() reflect.Type

func (SchedulerRuleArray) ToOutput added in v3.43.1

func (SchedulerRuleArray) ToSchedulerRuleArrayOutput

func (i SchedulerRuleArray) ToSchedulerRuleArrayOutput() SchedulerRuleArrayOutput

func (SchedulerRuleArray) ToSchedulerRuleArrayOutputWithContext

func (i SchedulerRuleArray) ToSchedulerRuleArrayOutputWithContext(ctx context.Context) SchedulerRuleArrayOutput

type SchedulerRuleArrayInput

type SchedulerRuleArrayInput interface {
	pulumi.Input

	ToSchedulerRuleArrayOutput() SchedulerRuleArrayOutput
	ToSchedulerRuleArrayOutputWithContext(context.Context) SchedulerRuleArrayOutput
}

SchedulerRuleArrayInput is an input type that accepts SchedulerRuleArray and SchedulerRuleArrayOutput values. You can construct a concrete instance of `SchedulerRuleArrayInput` via:

SchedulerRuleArray{ SchedulerRuleArgs{...} }

type SchedulerRuleArrayOutput

type SchedulerRuleArrayOutput struct{ *pulumi.OutputState }

func (SchedulerRuleArrayOutput) ElementType

func (SchedulerRuleArrayOutput) ElementType() reflect.Type

func (SchedulerRuleArrayOutput) Index

func (SchedulerRuleArrayOutput) ToOutput added in v3.43.1

func (SchedulerRuleArrayOutput) ToSchedulerRuleArrayOutput

func (o SchedulerRuleArrayOutput) ToSchedulerRuleArrayOutput() SchedulerRuleArrayOutput

func (SchedulerRuleArrayOutput) ToSchedulerRuleArrayOutputWithContext

func (o SchedulerRuleArrayOutput) ToSchedulerRuleArrayOutputWithContext(ctx context.Context) SchedulerRuleArrayOutput

type SchedulerRuleInput

type SchedulerRuleInput interface {
	pulumi.Input

	ToSchedulerRuleOutput() SchedulerRuleOutput
	ToSchedulerRuleOutputWithContext(ctx context.Context) SchedulerRuleOutput
}

type SchedulerRuleMap

type SchedulerRuleMap map[string]SchedulerRuleInput

func (SchedulerRuleMap) ElementType

func (SchedulerRuleMap) ElementType() reflect.Type

func (SchedulerRuleMap) ToOutput added in v3.43.1

func (SchedulerRuleMap) ToSchedulerRuleMapOutput

func (i SchedulerRuleMap) ToSchedulerRuleMapOutput() SchedulerRuleMapOutput

func (SchedulerRuleMap) ToSchedulerRuleMapOutputWithContext

func (i SchedulerRuleMap) ToSchedulerRuleMapOutputWithContext(ctx context.Context) SchedulerRuleMapOutput

type SchedulerRuleMapInput

type SchedulerRuleMapInput interface {
	pulumi.Input

	ToSchedulerRuleMapOutput() SchedulerRuleMapOutput
	ToSchedulerRuleMapOutputWithContext(context.Context) SchedulerRuleMapOutput
}

SchedulerRuleMapInput is an input type that accepts SchedulerRuleMap and SchedulerRuleMapOutput values. You can construct a concrete instance of `SchedulerRuleMapInput` via:

SchedulerRuleMap{ "key": SchedulerRuleArgs{...} }

type SchedulerRuleMapOutput

type SchedulerRuleMapOutput struct{ *pulumi.OutputState }

func (SchedulerRuleMapOutput) ElementType

func (SchedulerRuleMapOutput) ElementType() reflect.Type

func (SchedulerRuleMapOutput) MapIndex

func (SchedulerRuleMapOutput) ToOutput added in v3.43.1

func (SchedulerRuleMapOutput) ToSchedulerRuleMapOutput

func (o SchedulerRuleMapOutput) ToSchedulerRuleMapOutput() SchedulerRuleMapOutput

func (SchedulerRuleMapOutput) ToSchedulerRuleMapOutputWithContext

func (o SchedulerRuleMapOutput) ToSchedulerRuleMapOutputWithContext(ctx context.Context) SchedulerRuleMapOutput

type SchedulerRuleOutput

type SchedulerRuleOutput struct{ *pulumi.OutputState }

func (SchedulerRuleOutput) Cname added in v3.27.0

The cname is the traffic scheduler corresponding to rules.

func (SchedulerRuleOutput) ElementType

func (SchedulerRuleOutput) ElementType() reflect.Type

func (SchedulerRuleOutput) Param added in v3.27.0

The scheduling rule for the Global Accelerator instance that interacts with Anti-DDoS Pro or Anti-DDoS Premium.

func (SchedulerRuleOutput) ResourceGroupId added in v3.27.0

func (o SchedulerRuleOutput) ResourceGroupId() pulumi.StringPtrOutput

The ID of the resource group to which the anti-DDoS pro instance belongs in resource management. By default, no value is specified, indicating that the domains in the default resource group are listed.

func (SchedulerRuleOutput) RuleName added in v3.27.0

The name of the rule.

func (SchedulerRuleOutput) RuleType added in v3.27.0

func (o SchedulerRuleOutput) RuleType() pulumi.IntOutput

The rule type. Valid values: `2`: tiered protection. `3`: globalization acceleration. `6`: Cloud product interaction.

func (SchedulerRuleOutput) Rules added in v3.27.0

The information about the scheduling rules. See `rules` below.

func (SchedulerRuleOutput) ToOutput added in v3.43.1

func (SchedulerRuleOutput) ToSchedulerRuleOutput

func (o SchedulerRuleOutput) ToSchedulerRuleOutput() SchedulerRuleOutput

func (SchedulerRuleOutput) ToSchedulerRuleOutputWithContext

func (o SchedulerRuleOutput) ToSchedulerRuleOutputWithContext(ctx context.Context) SchedulerRuleOutput

type SchedulerRuleRule

type SchedulerRuleRule struct {
	// The priority of the rule.
	Priority *int `pulumi:"priority"`
	// The region where the interaction resource that is used in the scheduling rule is deployed. **NOTE:** This parameter is returned only if the RuleType parameter is set to 2.
	RegionId *string `pulumi:"regionId"`
	// The status of the scheduling rule.
	Status *int `pulumi:"status"`
	// The address type of the interaction resource. Valid values:
	// `A`: IPv4 address.
	// `CNAME`: CNAME record.
	Type *string `pulumi:"type"`
	// The address of the interaction resource.
	Value *string `pulumi:"value"`
	// Required. The type of the linked resource. It is an Integer. Valid values:
	// `1`: The IP address of Anti-DDoS Pro or Anti-DDoS Premium
	// `2`: the IP address of the interaction resource (in the tiered protection scenario)
	// `3`: the IP address used to accelerate access (in the network acceleration scenario)
	// `6` the IP address of the interaction resource (in the cloud service interaction scenario)
	ValueType *int `pulumi:"valueType"`
}

type SchedulerRuleRuleArgs

type SchedulerRuleRuleArgs struct {
	// The priority of the rule.
	Priority pulumi.IntPtrInput `pulumi:"priority"`
	// The region where the interaction resource that is used in the scheduling rule is deployed. **NOTE:** This parameter is returned only if the RuleType parameter is set to 2.
	RegionId pulumi.StringPtrInput `pulumi:"regionId"`
	// The status of the scheduling rule.
	Status pulumi.IntPtrInput `pulumi:"status"`
	// The address type of the interaction resource. Valid values:
	// `A`: IPv4 address.
	// `CNAME`: CNAME record.
	Type pulumi.StringPtrInput `pulumi:"type"`
	// The address of the interaction resource.
	Value pulumi.StringPtrInput `pulumi:"value"`
	// Required. The type of the linked resource. It is an Integer. Valid values:
	// `1`: The IP address of Anti-DDoS Pro or Anti-DDoS Premium
	// `2`: the IP address of the interaction resource (in the tiered protection scenario)
	// `3`: the IP address used to accelerate access (in the network acceleration scenario)
	// `6` the IP address of the interaction resource (in the cloud service interaction scenario)
	ValueType pulumi.IntPtrInput `pulumi:"valueType"`
}

func (SchedulerRuleRuleArgs) ElementType

func (SchedulerRuleRuleArgs) ElementType() reflect.Type

func (SchedulerRuleRuleArgs) ToOutput added in v3.43.1

func (SchedulerRuleRuleArgs) ToSchedulerRuleRuleOutput

func (i SchedulerRuleRuleArgs) ToSchedulerRuleRuleOutput() SchedulerRuleRuleOutput

func (SchedulerRuleRuleArgs) ToSchedulerRuleRuleOutputWithContext

func (i SchedulerRuleRuleArgs) ToSchedulerRuleRuleOutputWithContext(ctx context.Context) SchedulerRuleRuleOutput

type SchedulerRuleRuleArray

type SchedulerRuleRuleArray []SchedulerRuleRuleInput

func (SchedulerRuleRuleArray) ElementType

func (SchedulerRuleRuleArray) ElementType() reflect.Type

func (SchedulerRuleRuleArray) ToOutput added in v3.43.1

func (SchedulerRuleRuleArray) ToSchedulerRuleRuleArrayOutput

func (i SchedulerRuleRuleArray) ToSchedulerRuleRuleArrayOutput() SchedulerRuleRuleArrayOutput

func (SchedulerRuleRuleArray) ToSchedulerRuleRuleArrayOutputWithContext

func (i SchedulerRuleRuleArray) ToSchedulerRuleRuleArrayOutputWithContext(ctx context.Context) SchedulerRuleRuleArrayOutput

type SchedulerRuleRuleArrayInput

type SchedulerRuleRuleArrayInput interface {
	pulumi.Input

	ToSchedulerRuleRuleArrayOutput() SchedulerRuleRuleArrayOutput
	ToSchedulerRuleRuleArrayOutputWithContext(context.Context) SchedulerRuleRuleArrayOutput
}

SchedulerRuleRuleArrayInput is an input type that accepts SchedulerRuleRuleArray and SchedulerRuleRuleArrayOutput values. You can construct a concrete instance of `SchedulerRuleRuleArrayInput` via:

SchedulerRuleRuleArray{ SchedulerRuleRuleArgs{...} }

type SchedulerRuleRuleArrayOutput

type SchedulerRuleRuleArrayOutput struct{ *pulumi.OutputState }

func (SchedulerRuleRuleArrayOutput) ElementType

func (SchedulerRuleRuleArrayOutput) Index

func (SchedulerRuleRuleArrayOutput) ToOutput added in v3.43.1

func (SchedulerRuleRuleArrayOutput) ToSchedulerRuleRuleArrayOutput

func (o SchedulerRuleRuleArrayOutput) ToSchedulerRuleRuleArrayOutput() SchedulerRuleRuleArrayOutput

func (SchedulerRuleRuleArrayOutput) ToSchedulerRuleRuleArrayOutputWithContext

func (o SchedulerRuleRuleArrayOutput) ToSchedulerRuleRuleArrayOutputWithContext(ctx context.Context) SchedulerRuleRuleArrayOutput

type SchedulerRuleRuleInput

type SchedulerRuleRuleInput interface {
	pulumi.Input

	ToSchedulerRuleRuleOutput() SchedulerRuleRuleOutput
	ToSchedulerRuleRuleOutputWithContext(context.Context) SchedulerRuleRuleOutput
}

SchedulerRuleRuleInput is an input type that accepts SchedulerRuleRuleArgs and SchedulerRuleRuleOutput values. You can construct a concrete instance of `SchedulerRuleRuleInput` via:

SchedulerRuleRuleArgs{...}

type SchedulerRuleRuleOutput

type SchedulerRuleRuleOutput struct{ *pulumi.OutputState }

func (SchedulerRuleRuleOutput) ElementType

func (SchedulerRuleRuleOutput) ElementType() reflect.Type

func (SchedulerRuleRuleOutput) Priority

The priority of the rule.

func (SchedulerRuleRuleOutput) RegionId

The region where the interaction resource that is used in the scheduling rule is deployed. **NOTE:** This parameter is returned only if the RuleType parameter is set to 2.

func (SchedulerRuleRuleOutput) Status

The status of the scheduling rule.

func (SchedulerRuleRuleOutput) ToOutput added in v3.43.1

func (SchedulerRuleRuleOutput) ToSchedulerRuleRuleOutput

func (o SchedulerRuleRuleOutput) ToSchedulerRuleRuleOutput() SchedulerRuleRuleOutput

func (SchedulerRuleRuleOutput) ToSchedulerRuleRuleOutputWithContext

func (o SchedulerRuleRuleOutput) ToSchedulerRuleRuleOutputWithContext(ctx context.Context) SchedulerRuleRuleOutput

func (SchedulerRuleRuleOutput) Type

The address type of the interaction resource. Valid values: `A`: IPv4 address. `CNAME`: CNAME record.

func (SchedulerRuleRuleOutput) Value

The address of the interaction resource.

func (SchedulerRuleRuleOutput) ValueType

Required. The type of the linked resource. It is an Integer. Valid values: `1`: The IP address of Anti-DDoS Pro or Anti-DDoS Premium `2`: the IP address of the interaction resource (in the tiered protection scenario) `3`: the IP address used to accelerate access (in the network acceleration scenario) `6` the IP address of the interaction resource (in the cloud service interaction scenario)

type SchedulerRuleState

type SchedulerRuleState struct {
	// The cname is the traffic scheduler corresponding to rules.
	Cname pulumi.StringPtrInput
	// The scheduling rule for the Global Accelerator instance that interacts with Anti-DDoS Pro or Anti-DDoS Premium.
	Param pulumi.StringPtrInput
	// The ID of the resource group to which the anti-DDoS pro instance belongs in resource management. By default, no value is specified, indicating that the domains in the default resource group are listed.
	ResourceGroupId pulumi.StringPtrInput
	// The name of the rule.
	RuleName pulumi.StringPtrInput
	// The rule type. Valid values:
	// `2`: tiered protection.
	// `3`: globalization acceleration.
	// `6`: Cloud product interaction.
	RuleType pulumi.IntPtrInput
	// The information about the scheduling rules. See `rules` below.
	Rules SchedulerRuleRuleArrayInput
}

func (SchedulerRuleState) ElementType

func (SchedulerRuleState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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