cfw

package
v0.1.8 Latest Latest
Warning

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

Go to latest
Published: Jan 26, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PkgVersion

func PkgVersion() (semver.Version, error)

PkgVersion uses reflection to determine the version of the current package. If a version cannot be determined, v1 will be assumed. The second return value is always nil.

Types

type AddressTemplate

type AddressTemplate struct {
	pulumi.CustomResourceState

	// Template Detail.
	Detail pulumi.StringOutput `pulumi:"detail"`
	// Type is 1, ip template eg: 1.1.1.1,2.2.2.2; Type is 5, domain name template eg: www.qq.com, www.tencent.com.
	IpString pulumi.StringOutput `pulumi:"ipString"`
	// Template name.
	Name pulumi.StringOutput `pulumi:"name"`
	// 1: ip template; 5: domain name templates.
	Type pulumi.IntOutput `pulumi:"type"`
}

Provides a resource to create a cfw addressTemplate

## Example Usage ### If type is 1

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewAddressTemplate(ctx, "example", &Cfw.AddressTemplateArgs{
			Detail:   pulumi.String("test template"),
			IpString: pulumi.String("1.1.1.1,2.2.2.2"),
			Type:     pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### If type is 5

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewAddressTemplate(ctx, "example", &Cfw.AddressTemplateArgs{
			Detail:   pulumi.String("test template"),
			IpString: pulumi.String("www.qq.com,www.tencent.com"),
			Type:     pulumi.Int(5),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

cfw address_template can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Cfw/addressTemplate:AddressTemplate example mb_1300846651_1695611353900

```

func GetAddressTemplate

func GetAddressTemplate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AddressTemplateState, opts ...pulumi.ResourceOption) (*AddressTemplate, error)

GetAddressTemplate gets an existing AddressTemplate 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 NewAddressTemplate

func NewAddressTemplate(ctx *pulumi.Context,
	name string, args *AddressTemplateArgs, opts ...pulumi.ResourceOption) (*AddressTemplate, error)

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

func (*AddressTemplate) ElementType

func (*AddressTemplate) ElementType() reflect.Type

func (*AddressTemplate) ToAddressTemplateOutput

func (i *AddressTemplate) ToAddressTemplateOutput() AddressTemplateOutput

func (*AddressTemplate) ToAddressTemplateOutputWithContext

func (i *AddressTemplate) ToAddressTemplateOutputWithContext(ctx context.Context) AddressTemplateOutput

type AddressTemplateArgs

type AddressTemplateArgs struct {
	// Template Detail.
	Detail pulumi.StringInput
	// Type is 1, ip template eg: 1.1.1.1,2.2.2.2; Type is 5, domain name template eg: www.qq.com, www.tencent.com.
	IpString pulumi.StringInput
	// Template name.
	Name pulumi.StringPtrInput
	// 1: ip template; 5: domain name templates.
	Type pulumi.IntInput
}

The set of arguments for constructing a AddressTemplate resource.

func (AddressTemplateArgs) ElementType

func (AddressTemplateArgs) ElementType() reflect.Type

type AddressTemplateArray

type AddressTemplateArray []AddressTemplateInput

func (AddressTemplateArray) ElementType

func (AddressTemplateArray) ElementType() reflect.Type

func (AddressTemplateArray) ToAddressTemplateArrayOutput

func (i AddressTemplateArray) ToAddressTemplateArrayOutput() AddressTemplateArrayOutput

func (AddressTemplateArray) ToAddressTemplateArrayOutputWithContext

func (i AddressTemplateArray) ToAddressTemplateArrayOutputWithContext(ctx context.Context) AddressTemplateArrayOutput

type AddressTemplateArrayInput

type AddressTemplateArrayInput interface {
	pulumi.Input

	ToAddressTemplateArrayOutput() AddressTemplateArrayOutput
	ToAddressTemplateArrayOutputWithContext(context.Context) AddressTemplateArrayOutput
}

AddressTemplateArrayInput is an input type that accepts AddressTemplateArray and AddressTemplateArrayOutput values. You can construct a concrete instance of `AddressTemplateArrayInput` via:

AddressTemplateArray{ AddressTemplateArgs{...} }

type AddressTemplateArrayOutput

type AddressTemplateArrayOutput struct{ *pulumi.OutputState }

func (AddressTemplateArrayOutput) ElementType

func (AddressTemplateArrayOutput) ElementType() reflect.Type

func (AddressTemplateArrayOutput) Index

func (AddressTemplateArrayOutput) ToAddressTemplateArrayOutput

func (o AddressTemplateArrayOutput) ToAddressTemplateArrayOutput() AddressTemplateArrayOutput

func (AddressTemplateArrayOutput) ToAddressTemplateArrayOutputWithContext

func (o AddressTemplateArrayOutput) ToAddressTemplateArrayOutputWithContext(ctx context.Context) AddressTemplateArrayOutput

type AddressTemplateInput

type AddressTemplateInput interface {
	pulumi.Input

	ToAddressTemplateOutput() AddressTemplateOutput
	ToAddressTemplateOutputWithContext(ctx context.Context) AddressTemplateOutput
}

type AddressTemplateMap

type AddressTemplateMap map[string]AddressTemplateInput

func (AddressTemplateMap) ElementType

func (AddressTemplateMap) ElementType() reflect.Type

func (AddressTemplateMap) ToAddressTemplateMapOutput

func (i AddressTemplateMap) ToAddressTemplateMapOutput() AddressTemplateMapOutput

func (AddressTemplateMap) ToAddressTemplateMapOutputWithContext

func (i AddressTemplateMap) ToAddressTemplateMapOutputWithContext(ctx context.Context) AddressTemplateMapOutput

type AddressTemplateMapInput

type AddressTemplateMapInput interface {
	pulumi.Input

	ToAddressTemplateMapOutput() AddressTemplateMapOutput
	ToAddressTemplateMapOutputWithContext(context.Context) AddressTemplateMapOutput
}

AddressTemplateMapInput is an input type that accepts AddressTemplateMap and AddressTemplateMapOutput values. You can construct a concrete instance of `AddressTemplateMapInput` via:

AddressTemplateMap{ "key": AddressTemplateArgs{...} }

type AddressTemplateMapOutput

type AddressTemplateMapOutput struct{ *pulumi.OutputState }

func (AddressTemplateMapOutput) ElementType

func (AddressTemplateMapOutput) ElementType() reflect.Type

func (AddressTemplateMapOutput) MapIndex

func (AddressTemplateMapOutput) ToAddressTemplateMapOutput

func (o AddressTemplateMapOutput) ToAddressTemplateMapOutput() AddressTemplateMapOutput

func (AddressTemplateMapOutput) ToAddressTemplateMapOutputWithContext

func (o AddressTemplateMapOutput) ToAddressTemplateMapOutputWithContext(ctx context.Context) AddressTemplateMapOutput

type AddressTemplateOutput

type AddressTemplateOutput struct{ *pulumi.OutputState }

func (AddressTemplateOutput) Detail

Template Detail.

func (AddressTemplateOutput) ElementType

func (AddressTemplateOutput) ElementType() reflect.Type

func (AddressTemplateOutput) IpString

Type is 1, ip template eg: 1.1.1.1,2.2.2.2; Type is 5, domain name template eg: www.qq.com, www.tencent.com.

func (AddressTemplateOutput) Name

Template name.

func (AddressTemplateOutput) ToAddressTemplateOutput

func (o AddressTemplateOutput) ToAddressTemplateOutput() AddressTemplateOutput

func (AddressTemplateOutput) ToAddressTemplateOutputWithContext

func (o AddressTemplateOutput) ToAddressTemplateOutputWithContext(ctx context.Context) AddressTemplateOutput

func (AddressTemplateOutput) Type

1: ip template; 5: domain name templates.

type AddressTemplateState

type AddressTemplateState struct {
	// Template Detail.
	Detail pulumi.StringPtrInput
	// Type is 1, ip template eg: 1.1.1.1,2.2.2.2; Type is 5, domain name template eg: www.qq.com, www.tencent.com.
	IpString pulumi.StringPtrInput
	// Template name.
	Name pulumi.StringPtrInput
	// 1: ip template; 5: domain name templates.
	Type pulumi.IntPtrInput
}

func (AddressTemplateState) ElementType

func (AddressTemplateState) ElementType() reflect.Type

type BlockIgnore

type BlockIgnore struct {
	pulumi.CustomResourceState

	// Remarks information, length cannot exceed 50.
	Comment pulumi.StringPtrOutput `pulumi:"comment"`
	// Rule direction, 0 outbound, 1 inbound, 3 intranet.
	Direction pulumi.StringOutput `pulumi:"direction"`
	// Rule domain name, one of IP and Domain is required.
	Domain pulumi.StringPtrOutput `pulumi:"domain"`
	// Rule end time, format: 2006-01-02 15:04:05, must be greater than the current time.
	EndTime pulumi.StringOutput `pulumi:"endTime"`
	// Rule IP address, one of IP and Domain is required.
	Ip pulumi.StringPtrOutput `pulumi:"ip"`
	// Rule type, 1 block, 2 ignore, domain block is not supported.
	RuleType pulumi.IntOutput `pulumi:"ruleType"`
	// Rule start time.
	StartTime pulumi.StringOutput `pulumi:"startTime"`
}

Provides a resource to create a cfw blockIgnore

> **NOTE:** If create domain rule, `RuleType` not support set 2.

## Example Usage ### If create ip rule

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewBlockIgnore(ctx, "example", &Cfw.BlockIgnoreArgs{
			Comment:   pulumi.String("remark."),
			Direction: pulumi.String("0"),
			EndTime:   pulumi.String("2023-10-01 00:00:00"),
			Ip:        pulumi.String("1.1.1.1"),
			RuleType:  pulumi.Int(1),
			StartTime: pulumi.String("2023-09-01 00:00:00"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### If create domain rule

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewBlockIgnore(ctx, "example", &Cfw.BlockIgnoreArgs{
			Comment:   pulumi.String("remark."),
			Direction: pulumi.String("1"),
			Domain:    pulumi.String("domain.com"),
			EndTime:   pulumi.String("2023-10-01 00:00:00"),
			RuleType:  pulumi.Int(1),
			StartTime: pulumi.String("2023-09-01 00:00:00"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

cfw block_ignore_list can be imported using the id, e.g. If import ip rule

```sh

$ pulumi import tencentcloud:Cfw/blockIgnore:BlockIgnore example 1.1.1.1##0#1

```

If import domain rule

```sh

$ pulumi import tencentcloud:Cfw/blockIgnore:BlockIgnore example domain.com##0#1

```

func GetBlockIgnore

func GetBlockIgnore(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BlockIgnoreState, opts ...pulumi.ResourceOption) (*BlockIgnore, error)

GetBlockIgnore gets an existing BlockIgnore 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 NewBlockIgnore

func NewBlockIgnore(ctx *pulumi.Context,
	name string, args *BlockIgnoreArgs, opts ...pulumi.ResourceOption) (*BlockIgnore, error)

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

func (*BlockIgnore) ElementType

func (*BlockIgnore) ElementType() reflect.Type

func (*BlockIgnore) ToBlockIgnoreOutput

func (i *BlockIgnore) ToBlockIgnoreOutput() BlockIgnoreOutput

func (*BlockIgnore) ToBlockIgnoreOutputWithContext

func (i *BlockIgnore) ToBlockIgnoreOutputWithContext(ctx context.Context) BlockIgnoreOutput

type BlockIgnoreArgs

type BlockIgnoreArgs struct {
	// Remarks information, length cannot exceed 50.
	Comment pulumi.StringPtrInput
	// Rule direction, 0 outbound, 1 inbound, 3 intranet.
	Direction pulumi.StringInput
	// Rule domain name, one of IP and Domain is required.
	Domain pulumi.StringPtrInput
	// Rule end time, format: 2006-01-02 15:04:05, must be greater than the current time.
	EndTime pulumi.StringInput
	// Rule IP address, one of IP and Domain is required.
	Ip pulumi.StringPtrInput
	// Rule type, 1 block, 2 ignore, domain block is not supported.
	RuleType pulumi.IntInput
	// Rule start time.
	StartTime pulumi.StringPtrInput
}

The set of arguments for constructing a BlockIgnore resource.

func (BlockIgnoreArgs) ElementType

func (BlockIgnoreArgs) ElementType() reflect.Type

type BlockIgnoreArray

type BlockIgnoreArray []BlockIgnoreInput

func (BlockIgnoreArray) ElementType

func (BlockIgnoreArray) ElementType() reflect.Type

func (BlockIgnoreArray) ToBlockIgnoreArrayOutput

func (i BlockIgnoreArray) ToBlockIgnoreArrayOutput() BlockIgnoreArrayOutput

func (BlockIgnoreArray) ToBlockIgnoreArrayOutputWithContext

func (i BlockIgnoreArray) ToBlockIgnoreArrayOutputWithContext(ctx context.Context) BlockIgnoreArrayOutput

type BlockIgnoreArrayInput

type BlockIgnoreArrayInput interface {
	pulumi.Input

	ToBlockIgnoreArrayOutput() BlockIgnoreArrayOutput
	ToBlockIgnoreArrayOutputWithContext(context.Context) BlockIgnoreArrayOutput
}

BlockIgnoreArrayInput is an input type that accepts BlockIgnoreArray and BlockIgnoreArrayOutput values. You can construct a concrete instance of `BlockIgnoreArrayInput` via:

BlockIgnoreArray{ BlockIgnoreArgs{...} }

type BlockIgnoreArrayOutput

type BlockIgnoreArrayOutput struct{ *pulumi.OutputState }

func (BlockIgnoreArrayOutput) ElementType

func (BlockIgnoreArrayOutput) ElementType() reflect.Type

func (BlockIgnoreArrayOutput) Index

func (BlockIgnoreArrayOutput) ToBlockIgnoreArrayOutput

func (o BlockIgnoreArrayOutput) ToBlockIgnoreArrayOutput() BlockIgnoreArrayOutput

func (BlockIgnoreArrayOutput) ToBlockIgnoreArrayOutputWithContext

func (o BlockIgnoreArrayOutput) ToBlockIgnoreArrayOutputWithContext(ctx context.Context) BlockIgnoreArrayOutput

type BlockIgnoreInput

type BlockIgnoreInput interface {
	pulumi.Input

	ToBlockIgnoreOutput() BlockIgnoreOutput
	ToBlockIgnoreOutputWithContext(ctx context.Context) BlockIgnoreOutput
}

type BlockIgnoreMap

type BlockIgnoreMap map[string]BlockIgnoreInput

func (BlockIgnoreMap) ElementType

func (BlockIgnoreMap) ElementType() reflect.Type

func (BlockIgnoreMap) ToBlockIgnoreMapOutput

func (i BlockIgnoreMap) ToBlockIgnoreMapOutput() BlockIgnoreMapOutput

func (BlockIgnoreMap) ToBlockIgnoreMapOutputWithContext

func (i BlockIgnoreMap) ToBlockIgnoreMapOutputWithContext(ctx context.Context) BlockIgnoreMapOutput

type BlockIgnoreMapInput

type BlockIgnoreMapInput interface {
	pulumi.Input

	ToBlockIgnoreMapOutput() BlockIgnoreMapOutput
	ToBlockIgnoreMapOutputWithContext(context.Context) BlockIgnoreMapOutput
}

BlockIgnoreMapInput is an input type that accepts BlockIgnoreMap and BlockIgnoreMapOutput values. You can construct a concrete instance of `BlockIgnoreMapInput` via:

BlockIgnoreMap{ "key": BlockIgnoreArgs{...} }

type BlockIgnoreMapOutput

type BlockIgnoreMapOutput struct{ *pulumi.OutputState }

func (BlockIgnoreMapOutput) ElementType

func (BlockIgnoreMapOutput) ElementType() reflect.Type

func (BlockIgnoreMapOutput) MapIndex

func (BlockIgnoreMapOutput) ToBlockIgnoreMapOutput

func (o BlockIgnoreMapOutput) ToBlockIgnoreMapOutput() BlockIgnoreMapOutput

func (BlockIgnoreMapOutput) ToBlockIgnoreMapOutputWithContext

func (o BlockIgnoreMapOutput) ToBlockIgnoreMapOutputWithContext(ctx context.Context) BlockIgnoreMapOutput

type BlockIgnoreOutput

type BlockIgnoreOutput struct{ *pulumi.OutputState }

func (BlockIgnoreOutput) Comment

Remarks information, length cannot exceed 50.

func (BlockIgnoreOutput) Direction

func (o BlockIgnoreOutput) Direction() pulumi.StringOutput

Rule direction, 0 outbound, 1 inbound, 3 intranet.

func (BlockIgnoreOutput) Domain

Rule domain name, one of IP and Domain is required.

func (BlockIgnoreOutput) ElementType

func (BlockIgnoreOutput) ElementType() reflect.Type

func (BlockIgnoreOutput) EndTime

Rule end time, format: 2006-01-02 15:04:05, must be greater than the current time.

func (BlockIgnoreOutput) Ip

Rule IP address, one of IP and Domain is required.

func (BlockIgnoreOutput) RuleType

func (o BlockIgnoreOutput) RuleType() pulumi.IntOutput

Rule type, 1 block, 2 ignore, domain block is not supported.

func (BlockIgnoreOutput) StartTime

func (o BlockIgnoreOutput) StartTime() pulumi.StringOutput

Rule start time.

func (BlockIgnoreOutput) ToBlockIgnoreOutput

func (o BlockIgnoreOutput) ToBlockIgnoreOutput() BlockIgnoreOutput

func (BlockIgnoreOutput) ToBlockIgnoreOutputWithContext

func (o BlockIgnoreOutput) ToBlockIgnoreOutputWithContext(ctx context.Context) BlockIgnoreOutput

type BlockIgnoreState

type BlockIgnoreState struct {
	// Remarks information, length cannot exceed 50.
	Comment pulumi.StringPtrInput
	// Rule direction, 0 outbound, 1 inbound, 3 intranet.
	Direction pulumi.StringPtrInput
	// Rule domain name, one of IP and Domain is required.
	Domain pulumi.StringPtrInput
	// Rule end time, format: 2006-01-02 15:04:05, must be greater than the current time.
	EndTime pulumi.StringPtrInput
	// Rule IP address, one of IP and Domain is required.
	Ip pulumi.StringPtrInput
	// Rule type, 1 block, 2 ignore, domain block is not supported.
	RuleType pulumi.IntPtrInput
	// Rule start time.
	StartTime pulumi.StringPtrInput
}

func (BlockIgnoreState) ElementType

func (BlockIgnoreState) ElementType() reflect.Type

type EdgeFirewallSwitch

type EdgeFirewallSwitch struct {
	pulumi.CustomResourceState

	// Switch, 0: off, 1: on.
	Enable pulumi.IntOutput `pulumi:"enable"`
	// Public Ip.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// The first EIP switch in the vpc is turned on, and you need to specify a subnet to create a private connection. If `switchMode` is 1 and `enable` is 1, this field is required.
	SubnetId pulumi.StringPtrOutput `pulumi:"subnetId"`
	// 0: bypass; 1: serial.
	SwitchMode pulumi.IntOutput `pulumi:"switchMode"`
}

Provides a resource to create a cfw edgeFirewallSwitch

## Example Usage ### If not set subnetId

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleEdgeFwSwitches, err := Cfw.GetEdgeFwSwitches(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = Cfw.NewEdgeFirewallSwitch(ctx, "exampleEdgeFirewallSwitch", &Cfw.EdgeFirewallSwitchArgs{
			PublicIp:   pulumi.String(exampleEdgeFwSwitches.Datas[0].PublicIp),
			SwitchMode: pulumi.Int(1),
			Enable:     pulumi.Int(0),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### If set subnet id

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleEdgeFwSwitches, err := Cfw.GetEdgeFwSwitches(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = Cfw.NewEdgeFirewallSwitch(ctx, "exampleEdgeFirewallSwitch", &Cfw.EdgeFirewallSwitchArgs{
			PublicIp:   pulumi.String(exampleEdgeFwSwitches.Datas[0].PublicIp),
			SubnetId:   pulumi.String("subnet-id"),
			SwitchMode: pulumi.Int(1),
			Enable:     pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetEdgeFirewallSwitch

func GetEdgeFirewallSwitch(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EdgeFirewallSwitchState, opts ...pulumi.ResourceOption) (*EdgeFirewallSwitch, error)

GetEdgeFirewallSwitch gets an existing EdgeFirewallSwitch 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 NewEdgeFirewallSwitch

func NewEdgeFirewallSwitch(ctx *pulumi.Context,
	name string, args *EdgeFirewallSwitchArgs, opts ...pulumi.ResourceOption) (*EdgeFirewallSwitch, error)

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

func (*EdgeFirewallSwitch) ElementType

func (*EdgeFirewallSwitch) ElementType() reflect.Type

func (*EdgeFirewallSwitch) ToEdgeFirewallSwitchOutput

func (i *EdgeFirewallSwitch) ToEdgeFirewallSwitchOutput() EdgeFirewallSwitchOutput

func (*EdgeFirewallSwitch) ToEdgeFirewallSwitchOutputWithContext

func (i *EdgeFirewallSwitch) ToEdgeFirewallSwitchOutputWithContext(ctx context.Context) EdgeFirewallSwitchOutput

type EdgeFirewallSwitchArgs

type EdgeFirewallSwitchArgs struct {
	// Switch, 0: off, 1: on.
	Enable pulumi.IntInput
	// Public Ip.
	PublicIp pulumi.StringInput
	// The first EIP switch in the vpc is turned on, and you need to specify a subnet to create a private connection. If `switchMode` is 1 and `enable` is 1, this field is required.
	SubnetId pulumi.StringPtrInput
	// 0: bypass; 1: serial.
	SwitchMode pulumi.IntInput
}

The set of arguments for constructing a EdgeFirewallSwitch resource.

func (EdgeFirewallSwitchArgs) ElementType

func (EdgeFirewallSwitchArgs) ElementType() reflect.Type

type EdgeFirewallSwitchArray

type EdgeFirewallSwitchArray []EdgeFirewallSwitchInput

func (EdgeFirewallSwitchArray) ElementType

func (EdgeFirewallSwitchArray) ElementType() reflect.Type

func (EdgeFirewallSwitchArray) ToEdgeFirewallSwitchArrayOutput

func (i EdgeFirewallSwitchArray) ToEdgeFirewallSwitchArrayOutput() EdgeFirewallSwitchArrayOutput

func (EdgeFirewallSwitchArray) ToEdgeFirewallSwitchArrayOutputWithContext

func (i EdgeFirewallSwitchArray) ToEdgeFirewallSwitchArrayOutputWithContext(ctx context.Context) EdgeFirewallSwitchArrayOutput

type EdgeFirewallSwitchArrayInput

type EdgeFirewallSwitchArrayInput interface {
	pulumi.Input

	ToEdgeFirewallSwitchArrayOutput() EdgeFirewallSwitchArrayOutput
	ToEdgeFirewallSwitchArrayOutputWithContext(context.Context) EdgeFirewallSwitchArrayOutput
}

EdgeFirewallSwitchArrayInput is an input type that accepts EdgeFirewallSwitchArray and EdgeFirewallSwitchArrayOutput values. You can construct a concrete instance of `EdgeFirewallSwitchArrayInput` via:

EdgeFirewallSwitchArray{ EdgeFirewallSwitchArgs{...} }

type EdgeFirewallSwitchArrayOutput

type EdgeFirewallSwitchArrayOutput struct{ *pulumi.OutputState }

func (EdgeFirewallSwitchArrayOutput) ElementType

func (EdgeFirewallSwitchArrayOutput) Index

func (EdgeFirewallSwitchArrayOutput) ToEdgeFirewallSwitchArrayOutput

func (o EdgeFirewallSwitchArrayOutput) ToEdgeFirewallSwitchArrayOutput() EdgeFirewallSwitchArrayOutput

func (EdgeFirewallSwitchArrayOutput) ToEdgeFirewallSwitchArrayOutputWithContext

func (o EdgeFirewallSwitchArrayOutput) ToEdgeFirewallSwitchArrayOutputWithContext(ctx context.Context) EdgeFirewallSwitchArrayOutput

type EdgeFirewallSwitchInput

type EdgeFirewallSwitchInput interface {
	pulumi.Input

	ToEdgeFirewallSwitchOutput() EdgeFirewallSwitchOutput
	ToEdgeFirewallSwitchOutputWithContext(ctx context.Context) EdgeFirewallSwitchOutput
}

type EdgeFirewallSwitchMap

type EdgeFirewallSwitchMap map[string]EdgeFirewallSwitchInput

func (EdgeFirewallSwitchMap) ElementType

func (EdgeFirewallSwitchMap) ElementType() reflect.Type

func (EdgeFirewallSwitchMap) ToEdgeFirewallSwitchMapOutput

func (i EdgeFirewallSwitchMap) ToEdgeFirewallSwitchMapOutput() EdgeFirewallSwitchMapOutput

func (EdgeFirewallSwitchMap) ToEdgeFirewallSwitchMapOutputWithContext

func (i EdgeFirewallSwitchMap) ToEdgeFirewallSwitchMapOutputWithContext(ctx context.Context) EdgeFirewallSwitchMapOutput

type EdgeFirewallSwitchMapInput

type EdgeFirewallSwitchMapInput interface {
	pulumi.Input

	ToEdgeFirewallSwitchMapOutput() EdgeFirewallSwitchMapOutput
	ToEdgeFirewallSwitchMapOutputWithContext(context.Context) EdgeFirewallSwitchMapOutput
}

EdgeFirewallSwitchMapInput is an input type that accepts EdgeFirewallSwitchMap and EdgeFirewallSwitchMapOutput values. You can construct a concrete instance of `EdgeFirewallSwitchMapInput` via:

EdgeFirewallSwitchMap{ "key": EdgeFirewallSwitchArgs{...} }

type EdgeFirewallSwitchMapOutput

type EdgeFirewallSwitchMapOutput struct{ *pulumi.OutputState }

func (EdgeFirewallSwitchMapOutput) ElementType

func (EdgeFirewallSwitchMapOutput) MapIndex

func (EdgeFirewallSwitchMapOutput) ToEdgeFirewallSwitchMapOutput

func (o EdgeFirewallSwitchMapOutput) ToEdgeFirewallSwitchMapOutput() EdgeFirewallSwitchMapOutput

func (EdgeFirewallSwitchMapOutput) ToEdgeFirewallSwitchMapOutputWithContext

func (o EdgeFirewallSwitchMapOutput) ToEdgeFirewallSwitchMapOutputWithContext(ctx context.Context) EdgeFirewallSwitchMapOutput

type EdgeFirewallSwitchOutput

type EdgeFirewallSwitchOutput struct{ *pulumi.OutputState }

func (EdgeFirewallSwitchOutput) ElementType

func (EdgeFirewallSwitchOutput) ElementType() reflect.Type

func (EdgeFirewallSwitchOutput) Enable

Switch, 0: off, 1: on.

func (EdgeFirewallSwitchOutput) PublicIp

Public Ip.

func (EdgeFirewallSwitchOutput) SubnetId

The first EIP switch in the vpc is turned on, and you need to specify a subnet to create a private connection. If `switchMode` is 1 and `enable` is 1, this field is required.

func (EdgeFirewallSwitchOutput) SwitchMode

func (o EdgeFirewallSwitchOutput) SwitchMode() pulumi.IntOutput

0: bypass; 1: serial.

func (EdgeFirewallSwitchOutput) ToEdgeFirewallSwitchOutput

func (o EdgeFirewallSwitchOutput) ToEdgeFirewallSwitchOutput() EdgeFirewallSwitchOutput

func (EdgeFirewallSwitchOutput) ToEdgeFirewallSwitchOutputWithContext

func (o EdgeFirewallSwitchOutput) ToEdgeFirewallSwitchOutputWithContext(ctx context.Context) EdgeFirewallSwitchOutput

type EdgeFirewallSwitchState

type EdgeFirewallSwitchState struct {
	// Switch, 0: off, 1: on.
	Enable pulumi.IntPtrInput
	// Public Ip.
	PublicIp pulumi.StringPtrInput
	// The first EIP switch in the vpc is turned on, and you need to specify a subnet to create a private connection. If `switchMode` is 1 and `enable` is 1, this field is required.
	SubnetId pulumi.StringPtrInput
	// 0: bypass; 1: serial.
	SwitchMode pulumi.IntPtrInput
}

func (EdgeFirewallSwitchState) ElementType

func (EdgeFirewallSwitchState) ElementType() reflect.Type

type EdgePolicy

type EdgePolicy struct {
	pulumi.CustomResourceState

	// Description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Rule direction: 1, inbound; 0, outbound.
	Direction pulumi.IntOutput `pulumi:"direction"`
	// Rule status, true means enabled, false means disabled. Default is true.
	Enable pulumi.StringPtrOutput `pulumi:"enable"`
	// Parameter template id.
	ParamTemplateId pulumi.StringOutput `pulumi:"paramTemplateId"`
	// The port for the access control policy. Value: -1/-1: All ports 80: Port 80.
	Port pulumi.StringOutput `pulumi:"port"`
	// Protocol. If Direction=1 && Scope=serial, optional values: TCP UDP ICMP ANY HTTP HTTPS HTTP/HTTPS SMTP SMTPS SMTP/SMTPS FTP DNS; If Direction=1 && Scope!=serial, optional values: TCP; If Direction=0 && Scope=serial, optional values: TCP UDP ICMP ANY HTTP HTTPS HTTP/HTTPS SMTP SMTPS SMTP/SMTPS FTP DNS; If Direction=0 && Scope!=serial, optional values: TCP HTTP/HTTPS TLS/SSL.
	Protocol pulumi.StringOutput `pulumi:"protocol"`
	// How the traffic set in the access control policy passes through the cloud firewall. Values: accept: allow; drop: reject; log: observe.
	RuleAction pulumi.StringOutput `pulumi:"ruleAction"`
	// Effective range. serial: serial; side: bypass; all: global, Default is all.
	Scope pulumi.StringPtrOutput `pulumi:"scope"`
	// Access source example: net:IP/CIDR(192.168.0.2).
	SourceContent pulumi.StringOutput `pulumi:"sourceContent"`
	// Access source type: for inbound rules, the type can be net, location, vendor, template; for outbound rules, it can be net, instance, tag, template, group.
	SourceType pulumi.StringOutput `pulumi:"sourceType"`
	// Example of access purpose: net: IP/CIDR(192.168.0.2) domain: domain name rules, such as *.qq.com.
	TargetContent pulumi.StringOutput `pulumi:"targetContent"`
	// Access purpose type: For inbound rules, the type can be net, instance, tag, template, group; for outbound rules, it can be net, location, vendor, template.
	TargetType pulumi.StringOutput `pulumi:"targetType"`
	// The unique id corresponding to the rule, no need to fill in when creating the rule.
	Uuid pulumi.IntOutput `pulumi:"uuid"`
}

Provides a resource to create a cfw edgePolicy

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewEdgePolicy(ctx, "example", &Cfw.EdgePolicyArgs{
			Description:   pulumi.String("policy description."),
			Direction:     pulumi.Int(1),
			Enable:        pulumi.String("true"),
			Port:          pulumi.String("-1/-1"),
			Protocol:      pulumi.String("TCP"),
			RuleAction:    pulumi.String("drop"),
			Scope:         pulumi.String("all"),
			SourceContent: pulumi.String("1.1.1.1/0"),
			SourceType:    pulumi.String("net"),
			TargetContent: pulumi.String("0.0.0.0/0"),
			TargetType:    pulumi.String("net"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### If targetType is tag

```go package main

import (

"encoding/json"

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"Key":   "test",
			"Value": "dddd",
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		_, err := Cfw.NewEdgePolicy(ctx, "example", &Cfw.EdgePolicyArgs{
			SourceContent: pulumi.String("0.0.0.0/0"),
			SourceType:    pulumi.String("net"),
			TargetContent: pulumi.String(json0),
			TargetType:    pulumi.String("tag"),
			Protocol:      pulumi.String("TCP"),
			RuleAction:    pulumi.String("drop"),
			Port:          pulumi.String("-1/-1"),
			Direction:     pulumi.Int(1),
			Enable:        pulumi.String("true"),
			Description:   pulumi.String("policy description."),
			Scope:         pulumi.String("all"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

cfw edge_policy can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Cfw/edgePolicy:EdgePolicy example edge_policy_id

```

func GetEdgePolicy

func GetEdgePolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EdgePolicyState, opts ...pulumi.ResourceOption) (*EdgePolicy, error)

GetEdgePolicy gets an existing EdgePolicy 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 NewEdgePolicy

func NewEdgePolicy(ctx *pulumi.Context,
	name string, args *EdgePolicyArgs, opts ...pulumi.ResourceOption) (*EdgePolicy, error)

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

func (*EdgePolicy) ElementType

func (*EdgePolicy) ElementType() reflect.Type

func (*EdgePolicy) ToEdgePolicyOutput

func (i *EdgePolicy) ToEdgePolicyOutput() EdgePolicyOutput

func (*EdgePolicy) ToEdgePolicyOutputWithContext

func (i *EdgePolicy) ToEdgePolicyOutputWithContext(ctx context.Context) EdgePolicyOutput

type EdgePolicyArgs

type EdgePolicyArgs struct {
	// Description.
	Description pulumi.StringPtrInput
	// Rule direction: 1, inbound; 0, outbound.
	Direction pulumi.IntInput
	// Rule status, true means enabled, false means disabled. Default is true.
	Enable pulumi.StringPtrInput
	// The port for the access control policy. Value: -1/-1: All ports 80: Port 80.
	Port pulumi.StringInput
	// Protocol. If Direction=1 && Scope=serial, optional values: TCP UDP ICMP ANY HTTP HTTPS HTTP/HTTPS SMTP SMTPS SMTP/SMTPS FTP DNS; If Direction=1 && Scope!=serial, optional values: TCP; If Direction=0 && Scope=serial, optional values: TCP UDP ICMP ANY HTTP HTTPS HTTP/HTTPS SMTP SMTPS SMTP/SMTPS FTP DNS; If Direction=0 && Scope!=serial, optional values: TCP HTTP/HTTPS TLS/SSL.
	Protocol pulumi.StringInput
	// How the traffic set in the access control policy passes through the cloud firewall. Values: accept: allow; drop: reject; log: observe.
	RuleAction pulumi.StringInput
	// Effective range. serial: serial; side: bypass; all: global, Default is all.
	Scope pulumi.StringPtrInput
	// Access source example: net:IP/CIDR(192.168.0.2).
	SourceContent pulumi.StringInput
	// Access source type: for inbound rules, the type can be net, location, vendor, template; for outbound rules, it can be net, instance, tag, template, group.
	SourceType pulumi.StringInput
	// Example of access purpose: net: IP/CIDR(192.168.0.2) domain: domain name rules, such as *.qq.com.
	TargetContent pulumi.StringInput
	// Access purpose type: For inbound rules, the type can be net, instance, tag, template, group; for outbound rules, it can be net, location, vendor, template.
	TargetType pulumi.StringInput
}

The set of arguments for constructing a EdgePolicy resource.

func (EdgePolicyArgs) ElementType

func (EdgePolicyArgs) ElementType() reflect.Type

type EdgePolicyArray

type EdgePolicyArray []EdgePolicyInput

func (EdgePolicyArray) ElementType

func (EdgePolicyArray) ElementType() reflect.Type

func (EdgePolicyArray) ToEdgePolicyArrayOutput

func (i EdgePolicyArray) ToEdgePolicyArrayOutput() EdgePolicyArrayOutput

func (EdgePolicyArray) ToEdgePolicyArrayOutputWithContext

func (i EdgePolicyArray) ToEdgePolicyArrayOutputWithContext(ctx context.Context) EdgePolicyArrayOutput

type EdgePolicyArrayInput

type EdgePolicyArrayInput interface {
	pulumi.Input

	ToEdgePolicyArrayOutput() EdgePolicyArrayOutput
	ToEdgePolicyArrayOutputWithContext(context.Context) EdgePolicyArrayOutput
}

EdgePolicyArrayInput is an input type that accepts EdgePolicyArray and EdgePolicyArrayOutput values. You can construct a concrete instance of `EdgePolicyArrayInput` via:

EdgePolicyArray{ EdgePolicyArgs{...} }

type EdgePolicyArrayOutput

type EdgePolicyArrayOutput struct{ *pulumi.OutputState }

func (EdgePolicyArrayOutput) ElementType

func (EdgePolicyArrayOutput) ElementType() reflect.Type

func (EdgePolicyArrayOutput) Index

func (EdgePolicyArrayOutput) ToEdgePolicyArrayOutput

func (o EdgePolicyArrayOutput) ToEdgePolicyArrayOutput() EdgePolicyArrayOutput

func (EdgePolicyArrayOutput) ToEdgePolicyArrayOutputWithContext

func (o EdgePolicyArrayOutput) ToEdgePolicyArrayOutputWithContext(ctx context.Context) EdgePolicyArrayOutput

type EdgePolicyInput

type EdgePolicyInput interface {
	pulumi.Input

	ToEdgePolicyOutput() EdgePolicyOutput
	ToEdgePolicyOutputWithContext(ctx context.Context) EdgePolicyOutput
}

type EdgePolicyMap

type EdgePolicyMap map[string]EdgePolicyInput

func (EdgePolicyMap) ElementType

func (EdgePolicyMap) ElementType() reflect.Type

func (EdgePolicyMap) ToEdgePolicyMapOutput

func (i EdgePolicyMap) ToEdgePolicyMapOutput() EdgePolicyMapOutput

func (EdgePolicyMap) ToEdgePolicyMapOutputWithContext

func (i EdgePolicyMap) ToEdgePolicyMapOutputWithContext(ctx context.Context) EdgePolicyMapOutput

type EdgePolicyMapInput

type EdgePolicyMapInput interface {
	pulumi.Input

	ToEdgePolicyMapOutput() EdgePolicyMapOutput
	ToEdgePolicyMapOutputWithContext(context.Context) EdgePolicyMapOutput
}

EdgePolicyMapInput is an input type that accepts EdgePolicyMap and EdgePolicyMapOutput values. You can construct a concrete instance of `EdgePolicyMapInput` via:

EdgePolicyMap{ "key": EdgePolicyArgs{...} }

type EdgePolicyMapOutput

type EdgePolicyMapOutput struct{ *pulumi.OutputState }

func (EdgePolicyMapOutput) ElementType

func (EdgePolicyMapOutput) ElementType() reflect.Type

func (EdgePolicyMapOutput) MapIndex

func (EdgePolicyMapOutput) ToEdgePolicyMapOutput

func (o EdgePolicyMapOutput) ToEdgePolicyMapOutput() EdgePolicyMapOutput

func (EdgePolicyMapOutput) ToEdgePolicyMapOutputWithContext

func (o EdgePolicyMapOutput) ToEdgePolicyMapOutputWithContext(ctx context.Context) EdgePolicyMapOutput

type EdgePolicyOutput

type EdgePolicyOutput struct{ *pulumi.OutputState }

func (EdgePolicyOutput) Description

func (o EdgePolicyOutput) Description() pulumi.StringPtrOutput

Description.

func (EdgePolicyOutput) Direction

func (o EdgePolicyOutput) Direction() pulumi.IntOutput

Rule direction: 1, inbound; 0, outbound.

func (EdgePolicyOutput) ElementType

func (EdgePolicyOutput) ElementType() reflect.Type

func (EdgePolicyOutput) Enable

Rule status, true means enabled, false means disabled. Default is true.

func (EdgePolicyOutput) ParamTemplateId

func (o EdgePolicyOutput) ParamTemplateId() pulumi.StringOutput

Parameter template id.

func (EdgePolicyOutput) Port

The port for the access control policy. Value: -1/-1: All ports 80: Port 80.

func (EdgePolicyOutput) Protocol

func (o EdgePolicyOutput) Protocol() pulumi.StringOutput

Protocol. If Direction=1 && Scope=serial, optional values: TCP UDP ICMP ANY HTTP HTTPS HTTP/HTTPS SMTP SMTPS SMTP/SMTPS FTP DNS; If Direction=1 && Scope!=serial, optional values: TCP; If Direction=0 && Scope=serial, optional values: TCP UDP ICMP ANY HTTP HTTPS HTTP/HTTPS SMTP SMTPS SMTP/SMTPS FTP DNS; If Direction=0 && Scope!=serial, optional values: TCP HTTP/HTTPS TLS/SSL.

func (EdgePolicyOutput) RuleAction

func (o EdgePolicyOutput) RuleAction() pulumi.StringOutput

How the traffic set in the access control policy passes through the cloud firewall. Values: accept: allow; drop: reject; log: observe.

func (EdgePolicyOutput) Scope

Effective range. serial: serial; side: bypass; all: global, Default is all.

func (EdgePolicyOutput) SourceContent

func (o EdgePolicyOutput) SourceContent() pulumi.StringOutput

Access source example: net:IP/CIDR(192.168.0.2).

func (EdgePolicyOutput) SourceType

func (o EdgePolicyOutput) SourceType() pulumi.StringOutput

Access source type: for inbound rules, the type can be net, location, vendor, template; for outbound rules, it can be net, instance, tag, template, group.

func (EdgePolicyOutput) TargetContent

func (o EdgePolicyOutput) TargetContent() pulumi.StringOutput

Example of access purpose: net: IP/CIDR(192.168.0.2) domain: domain name rules, such as *.qq.com.

func (EdgePolicyOutput) TargetType

func (o EdgePolicyOutput) TargetType() pulumi.StringOutput

Access purpose type: For inbound rules, the type can be net, instance, tag, template, group; for outbound rules, it can be net, location, vendor, template.

func (EdgePolicyOutput) ToEdgePolicyOutput

func (o EdgePolicyOutput) ToEdgePolicyOutput() EdgePolicyOutput

func (EdgePolicyOutput) ToEdgePolicyOutputWithContext

func (o EdgePolicyOutput) ToEdgePolicyOutputWithContext(ctx context.Context) EdgePolicyOutput

func (EdgePolicyOutput) Uuid

The unique id corresponding to the rule, no need to fill in when creating the rule.

type EdgePolicyState

type EdgePolicyState struct {
	// Description.
	Description pulumi.StringPtrInput
	// Rule direction: 1, inbound; 0, outbound.
	Direction pulumi.IntPtrInput
	// Rule status, true means enabled, false means disabled. Default is true.
	Enable pulumi.StringPtrInput
	// Parameter template id.
	ParamTemplateId pulumi.StringPtrInput
	// The port for the access control policy. Value: -1/-1: All ports 80: Port 80.
	Port pulumi.StringPtrInput
	// Protocol. If Direction=1 && Scope=serial, optional values: TCP UDP ICMP ANY HTTP HTTPS HTTP/HTTPS SMTP SMTPS SMTP/SMTPS FTP DNS; If Direction=1 && Scope!=serial, optional values: TCP; If Direction=0 && Scope=serial, optional values: TCP UDP ICMP ANY HTTP HTTPS HTTP/HTTPS SMTP SMTPS SMTP/SMTPS FTP DNS; If Direction=0 && Scope!=serial, optional values: TCP HTTP/HTTPS TLS/SSL.
	Protocol pulumi.StringPtrInput
	// How the traffic set in the access control policy passes through the cloud firewall. Values: accept: allow; drop: reject; log: observe.
	RuleAction pulumi.StringPtrInput
	// Effective range. serial: serial; side: bypass; all: global, Default is all.
	Scope pulumi.StringPtrInput
	// Access source example: net:IP/CIDR(192.168.0.2).
	SourceContent pulumi.StringPtrInput
	// Access source type: for inbound rules, the type can be net, location, vendor, template; for outbound rules, it can be net, instance, tag, template, group.
	SourceType pulumi.StringPtrInput
	// Example of access purpose: net: IP/CIDR(192.168.0.2) domain: domain name rules, such as *.qq.com.
	TargetContent pulumi.StringPtrInput
	// Access purpose type: For inbound rules, the type can be net, instance, tag, template, group; for outbound rules, it can be net, location, vendor, template.
	TargetType pulumi.StringPtrInput
	// The unique id corresponding to the rule, no need to fill in when creating the rule.
	Uuid pulumi.IntPtrInput
}

func (EdgePolicyState) ElementType

func (EdgePolicyState) ElementType() reflect.Type

type GetEdgeFwSwitchesArgs

type GetEdgeFwSwitchesArgs struct {
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
}

A collection of arguments for invoking getEdgeFwSwitches.

type GetEdgeFwSwitchesData

type GetEdgeFwSwitchesData struct {
	// Asset Type.
	AssetType string `pulumi:"assetType"`
	// Instance Id.
	InstanceId string `pulumi:"instanceId"`
	// Instance Name.
	InstanceName string `pulumi:"instanceName"`
	// Intranet Ip.
	IntranetIp string `pulumi:"intranetIp"`
	// public ip.
	PublicIp string `pulumi:"publicIp"`
	// Public IP type.
	PublicIpType int `pulumi:"publicIpType"`
	// region.
	Region string `pulumi:"region"`
	// status.
	Status int `pulumi:"status"`
	// switch mode.
	SwitchMode int `pulumi:"switchMode"`
	// vpc id.
	VpcId string `pulumi:"vpcId"`
}

type GetEdgeFwSwitchesDataArgs

type GetEdgeFwSwitchesDataArgs struct {
	// Asset Type.
	AssetType pulumi.StringInput `pulumi:"assetType"`
	// Instance Id.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// Instance Name.
	InstanceName pulumi.StringInput `pulumi:"instanceName"`
	// Intranet Ip.
	IntranetIp pulumi.StringInput `pulumi:"intranetIp"`
	// public ip.
	PublicIp pulumi.StringInput `pulumi:"publicIp"`
	// Public IP type.
	PublicIpType pulumi.IntInput `pulumi:"publicIpType"`
	// region.
	Region pulumi.StringInput `pulumi:"region"`
	// status.
	Status pulumi.IntInput `pulumi:"status"`
	// switch mode.
	SwitchMode pulumi.IntInput `pulumi:"switchMode"`
	// vpc id.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetEdgeFwSwitchesDataArgs) ElementType

func (GetEdgeFwSwitchesDataArgs) ElementType() reflect.Type

func (GetEdgeFwSwitchesDataArgs) ToGetEdgeFwSwitchesDataOutput

func (i GetEdgeFwSwitchesDataArgs) ToGetEdgeFwSwitchesDataOutput() GetEdgeFwSwitchesDataOutput

func (GetEdgeFwSwitchesDataArgs) ToGetEdgeFwSwitchesDataOutputWithContext

func (i GetEdgeFwSwitchesDataArgs) ToGetEdgeFwSwitchesDataOutputWithContext(ctx context.Context) GetEdgeFwSwitchesDataOutput

type GetEdgeFwSwitchesDataArray

type GetEdgeFwSwitchesDataArray []GetEdgeFwSwitchesDataInput

func (GetEdgeFwSwitchesDataArray) ElementType

func (GetEdgeFwSwitchesDataArray) ElementType() reflect.Type

func (GetEdgeFwSwitchesDataArray) ToGetEdgeFwSwitchesDataArrayOutput

func (i GetEdgeFwSwitchesDataArray) ToGetEdgeFwSwitchesDataArrayOutput() GetEdgeFwSwitchesDataArrayOutput

func (GetEdgeFwSwitchesDataArray) ToGetEdgeFwSwitchesDataArrayOutputWithContext

func (i GetEdgeFwSwitchesDataArray) ToGetEdgeFwSwitchesDataArrayOutputWithContext(ctx context.Context) GetEdgeFwSwitchesDataArrayOutput

type GetEdgeFwSwitchesDataArrayInput

type GetEdgeFwSwitchesDataArrayInput interface {
	pulumi.Input

	ToGetEdgeFwSwitchesDataArrayOutput() GetEdgeFwSwitchesDataArrayOutput
	ToGetEdgeFwSwitchesDataArrayOutputWithContext(context.Context) GetEdgeFwSwitchesDataArrayOutput
}

GetEdgeFwSwitchesDataArrayInput is an input type that accepts GetEdgeFwSwitchesDataArray and GetEdgeFwSwitchesDataArrayOutput values. You can construct a concrete instance of `GetEdgeFwSwitchesDataArrayInput` via:

GetEdgeFwSwitchesDataArray{ GetEdgeFwSwitchesDataArgs{...} }

type GetEdgeFwSwitchesDataArrayOutput

type GetEdgeFwSwitchesDataArrayOutput struct{ *pulumi.OutputState }

func (GetEdgeFwSwitchesDataArrayOutput) ElementType

func (GetEdgeFwSwitchesDataArrayOutput) Index

func (GetEdgeFwSwitchesDataArrayOutput) ToGetEdgeFwSwitchesDataArrayOutput

func (o GetEdgeFwSwitchesDataArrayOutput) ToGetEdgeFwSwitchesDataArrayOutput() GetEdgeFwSwitchesDataArrayOutput

func (GetEdgeFwSwitchesDataArrayOutput) ToGetEdgeFwSwitchesDataArrayOutputWithContext

func (o GetEdgeFwSwitchesDataArrayOutput) ToGetEdgeFwSwitchesDataArrayOutputWithContext(ctx context.Context) GetEdgeFwSwitchesDataArrayOutput

type GetEdgeFwSwitchesDataInput

type GetEdgeFwSwitchesDataInput interface {
	pulumi.Input

	ToGetEdgeFwSwitchesDataOutput() GetEdgeFwSwitchesDataOutput
	ToGetEdgeFwSwitchesDataOutputWithContext(context.Context) GetEdgeFwSwitchesDataOutput
}

GetEdgeFwSwitchesDataInput is an input type that accepts GetEdgeFwSwitchesDataArgs and GetEdgeFwSwitchesDataOutput values. You can construct a concrete instance of `GetEdgeFwSwitchesDataInput` via:

GetEdgeFwSwitchesDataArgs{...}

type GetEdgeFwSwitchesDataOutput

type GetEdgeFwSwitchesDataOutput struct{ *pulumi.OutputState }

func (GetEdgeFwSwitchesDataOutput) AssetType

Asset Type.

func (GetEdgeFwSwitchesDataOutput) ElementType

func (GetEdgeFwSwitchesDataOutput) InstanceId

Instance Id.

func (GetEdgeFwSwitchesDataOutput) InstanceName

Instance Name.

func (GetEdgeFwSwitchesDataOutput) IntranetIp

Intranet Ip.

func (GetEdgeFwSwitchesDataOutput) PublicIp

public ip.

func (GetEdgeFwSwitchesDataOutput) PublicIpType

func (o GetEdgeFwSwitchesDataOutput) PublicIpType() pulumi.IntOutput

Public IP type.

func (GetEdgeFwSwitchesDataOutput) Region

region.

func (GetEdgeFwSwitchesDataOutput) Status

status.

func (GetEdgeFwSwitchesDataOutput) SwitchMode

switch mode.

func (GetEdgeFwSwitchesDataOutput) ToGetEdgeFwSwitchesDataOutput

func (o GetEdgeFwSwitchesDataOutput) ToGetEdgeFwSwitchesDataOutput() GetEdgeFwSwitchesDataOutput

func (GetEdgeFwSwitchesDataOutput) ToGetEdgeFwSwitchesDataOutputWithContext

func (o GetEdgeFwSwitchesDataOutput) ToGetEdgeFwSwitchesDataOutputWithContext(ctx context.Context) GetEdgeFwSwitchesDataOutput

func (GetEdgeFwSwitchesDataOutput) VpcId

vpc id.

type GetEdgeFwSwitchesOutputArgs

type GetEdgeFwSwitchesOutputArgs struct {
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
}

A collection of arguments for invoking getEdgeFwSwitches.

func (GetEdgeFwSwitchesOutputArgs) ElementType

type GetEdgeFwSwitchesResult

type GetEdgeFwSwitchesResult struct {
	// Ip switch list.
	Datas []GetEdgeFwSwitchesData `pulumi:"datas"`
	// The provider-assigned unique ID for this managed resource.
	Id               string  `pulumi:"id"`
	ResultOutputFile *string `pulumi:"resultOutputFile"`
}

A collection of values returned by getEdgeFwSwitches.

func GetEdgeFwSwitches

func GetEdgeFwSwitches(ctx *pulumi.Context, args *GetEdgeFwSwitchesArgs, opts ...pulumi.InvokeOption) (*GetEdgeFwSwitchesResult, error)

Use this data source to query detailed information of cfw edgeFwSwitches

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.GetEdgeFwSwitches(ctx, nil, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetEdgeFwSwitchesResultOutput

type GetEdgeFwSwitchesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getEdgeFwSwitches.

func (GetEdgeFwSwitchesResultOutput) Datas

Ip switch list.

func (GetEdgeFwSwitchesResultOutput) ElementType

func (GetEdgeFwSwitchesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetEdgeFwSwitchesResultOutput) ResultOutputFile

func (GetEdgeFwSwitchesResultOutput) ToGetEdgeFwSwitchesResultOutput

func (o GetEdgeFwSwitchesResultOutput) ToGetEdgeFwSwitchesResultOutput() GetEdgeFwSwitchesResultOutput

func (GetEdgeFwSwitchesResultOutput) ToGetEdgeFwSwitchesResultOutputWithContext

func (o GetEdgeFwSwitchesResultOutput) ToGetEdgeFwSwitchesResultOutputWithContext(ctx context.Context) GetEdgeFwSwitchesResultOutput

type GetNatFwSwitchesArgs

type GetNatFwSwitchesArgs struct {
	// Filter the NAT firewall instance to which the NAT firewall subnet switch belongs.
	NatInsId *string `pulumi:"natInsId"`
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Switch status, 1 open; 0 close.
	Status *int `pulumi:"status"`
}

A collection of arguments for invoking getNatFwSwitches.

type GetNatFwSwitchesData

type GetNatFwSwitchesData struct {
	// Whether the switch is abnormal, 0: normal, 1: abnormal.
	Abnormal int `pulumi:"abnormal"`
	// Cvm Num.
	CvmNum int `pulumi:"cvmNum"`
	// Effective status.
	Enable int `pulumi:"enable"`
	// ID.
	Id int `pulumi:"id"`
	// NAT gatway Id.
	NatId string `pulumi:"natId"`
	// Filter the NAT firewall instance to which the NAT firewall subnet switch belongs.
	NatInsId string `pulumi:"natInsId"`
	// NAT firewall instance name.
	NatInsName string `pulumi:"natInsName"`
	// NAT gatway name.
	NatName string `pulumi:"natName"`
	// Region.
	Region string `pulumi:"region"`
	// Route Id.
	RouteId string `pulumi:"routeId"`
	// Route Name.
	RouteName string `pulumi:"routeName"`
	// Switch status, 1 open; 0 close.
	Status int `pulumi:"status"`
	// IPv4 CIDR.
	SubnetCidr string `pulumi:"subnetCidr"`
	// Subnet Id.
	SubnetId string `pulumi:"subnetId"`
	// Subnet Name.
	SubnetName string `pulumi:"subnetName"`
	// Vpc Id.
	VpcId string `pulumi:"vpcId"`
	// Vpc Name.
	VpcName string `pulumi:"vpcName"`
}

type GetNatFwSwitchesDataArgs

type GetNatFwSwitchesDataArgs struct {
	// Whether the switch is abnormal, 0: normal, 1: abnormal.
	Abnormal pulumi.IntInput `pulumi:"abnormal"`
	// Cvm Num.
	CvmNum pulumi.IntInput `pulumi:"cvmNum"`
	// Effective status.
	Enable pulumi.IntInput `pulumi:"enable"`
	// ID.
	Id pulumi.IntInput `pulumi:"id"`
	// NAT gatway Id.
	NatId pulumi.StringInput `pulumi:"natId"`
	// Filter the NAT firewall instance to which the NAT firewall subnet switch belongs.
	NatInsId pulumi.StringInput `pulumi:"natInsId"`
	// NAT firewall instance name.
	NatInsName pulumi.StringInput `pulumi:"natInsName"`
	// NAT gatway name.
	NatName pulumi.StringInput `pulumi:"natName"`
	// Region.
	Region pulumi.StringInput `pulumi:"region"`
	// Route Id.
	RouteId pulumi.StringInput `pulumi:"routeId"`
	// Route Name.
	RouteName pulumi.StringInput `pulumi:"routeName"`
	// Switch status, 1 open; 0 close.
	Status pulumi.IntInput `pulumi:"status"`
	// IPv4 CIDR.
	SubnetCidr pulumi.StringInput `pulumi:"subnetCidr"`
	// Subnet Id.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
	// Subnet Name.
	SubnetName pulumi.StringInput `pulumi:"subnetName"`
	// Vpc Id.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// Vpc Name.
	VpcName pulumi.StringInput `pulumi:"vpcName"`
}

func (GetNatFwSwitchesDataArgs) ElementType

func (GetNatFwSwitchesDataArgs) ElementType() reflect.Type

func (GetNatFwSwitchesDataArgs) ToGetNatFwSwitchesDataOutput

func (i GetNatFwSwitchesDataArgs) ToGetNatFwSwitchesDataOutput() GetNatFwSwitchesDataOutput

func (GetNatFwSwitchesDataArgs) ToGetNatFwSwitchesDataOutputWithContext

func (i GetNatFwSwitchesDataArgs) ToGetNatFwSwitchesDataOutputWithContext(ctx context.Context) GetNatFwSwitchesDataOutput

type GetNatFwSwitchesDataArray

type GetNatFwSwitchesDataArray []GetNatFwSwitchesDataInput

func (GetNatFwSwitchesDataArray) ElementType

func (GetNatFwSwitchesDataArray) ElementType() reflect.Type

func (GetNatFwSwitchesDataArray) ToGetNatFwSwitchesDataArrayOutput

func (i GetNatFwSwitchesDataArray) ToGetNatFwSwitchesDataArrayOutput() GetNatFwSwitchesDataArrayOutput

func (GetNatFwSwitchesDataArray) ToGetNatFwSwitchesDataArrayOutputWithContext

func (i GetNatFwSwitchesDataArray) ToGetNatFwSwitchesDataArrayOutputWithContext(ctx context.Context) GetNatFwSwitchesDataArrayOutput

type GetNatFwSwitchesDataArrayInput

type GetNatFwSwitchesDataArrayInput interface {
	pulumi.Input

	ToGetNatFwSwitchesDataArrayOutput() GetNatFwSwitchesDataArrayOutput
	ToGetNatFwSwitchesDataArrayOutputWithContext(context.Context) GetNatFwSwitchesDataArrayOutput
}

GetNatFwSwitchesDataArrayInput is an input type that accepts GetNatFwSwitchesDataArray and GetNatFwSwitchesDataArrayOutput values. You can construct a concrete instance of `GetNatFwSwitchesDataArrayInput` via:

GetNatFwSwitchesDataArray{ GetNatFwSwitchesDataArgs{...} }

type GetNatFwSwitchesDataArrayOutput

type GetNatFwSwitchesDataArrayOutput struct{ *pulumi.OutputState }

func (GetNatFwSwitchesDataArrayOutput) ElementType

func (GetNatFwSwitchesDataArrayOutput) Index

func (GetNatFwSwitchesDataArrayOutput) ToGetNatFwSwitchesDataArrayOutput

func (o GetNatFwSwitchesDataArrayOutput) ToGetNatFwSwitchesDataArrayOutput() GetNatFwSwitchesDataArrayOutput

func (GetNatFwSwitchesDataArrayOutput) ToGetNatFwSwitchesDataArrayOutputWithContext

func (o GetNatFwSwitchesDataArrayOutput) ToGetNatFwSwitchesDataArrayOutputWithContext(ctx context.Context) GetNatFwSwitchesDataArrayOutput

type GetNatFwSwitchesDataInput

type GetNatFwSwitchesDataInput interface {
	pulumi.Input

	ToGetNatFwSwitchesDataOutput() GetNatFwSwitchesDataOutput
	ToGetNatFwSwitchesDataOutputWithContext(context.Context) GetNatFwSwitchesDataOutput
}

GetNatFwSwitchesDataInput is an input type that accepts GetNatFwSwitchesDataArgs and GetNatFwSwitchesDataOutput values. You can construct a concrete instance of `GetNatFwSwitchesDataInput` via:

GetNatFwSwitchesDataArgs{...}

type GetNatFwSwitchesDataOutput

type GetNatFwSwitchesDataOutput struct{ *pulumi.OutputState }

func (GetNatFwSwitchesDataOutput) Abnormal

Whether the switch is abnormal, 0: normal, 1: abnormal.

func (GetNatFwSwitchesDataOutput) CvmNum

Cvm Num.

func (GetNatFwSwitchesDataOutput) ElementType

func (GetNatFwSwitchesDataOutput) ElementType() reflect.Type

func (GetNatFwSwitchesDataOutput) Enable

Effective status.

func (GetNatFwSwitchesDataOutput) Id

ID.

func (GetNatFwSwitchesDataOutput) NatId

NAT gatway Id.

func (GetNatFwSwitchesDataOutput) NatInsId

Filter the NAT firewall instance to which the NAT firewall subnet switch belongs.

func (GetNatFwSwitchesDataOutput) NatInsName

NAT firewall instance name.

func (GetNatFwSwitchesDataOutput) NatName

NAT gatway name.

func (GetNatFwSwitchesDataOutput) Region

Region.

func (GetNatFwSwitchesDataOutput) RouteId

Route Id.

func (GetNatFwSwitchesDataOutput) RouteName

Route Name.

func (GetNatFwSwitchesDataOutput) Status

Switch status, 1 open; 0 close.

func (GetNatFwSwitchesDataOutput) SubnetCidr

IPv4 CIDR.

func (GetNatFwSwitchesDataOutput) SubnetId

Subnet Id.

func (GetNatFwSwitchesDataOutput) SubnetName

Subnet Name.

func (GetNatFwSwitchesDataOutput) ToGetNatFwSwitchesDataOutput

func (o GetNatFwSwitchesDataOutput) ToGetNatFwSwitchesDataOutput() GetNatFwSwitchesDataOutput

func (GetNatFwSwitchesDataOutput) ToGetNatFwSwitchesDataOutputWithContext

func (o GetNatFwSwitchesDataOutput) ToGetNatFwSwitchesDataOutputWithContext(ctx context.Context) GetNatFwSwitchesDataOutput

func (GetNatFwSwitchesDataOutput) VpcId

Vpc Id.

func (GetNatFwSwitchesDataOutput) VpcName

Vpc Name.

type GetNatFwSwitchesOutputArgs

type GetNatFwSwitchesOutputArgs struct {
	// Filter the NAT firewall instance to which the NAT firewall subnet switch belongs.
	NatInsId pulumi.StringPtrInput `pulumi:"natInsId"`
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
	// Switch status, 1 open; 0 close.
	Status pulumi.IntPtrInput `pulumi:"status"`
}

A collection of arguments for invoking getNatFwSwitches.

func (GetNatFwSwitchesOutputArgs) ElementType

func (GetNatFwSwitchesOutputArgs) ElementType() reflect.Type

type GetNatFwSwitchesResult

type GetNatFwSwitchesResult struct {
	// NAT border firewall switch list data.
	Datas []GetNatFwSwitchesData `pulumi:"datas"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// NAT firewall instance Id.
	NatInsId         *string `pulumi:"natInsId"`
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Switch status.
	Status *int `pulumi:"status"`
}

A collection of values returned by getNatFwSwitches.

func GetNatFwSwitches

func GetNatFwSwitches(ctx *pulumi.Context, args *GetNatFwSwitchesArgs, opts ...pulumi.InvokeOption) (*GetNatFwSwitchesResult, error)

Use this data source to query detailed information of cfw natFwSwitches

## Example Usage ### Query Nat instance'switch by instance id

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.GetNatFwSwitches(ctx, &cfw.GetNatFwSwitchesArgs{
			NatInsId: pulumi.StringRef("cfwnat-18d2ba18"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Or filter by switch status

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.GetNatFwSwitches(ctx, &cfw.GetNatFwSwitchesArgs{
			NatInsId: pulumi.StringRef("cfwnat-18d2ba18"),
			Status:   pulumi.IntRef(1),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetNatFwSwitchesResultOutput

type GetNatFwSwitchesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getNatFwSwitches.

func (GetNatFwSwitchesResultOutput) Datas

NAT border firewall switch list data.

func (GetNatFwSwitchesResultOutput) ElementType

func (GetNatFwSwitchesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetNatFwSwitchesResultOutput) NatInsId

NAT firewall instance Id.

func (GetNatFwSwitchesResultOutput) ResultOutputFile

func (GetNatFwSwitchesResultOutput) Status

Switch status.

func (GetNatFwSwitchesResultOutput) ToGetNatFwSwitchesResultOutput

func (o GetNatFwSwitchesResultOutput) ToGetNatFwSwitchesResultOutput() GetNatFwSwitchesResultOutput

func (GetNatFwSwitchesResultOutput) ToGetNatFwSwitchesResultOutputWithContext

func (o GetNatFwSwitchesResultOutput) ToGetNatFwSwitchesResultOutputWithContext(ctx context.Context) GetNatFwSwitchesResultOutput

type GetVpcFwSwitchesArgs

type GetVpcFwSwitchesArgs struct {
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Firewall instance id.
	VpcInsId string `pulumi:"vpcInsId"`
}

A collection of arguments for invoking getVpcFwSwitches.

type GetVpcFwSwitchesOutputArgs

type GetVpcFwSwitchesOutputArgs struct {
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
	// Firewall instance id.
	VpcInsId pulumi.StringInput `pulumi:"vpcInsId"`
}

A collection of arguments for invoking getVpcFwSwitches.

func (GetVpcFwSwitchesOutputArgs) ElementType

func (GetVpcFwSwitchesOutputArgs) ElementType() reflect.Type

type GetVpcFwSwitchesResult

type GetVpcFwSwitchesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id               string  `pulumi:"id"`
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Switch list.
	SwitchLists []GetVpcFwSwitchesSwitchList `pulumi:"switchLists"`
	VpcInsId    string                       `pulumi:"vpcInsId"`
}

A collection of values returned by getVpcFwSwitches.

func GetVpcFwSwitches

func GetVpcFwSwitches(ctx *pulumi.Context, args *GetVpcFwSwitchesArgs, opts ...pulumi.InvokeOption) (*GetVpcFwSwitchesResult, error)

Use this data source to query detailed information of cfw vpcFwSwitches

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.GetVpcFwSwitches(ctx, &cfw.GetVpcFwSwitchesArgs{
			VpcInsId: "cfwg-c8c2de41",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetVpcFwSwitchesResultOutput

type GetVpcFwSwitchesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getVpcFwSwitches.

func (GetVpcFwSwitchesResultOutput) ElementType

func (GetVpcFwSwitchesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetVpcFwSwitchesResultOutput) ResultOutputFile

func (GetVpcFwSwitchesResultOutput) SwitchLists

Switch list.

func (GetVpcFwSwitchesResultOutput) ToGetVpcFwSwitchesResultOutput

func (o GetVpcFwSwitchesResultOutput) ToGetVpcFwSwitchesResultOutput() GetVpcFwSwitchesResultOutput

func (GetVpcFwSwitchesResultOutput) ToGetVpcFwSwitchesResultOutputWithContext

func (o GetVpcFwSwitchesResultOutput) ToGetVpcFwSwitchesResultOutputWithContext(ctx context.Context) GetVpcFwSwitchesResultOutput

func (GetVpcFwSwitchesResultOutput) VpcInsId

type GetVpcFwSwitchesSwitchList

type GetVpcFwSwitchesSwitchList struct {
	// Switch status 0: off, 1: on.
	Enable int `pulumi:"enable"`
	// Switch status 0: normal, 1: switching.
	Status int `pulumi:"status"`
	// Firewall switch ID.
	SwitchId string `pulumi:"switchId"`
	// switch mode.
	SwitchMode int `pulumi:"switchMode"`
	// Firewall switch name.
	SwitchName string `pulumi:"switchName"`
}

type GetVpcFwSwitchesSwitchListArgs

type GetVpcFwSwitchesSwitchListArgs struct {
	// Switch status 0: off, 1: on.
	Enable pulumi.IntInput `pulumi:"enable"`
	// Switch status 0: normal, 1: switching.
	Status pulumi.IntInput `pulumi:"status"`
	// Firewall switch ID.
	SwitchId pulumi.StringInput `pulumi:"switchId"`
	// switch mode.
	SwitchMode pulumi.IntInput `pulumi:"switchMode"`
	// Firewall switch name.
	SwitchName pulumi.StringInput `pulumi:"switchName"`
}

func (GetVpcFwSwitchesSwitchListArgs) ElementType

func (GetVpcFwSwitchesSwitchListArgs) ToGetVpcFwSwitchesSwitchListOutput

func (i GetVpcFwSwitchesSwitchListArgs) ToGetVpcFwSwitchesSwitchListOutput() GetVpcFwSwitchesSwitchListOutput

func (GetVpcFwSwitchesSwitchListArgs) ToGetVpcFwSwitchesSwitchListOutputWithContext

func (i GetVpcFwSwitchesSwitchListArgs) ToGetVpcFwSwitchesSwitchListOutputWithContext(ctx context.Context) GetVpcFwSwitchesSwitchListOutput

type GetVpcFwSwitchesSwitchListArray

type GetVpcFwSwitchesSwitchListArray []GetVpcFwSwitchesSwitchListInput

func (GetVpcFwSwitchesSwitchListArray) ElementType

func (GetVpcFwSwitchesSwitchListArray) ToGetVpcFwSwitchesSwitchListArrayOutput

func (i GetVpcFwSwitchesSwitchListArray) ToGetVpcFwSwitchesSwitchListArrayOutput() GetVpcFwSwitchesSwitchListArrayOutput

func (GetVpcFwSwitchesSwitchListArray) ToGetVpcFwSwitchesSwitchListArrayOutputWithContext

func (i GetVpcFwSwitchesSwitchListArray) ToGetVpcFwSwitchesSwitchListArrayOutputWithContext(ctx context.Context) GetVpcFwSwitchesSwitchListArrayOutput

type GetVpcFwSwitchesSwitchListArrayInput

type GetVpcFwSwitchesSwitchListArrayInput interface {
	pulumi.Input

	ToGetVpcFwSwitchesSwitchListArrayOutput() GetVpcFwSwitchesSwitchListArrayOutput
	ToGetVpcFwSwitchesSwitchListArrayOutputWithContext(context.Context) GetVpcFwSwitchesSwitchListArrayOutput
}

GetVpcFwSwitchesSwitchListArrayInput is an input type that accepts GetVpcFwSwitchesSwitchListArray and GetVpcFwSwitchesSwitchListArrayOutput values. You can construct a concrete instance of `GetVpcFwSwitchesSwitchListArrayInput` via:

GetVpcFwSwitchesSwitchListArray{ GetVpcFwSwitchesSwitchListArgs{...} }

type GetVpcFwSwitchesSwitchListArrayOutput

type GetVpcFwSwitchesSwitchListArrayOutput struct{ *pulumi.OutputState }

func (GetVpcFwSwitchesSwitchListArrayOutput) ElementType

func (GetVpcFwSwitchesSwitchListArrayOutput) Index

func (GetVpcFwSwitchesSwitchListArrayOutput) ToGetVpcFwSwitchesSwitchListArrayOutput

func (o GetVpcFwSwitchesSwitchListArrayOutput) ToGetVpcFwSwitchesSwitchListArrayOutput() GetVpcFwSwitchesSwitchListArrayOutput

func (GetVpcFwSwitchesSwitchListArrayOutput) ToGetVpcFwSwitchesSwitchListArrayOutputWithContext

func (o GetVpcFwSwitchesSwitchListArrayOutput) ToGetVpcFwSwitchesSwitchListArrayOutputWithContext(ctx context.Context) GetVpcFwSwitchesSwitchListArrayOutput

type GetVpcFwSwitchesSwitchListInput

type GetVpcFwSwitchesSwitchListInput interface {
	pulumi.Input

	ToGetVpcFwSwitchesSwitchListOutput() GetVpcFwSwitchesSwitchListOutput
	ToGetVpcFwSwitchesSwitchListOutputWithContext(context.Context) GetVpcFwSwitchesSwitchListOutput
}

GetVpcFwSwitchesSwitchListInput is an input type that accepts GetVpcFwSwitchesSwitchListArgs and GetVpcFwSwitchesSwitchListOutput values. You can construct a concrete instance of `GetVpcFwSwitchesSwitchListInput` via:

GetVpcFwSwitchesSwitchListArgs{...}

type GetVpcFwSwitchesSwitchListOutput

type GetVpcFwSwitchesSwitchListOutput struct{ *pulumi.OutputState }

func (GetVpcFwSwitchesSwitchListOutput) ElementType

func (GetVpcFwSwitchesSwitchListOutput) Enable

Switch status 0: off, 1: on.

func (GetVpcFwSwitchesSwitchListOutput) Status

Switch status 0: normal, 1: switching.

func (GetVpcFwSwitchesSwitchListOutput) SwitchId

Firewall switch ID.

func (GetVpcFwSwitchesSwitchListOutput) SwitchMode

switch mode.

func (GetVpcFwSwitchesSwitchListOutput) SwitchName

Firewall switch name.

func (GetVpcFwSwitchesSwitchListOutput) ToGetVpcFwSwitchesSwitchListOutput

func (o GetVpcFwSwitchesSwitchListOutput) ToGetVpcFwSwitchesSwitchListOutput() GetVpcFwSwitchesSwitchListOutput

func (GetVpcFwSwitchesSwitchListOutput) ToGetVpcFwSwitchesSwitchListOutputWithContext

func (o GetVpcFwSwitchesSwitchListOutput) ToGetVpcFwSwitchesSwitchListOutputWithContext(ctx context.Context) GetVpcFwSwitchesSwitchListOutput

type NatFirewallSwitch

type NatFirewallSwitch struct {
	pulumi.CustomResourceState

	// Switch, 0: off, 1: on.
	Enable pulumi.IntOutput `pulumi:"enable"`
	// Firewall instance id.
	NatInsId pulumi.StringOutput `pulumi:"natInsId"`
	// subnet id.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
}

Provides a resource to create a cfw natFirewallSwitch

## Example Usage ### Turn off switch

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleNatFwSwitches, err := Cfw.GetNatFwSwitches(ctx, &cfw.GetNatFwSwitchesArgs{
			NatInsId: pulumi.StringRef("cfwnat-18d2ba18"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = Cfw.NewNatFirewallSwitch(ctx, "exampleNatFirewallSwitch", &Cfw.NatFirewallSwitchArgs{
			NatInsId: pulumi.String(exampleNatFwSwitches.Id),
			SubnetId: pulumi.String(exampleNatFwSwitches.Datas[0].SubnetId),
			Enable:   pulumi.Int(0),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Or turn on switch

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleNatFwSwitches, err := Cfw.GetNatFwSwitches(ctx, &cfw.GetNatFwSwitchesArgs{
			NatInsId: pulumi.StringRef("cfwnat-18d2ba18"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = Cfw.NewNatFirewallSwitch(ctx, "exampleNatFirewallSwitch", &Cfw.NatFirewallSwitchArgs{
			NatInsId: pulumi.String(exampleNatFwSwitches.Id),
			SubnetId: pulumi.String(exampleNatFwSwitches.Datas[0].SubnetId),
			Enable:   pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

cfw nat_firewall_switch can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Cfw/natFirewallSwitch:NatFirewallSwitch example cfwnat-18d2ba18#subnet-ef7wyymr

```

func GetNatFirewallSwitch

func GetNatFirewallSwitch(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NatFirewallSwitchState, opts ...pulumi.ResourceOption) (*NatFirewallSwitch, error)

GetNatFirewallSwitch gets an existing NatFirewallSwitch 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 NewNatFirewallSwitch

func NewNatFirewallSwitch(ctx *pulumi.Context,
	name string, args *NatFirewallSwitchArgs, opts ...pulumi.ResourceOption) (*NatFirewallSwitch, error)

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

func (*NatFirewallSwitch) ElementType

func (*NatFirewallSwitch) ElementType() reflect.Type

func (*NatFirewallSwitch) ToNatFirewallSwitchOutput

func (i *NatFirewallSwitch) ToNatFirewallSwitchOutput() NatFirewallSwitchOutput

func (*NatFirewallSwitch) ToNatFirewallSwitchOutputWithContext

func (i *NatFirewallSwitch) ToNatFirewallSwitchOutputWithContext(ctx context.Context) NatFirewallSwitchOutput

type NatFirewallSwitchArgs

type NatFirewallSwitchArgs struct {
	// Switch, 0: off, 1: on.
	Enable pulumi.IntInput
	// Firewall instance id.
	NatInsId pulumi.StringInput
	// subnet id.
	SubnetId pulumi.StringInput
}

The set of arguments for constructing a NatFirewallSwitch resource.

func (NatFirewallSwitchArgs) ElementType

func (NatFirewallSwitchArgs) ElementType() reflect.Type

type NatFirewallSwitchArray

type NatFirewallSwitchArray []NatFirewallSwitchInput

func (NatFirewallSwitchArray) ElementType

func (NatFirewallSwitchArray) ElementType() reflect.Type

func (NatFirewallSwitchArray) ToNatFirewallSwitchArrayOutput

func (i NatFirewallSwitchArray) ToNatFirewallSwitchArrayOutput() NatFirewallSwitchArrayOutput

func (NatFirewallSwitchArray) ToNatFirewallSwitchArrayOutputWithContext

func (i NatFirewallSwitchArray) ToNatFirewallSwitchArrayOutputWithContext(ctx context.Context) NatFirewallSwitchArrayOutput

type NatFirewallSwitchArrayInput

type NatFirewallSwitchArrayInput interface {
	pulumi.Input

	ToNatFirewallSwitchArrayOutput() NatFirewallSwitchArrayOutput
	ToNatFirewallSwitchArrayOutputWithContext(context.Context) NatFirewallSwitchArrayOutput
}

NatFirewallSwitchArrayInput is an input type that accepts NatFirewallSwitchArray and NatFirewallSwitchArrayOutput values. You can construct a concrete instance of `NatFirewallSwitchArrayInput` via:

NatFirewallSwitchArray{ NatFirewallSwitchArgs{...} }

type NatFirewallSwitchArrayOutput

type NatFirewallSwitchArrayOutput struct{ *pulumi.OutputState }

func (NatFirewallSwitchArrayOutput) ElementType

func (NatFirewallSwitchArrayOutput) Index

func (NatFirewallSwitchArrayOutput) ToNatFirewallSwitchArrayOutput

func (o NatFirewallSwitchArrayOutput) ToNatFirewallSwitchArrayOutput() NatFirewallSwitchArrayOutput

func (NatFirewallSwitchArrayOutput) ToNatFirewallSwitchArrayOutputWithContext

func (o NatFirewallSwitchArrayOutput) ToNatFirewallSwitchArrayOutputWithContext(ctx context.Context) NatFirewallSwitchArrayOutput

type NatFirewallSwitchInput

type NatFirewallSwitchInput interface {
	pulumi.Input

	ToNatFirewallSwitchOutput() NatFirewallSwitchOutput
	ToNatFirewallSwitchOutputWithContext(ctx context.Context) NatFirewallSwitchOutput
}

type NatFirewallSwitchMap

type NatFirewallSwitchMap map[string]NatFirewallSwitchInput

func (NatFirewallSwitchMap) ElementType

func (NatFirewallSwitchMap) ElementType() reflect.Type

func (NatFirewallSwitchMap) ToNatFirewallSwitchMapOutput

func (i NatFirewallSwitchMap) ToNatFirewallSwitchMapOutput() NatFirewallSwitchMapOutput

func (NatFirewallSwitchMap) ToNatFirewallSwitchMapOutputWithContext

func (i NatFirewallSwitchMap) ToNatFirewallSwitchMapOutputWithContext(ctx context.Context) NatFirewallSwitchMapOutput

type NatFirewallSwitchMapInput

type NatFirewallSwitchMapInput interface {
	pulumi.Input

	ToNatFirewallSwitchMapOutput() NatFirewallSwitchMapOutput
	ToNatFirewallSwitchMapOutputWithContext(context.Context) NatFirewallSwitchMapOutput
}

NatFirewallSwitchMapInput is an input type that accepts NatFirewallSwitchMap and NatFirewallSwitchMapOutput values. You can construct a concrete instance of `NatFirewallSwitchMapInput` via:

NatFirewallSwitchMap{ "key": NatFirewallSwitchArgs{...} }

type NatFirewallSwitchMapOutput

type NatFirewallSwitchMapOutput struct{ *pulumi.OutputState }

func (NatFirewallSwitchMapOutput) ElementType

func (NatFirewallSwitchMapOutput) ElementType() reflect.Type

func (NatFirewallSwitchMapOutput) MapIndex

func (NatFirewallSwitchMapOutput) ToNatFirewallSwitchMapOutput

func (o NatFirewallSwitchMapOutput) ToNatFirewallSwitchMapOutput() NatFirewallSwitchMapOutput

func (NatFirewallSwitchMapOutput) ToNatFirewallSwitchMapOutputWithContext

func (o NatFirewallSwitchMapOutput) ToNatFirewallSwitchMapOutputWithContext(ctx context.Context) NatFirewallSwitchMapOutput

type NatFirewallSwitchOutput

type NatFirewallSwitchOutput struct{ *pulumi.OutputState }

func (NatFirewallSwitchOutput) ElementType

func (NatFirewallSwitchOutput) ElementType() reflect.Type

func (NatFirewallSwitchOutput) Enable

Switch, 0: off, 1: on.

func (NatFirewallSwitchOutput) NatInsId

Firewall instance id.

func (NatFirewallSwitchOutput) SubnetId

subnet id.

func (NatFirewallSwitchOutput) ToNatFirewallSwitchOutput

func (o NatFirewallSwitchOutput) ToNatFirewallSwitchOutput() NatFirewallSwitchOutput

func (NatFirewallSwitchOutput) ToNatFirewallSwitchOutputWithContext

func (o NatFirewallSwitchOutput) ToNatFirewallSwitchOutputWithContext(ctx context.Context) NatFirewallSwitchOutput

type NatFirewallSwitchState

type NatFirewallSwitchState struct {
	// Switch, 0: off, 1: on.
	Enable pulumi.IntPtrInput
	// Firewall instance id.
	NatInsId pulumi.StringPtrInput
	// subnet id.
	SubnetId pulumi.StringPtrInput
}

func (NatFirewallSwitchState) ElementType

func (NatFirewallSwitchState) ElementType() reflect.Type

type NatInstance

type NatInstance struct {
	pulumi.CustomResourceState

	// Off-site disaster recovery 1: use off-site disaster recovery; 0: do not use off-site disaster recovery; if empty, the default is not to use off-site disaster recovery.
	CrossAZone pulumi.IntPtrOutput `pulumi:"crossAZone"`
	// Mode 1: access mode; 0: new mode.
	Mode pulumi.IntOutput `pulumi:"mode"`
	// Firewall instance name.
	Name pulumi.StringOutput `pulumi:"name"`
	// A list of nat gateways connected to the access mode, at least one of NewModeItems and NatgwList is passed.
	NatGwLists pulumi.StringArrayOutput `pulumi:"natGwLists"`
	// New mode passing parameters are added, at least one of newModeItems and natGwList is passed.
	NewModeItems NatInstanceNewModeItemsPtrOutput `pulumi:"newModeItems"`
	// Bandwidth.
	Width pulumi.IntOutput `pulumi:"width"`
	// Zone list.
	ZoneSets pulumi.StringArrayOutput `pulumi:"zoneSets"`
}

Provides a resource to create a cfw natInstance

## Example Usage ### If mode is 0

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewNatInstance(ctx, "example", &Cfw.NatInstanceArgs{
			CrossAZone: pulumi.Int(0),
			Mode:       pulumi.Int(0),
			NewModeItems: &cfw.NatInstanceNewModeItemsArgs{
				Eips: pulumi.StringArray{
					pulumi.String("152.136.168.192"),
				},
				VpcLists: pulumi.StringArray{
					pulumi.String("vpc-5063ta4i"),
				},
			},
			Width: pulumi.Int(20),
			ZoneSets: pulumi.StringArray{
				pulumi.String("ap-guangzhou-7"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### If mode is 1

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewNatInstance(ctx, "example", &Cfw.NatInstanceArgs{
			CrossAZone: pulumi.Int(0),
			Mode:       pulumi.Int(1),
			NatGwLists: pulumi.StringArray{
				pulumi.String("nat-9wwkz1kr"),
			},
			Width: pulumi.Int(20),
			ZoneSets: pulumi.StringArray{
				pulumi.String("ap-guangzhou-6"),
				pulumi.String("ap-guangzhou-7"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

cfw nat_instance can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Cfw/natInstance:NatInstance example cfwnat-54a21421

```

func GetNatInstance

func GetNatInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NatInstanceState, opts ...pulumi.ResourceOption) (*NatInstance, error)

GetNatInstance gets an existing NatInstance 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 NewNatInstance

func NewNatInstance(ctx *pulumi.Context,
	name string, args *NatInstanceArgs, opts ...pulumi.ResourceOption) (*NatInstance, error)

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

func (*NatInstance) ElementType

func (*NatInstance) ElementType() reflect.Type

func (*NatInstance) ToNatInstanceOutput

func (i *NatInstance) ToNatInstanceOutput() NatInstanceOutput

func (*NatInstance) ToNatInstanceOutputWithContext

func (i *NatInstance) ToNatInstanceOutputWithContext(ctx context.Context) NatInstanceOutput

type NatInstanceArgs

type NatInstanceArgs struct {
	// Off-site disaster recovery 1: use off-site disaster recovery; 0: do not use off-site disaster recovery; if empty, the default is not to use off-site disaster recovery.
	CrossAZone pulumi.IntPtrInput
	// Mode 1: access mode; 0: new mode.
	Mode pulumi.IntInput
	// Firewall instance name.
	Name pulumi.StringPtrInput
	// A list of nat gateways connected to the access mode, at least one of NewModeItems and NatgwList is passed.
	NatGwLists pulumi.StringArrayInput
	// New mode passing parameters are added, at least one of newModeItems and natGwList is passed.
	NewModeItems NatInstanceNewModeItemsPtrInput
	// Bandwidth.
	Width pulumi.IntInput
	// Zone list.
	ZoneSets pulumi.StringArrayInput
}

The set of arguments for constructing a NatInstance resource.

func (NatInstanceArgs) ElementType

func (NatInstanceArgs) ElementType() reflect.Type

type NatInstanceArray

type NatInstanceArray []NatInstanceInput

func (NatInstanceArray) ElementType

func (NatInstanceArray) ElementType() reflect.Type

func (NatInstanceArray) ToNatInstanceArrayOutput

func (i NatInstanceArray) ToNatInstanceArrayOutput() NatInstanceArrayOutput

func (NatInstanceArray) ToNatInstanceArrayOutputWithContext

func (i NatInstanceArray) ToNatInstanceArrayOutputWithContext(ctx context.Context) NatInstanceArrayOutput

type NatInstanceArrayInput

type NatInstanceArrayInput interface {
	pulumi.Input

	ToNatInstanceArrayOutput() NatInstanceArrayOutput
	ToNatInstanceArrayOutputWithContext(context.Context) NatInstanceArrayOutput
}

NatInstanceArrayInput is an input type that accepts NatInstanceArray and NatInstanceArrayOutput values. You can construct a concrete instance of `NatInstanceArrayInput` via:

NatInstanceArray{ NatInstanceArgs{...} }

type NatInstanceArrayOutput

type NatInstanceArrayOutput struct{ *pulumi.OutputState }

func (NatInstanceArrayOutput) ElementType

func (NatInstanceArrayOutput) ElementType() reflect.Type

func (NatInstanceArrayOutput) Index

func (NatInstanceArrayOutput) ToNatInstanceArrayOutput

func (o NatInstanceArrayOutput) ToNatInstanceArrayOutput() NatInstanceArrayOutput

func (NatInstanceArrayOutput) ToNatInstanceArrayOutputWithContext

func (o NatInstanceArrayOutput) ToNatInstanceArrayOutputWithContext(ctx context.Context) NatInstanceArrayOutput

type NatInstanceInput

type NatInstanceInput interface {
	pulumi.Input

	ToNatInstanceOutput() NatInstanceOutput
	ToNatInstanceOutputWithContext(ctx context.Context) NatInstanceOutput
}

type NatInstanceMap

type NatInstanceMap map[string]NatInstanceInput

func (NatInstanceMap) ElementType

func (NatInstanceMap) ElementType() reflect.Type

func (NatInstanceMap) ToNatInstanceMapOutput

func (i NatInstanceMap) ToNatInstanceMapOutput() NatInstanceMapOutput

func (NatInstanceMap) ToNatInstanceMapOutputWithContext

func (i NatInstanceMap) ToNatInstanceMapOutputWithContext(ctx context.Context) NatInstanceMapOutput

type NatInstanceMapInput

type NatInstanceMapInput interface {
	pulumi.Input

	ToNatInstanceMapOutput() NatInstanceMapOutput
	ToNatInstanceMapOutputWithContext(context.Context) NatInstanceMapOutput
}

NatInstanceMapInput is an input type that accepts NatInstanceMap and NatInstanceMapOutput values. You can construct a concrete instance of `NatInstanceMapInput` via:

NatInstanceMap{ "key": NatInstanceArgs{...} }

type NatInstanceMapOutput

type NatInstanceMapOutput struct{ *pulumi.OutputState }

func (NatInstanceMapOutput) ElementType

func (NatInstanceMapOutput) ElementType() reflect.Type

func (NatInstanceMapOutput) MapIndex

func (NatInstanceMapOutput) ToNatInstanceMapOutput

func (o NatInstanceMapOutput) ToNatInstanceMapOutput() NatInstanceMapOutput

func (NatInstanceMapOutput) ToNatInstanceMapOutputWithContext

func (o NatInstanceMapOutput) ToNatInstanceMapOutputWithContext(ctx context.Context) NatInstanceMapOutput

type NatInstanceNewModeItems

type NatInstanceNewModeItems struct {
	// List of egress elastic public network IPs bound in the new mode.
	Eips []string `pulumi:"eips"`
	// List of vpcs connected in new mode.
	VpcLists []string `pulumi:"vpcLists"`
}

type NatInstanceNewModeItemsArgs

type NatInstanceNewModeItemsArgs struct {
	// List of egress elastic public network IPs bound in the new mode.
	Eips pulumi.StringArrayInput `pulumi:"eips"`
	// List of vpcs connected in new mode.
	VpcLists pulumi.StringArrayInput `pulumi:"vpcLists"`
}

func (NatInstanceNewModeItemsArgs) ElementType

func (NatInstanceNewModeItemsArgs) ToNatInstanceNewModeItemsOutput

func (i NatInstanceNewModeItemsArgs) ToNatInstanceNewModeItemsOutput() NatInstanceNewModeItemsOutput

func (NatInstanceNewModeItemsArgs) ToNatInstanceNewModeItemsOutputWithContext

func (i NatInstanceNewModeItemsArgs) ToNatInstanceNewModeItemsOutputWithContext(ctx context.Context) NatInstanceNewModeItemsOutput

func (NatInstanceNewModeItemsArgs) ToNatInstanceNewModeItemsPtrOutput

func (i NatInstanceNewModeItemsArgs) ToNatInstanceNewModeItemsPtrOutput() NatInstanceNewModeItemsPtrOutput

func (NatInstanceNewModeItemsArgs) ToNatInstanceNewModeItemsPtrOutputWithContext

func (i NatInstanceNewModeItemsArgs) ToNatInstanceNewModeItemsPtrOutputWithContext(ctx context.Context) NatInstanceNewModeItemsPtrOutput

type NatInstanceNewModeItemsInput

type NatInstanceNewModeItemsInput interface {
	pulumi.Input

	ToNatInstanceNewModeItemsOutput() NatInstanceNewModeItemsOutput
	ToNatInstanceNewModeItemsOutputWithContext(context.Context) NatInstanceNewModeItemsOutput
}

NatInstanceNewModeItemsInput is an input type that accepts NatInstanceNewModeItemsArgs and NatInstanceNewModeItemsOutput values. You can construct a concrete instance of `NatInstanceNewModeItemsInput` via:

NatInstanceNewModeItemsArgs{...}

type NatInstanceNewModeItemsOutput

type NatInstanceNewModeItemsOutput struct{ *pulumi.OutputState }

func (NatInstanceNewModeItemsOutput) Eips

List of egress elastic public network IPs bound in the new mode.

func (NatInstanceNewModeItemsOutput) ElementType

func (NatInstanceNewModeItemsOutput) ToNatInstanceNewModeItemsOutput

func (o NatInstanceNewModeItemsOutput) ToNatInstanceNewModeItemsOutput() NatInstanceNewModeItemsOutput

func (NatInstanceNewModeItemsOutput) ToNatInstanceNewModeItemsOutputWithContext

func (o NatInstanceNewModeItemsOutput) ToNatInstanceNewModeItemsOutputWithContext(ctx context.Context) NatInstanceNewModeItemsOutput

func (NatInstanceNewModeItemsOutput) ToNatInstanceNewModeItemsPtrOutput

func (o NatInstanceNewModeItemsOutput) ToNatInstanceNewModeItemsPtrOutput() NatInstanceNewModeItemsPtrOutput

func (NatInstanceNewModeItemsOutput) ToNatInstanceNewModeItemsPtrOutputWithContext

func (o NatInstanceNewModeItemsOutput) ToNatInstanceNewModeItemsPtrOutputWithContext(ctx context.Context) NatInstanceNewModeItemsPtrOutput

func (NatInstanceNewModeItemsOutput) VpcLists

List of vpcs connected in new mode.

type NatInstanceNewModeItemsPtrInput

type NatInstanceNewModeItemsPtrInput interface {
	pulumi.Input

	ToNatInstanceNewModeItemsPtrOutput() NatInstanceNewModeItemsPtrOutput
	ToNatInstanceNewModeItemsPtrOutputWithContext(context.Context) NatInstanceNewModeItemsPtrOutput
}

NatInstanceNewModeItemsPtrInput is an input type that accepts NatInstanceNewModeItemsArgs, NatInstanceNewModeItemsPtr and NatInstanceNewModeItemsPtrOutput values. You can construct a concrete instance of `NatInstanceNewModeItemsPtrInput` via:

        NatInstanceNewModeItemsArgs{...}

or:

        nil

type NatInstanceNewModeItemsPtrOutput

type NatInstanceNewModeItemsPtrOutput struct{ *pulumi.OutputState }

func (NatInstanceNewModeItemsPtrOutput) Eips

List of egress elastic public network IPs bound in the new mode.

func (NatInstanceNewModeItemsPtrOutput) Elem

func (NatInstanceNewModeItemsPtrOutput) ElementType

func (NatInstanceNewModeItemsPtrOutput) ToNatInstanceNewModeItemsPtrOutput

func (o NatInstanceNewModeItemsPtrOutput) ToNatInstanceNewModeItemsPtrOutput() NatInstanceNewModeItemsPtrOutput

func (NatInstanceNewModeItemsPtrOutput) ToNatInstanceNewModeItemsPtrOutputWithContext

func (o NatInstanceNewModeItemsPtrOutput) ToNatInstanceNewModeItemsPtrOutputWithContext(ctx context.Context) NatInstanceNewModeItemsPtrOutput

func (NatInstanceNewModeItemsPtrOutput) VpcLists

List of vpcs connected in new mode.

type NatInstanceOutput

type NatInstanceOutput struct{ *pulumi.OutputState }

func (NatInstanceOutput) CrossAZone

func (o NatInstanceOutput) CrossAZone() pulumi.IntPtrOutput

Off-site disaster recovery 1: use off-site disaster recovery; 0: do not use off-site disaster recovery; if empty, the default is not to use off-site disaster recovery.

func (NatInstanceOutput) ElementType

func (NatInstanceOutput) ElementType() reflect.Type

func (NatInstanceOutput) Mode

Mode 1: access mode; 0: new mode.

func (NatInstanceOutput) Name

Firewall instance name.

func (NatInstanceOutput) NatGwLists

A list of nat gateways connected to the access mode, at least one of NewModeItems and NatgwList is passed.

func (NatInstanceOutput) NewModeItems

New mode passing parameters are added, at least one of newModeItems and natGwList is passed.

func (NatInstanceOutput) ToNatInstanceOutput

func (o NatInstanceOutput) ToNatInstanceOutput() NatInstanceOutput

func (NatInstanceOutput) ToNatInstanceOutputWithContext

func (o NatInstanceOutput) ToNatInstanceOutputWithContext(ctx context.Context) NatInstanceOutput

func (NatInstanceOutput) Width

Bandwidth.

func (NatInstanceOutput) ZoneSets

Zone list.

type NatInstanceState

type NatInstanceState struct {
	// Off-site disaster recovery 1: use off-site disaster recovery; 0: do not use off-site disaster recovery; if empty, the default is not to use off-site disaster recovery.
	CrossAZone pulumi.IntPtrInput
	// Mode 1: access mode; 0: new mode.
	Mode pulumi.IntPtrInput
	// Firewall instance name.
	Name pulumi.StringPtrInput
	// A list of nat gateways connected to the access mode, at least one of NewModeItems and NatgwList is passed.
	NatGwLists pulumi.StringArrayInput
	// New mode passing parameters are added, at least one of newModeItems and natGwList is passed.
	NewModeItems NatInstanceNewModeItemsPtrInput
	// Bandwidth.
	Width pulumi.IntPtrInput
	// Zone list.
	ZoneSets pulumi.StringArrayInput
}

func (NatInstanceState) ElementType

func (NatInstanceState) ElementType() reflect.Type

type NatPolicy

type NatPolicy struct {
	pulumi.CustomResourceState

	// Description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Rule direction: 1, inbound; 0, outbound.
	Direction pulumi.IntOutput `pulumi:"direction"`
	// Rule status, true means enabled, false means disabled. Default is true.
	Enable pulumi.StringPtrOutput `pulumi:"enable"`
	// Parameter template id. Note: This field may return null, indicating that no valid value can be obtained.
	ParamTemplateId pulumi.StringOutput `pulumi:"paramTemplateId"`
	// The port for the access control policy. Value: -1/-1: All ports 80: Port 80.
	Port pulumi.StringOutput `pulumi:"port"`
	// Protocol. If Direction=1, optional values: TCP, UDP, ANY; If Direction=0, optional values: TCP, UDP, ICMP, ANY, HTTP, HTTPS, HTTP/HTTPS, SMTP, SMTPS, SMTP/SMTPS, FTP, and DNS.
	Protocol pulumi.StringOutput `pulumi:"protocol"`
	// How the traffic set in the access control policy passes through the cloud firewall. Values: accept: allow; drop: reject; log: observe.
	RuleAction pulumi.StringOutput `pulumi:"ruleAction"`
	// Access source example: net:IP/CIDR(192.168.0.2).
	SourceContent pulumi.StringOutput `pulumi:"sourceContent"`
	// Access source type: for inbound rules, the type can be net, location, vendor, template; for outbound rules, it can be net, instance, tag, template, group.
	SourceType pulumi.StringOutput `pulumi:"sourceType"`
	// Example of access purpose: net: IP/CIDR(192.168.0.2) domain: domain name rules, such as *.qq.com.
	TargetContent pulumi.StringOutput `pulumi:"targetContent"`
	// Access purpose type: For inbound rules, the type can be net, instance, tag, template, group; for outbound rules, it can be net, location, vendor, template.
	TargetType pulumi.StringOutput `pulumi:"targetType"`
	// The unique id corresponding to the rule, no need to fill in when creating the rule.
	Uuid pulumi.IntOutput `pulumi:"uuid"`
}

Provides a resource to create a cfw natPolicy

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewNatPolicy(ctx, "example", &Cfw.NatPolicyArgs{
			Description:   pulumi.String("policy description."),
			Direction:     pulumi.Int(1),
			Enable:        pulumi.String("true"),
			Port:          pulumi.String("-1/-1"),
			Protocol:      pulumi.String("TCP"),
			RuleAction:    pulumi.String("drop"),
			SourceContent: pulumi.String("1.1.1.1/0"),
			SourceType:    pulumi.String("net"),
			TargetContent: pulumi.String("0.0.0.0/0"),
			TargetType:    pulumi.String("net"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

cfw nat_policy can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Cfw/natPolicy:NatPolicy example nat_policy_id

```

func GetNatPolicy

func GetNatPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NatPolicyState, opts ...pulumi.ResourceOption) (*NatPolicy, error)

GetNatPolicy gets an existing NatPolicy 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 NewNatPolicy

func NewNatPolicy(ctx *pulumi.Context,
	name string, args *NatPolicyArgs, opts ...pulumi.ResourceOption) (*NatPolicy, error)

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

func (*NatPolicy) ElementType

func (*NatPolicy) ElementType() reflect.Type

func (*NatPolicy) ToNatPolicyOutput

func (i *NatPolicy) ToNatPolicyOutput() NatPolicyOutput

func (*NatPolicy) ToNatPolicyOutputWithContext

func (i *NatPolicy) ToNatPolicyOutputWithContext(ctx context.Context) NatPolicyOutput

type NatPolicyArgs

type NatPolicyArgs struct {
	// Description.
	Description pulumi.StringPtrInput
	// Rule direction: 1, inbound; 0, outbound.
	Direction pulumi.IntInput
	// Rule status, true means enabled, false means disabled. Default is true.
	Enable pulumi.StringPtrInput
	// The port for the access control policy. Value: -1/-1: All ports 80: Port 80.
	Port pulumi.StringInput
	// Protocol. If Direction=1, optional values: TCP, UDP, ANY; If Direction=0, optional values: TCP, UDP, ICMP, ANY, HTTP, HTTPS, HTTP/HTTPS, SMTP, SMTPS, SMTP/SMTPS, FTP, and DNS.
	Protocol pulumi.StringInput
	// How the traffic set in the access control policy passes through the cloud firewall. Values: accept: allow; drop: reject; log: observe.
	RuleAction pulumi.StringInput
	// Access source example: net:IP/CIDR(192.168.0.2).
	SourceContent pulumi.StringInput
	// Access source type: for inbound rules, the type can be net, location, vendor, template; for outbound rules, it can be net, instance, tag, template, group.
	SourceType pulumi.StringInput
	// Example of access purpose: net: IP/CIDR(192.168.0.2) domain: domain name rules, such as *.qq.com.
	TargetContent pulumi.StringInput
	// Access purpose type: For inbound rules, the type can be net, instance, tag, template, group; for outbound rules, it can be net, location, vendor, template.
	TargetType pulumi.StringInput
}

The set of arguments for constructing a NatPolicy resource.

func (NatPolicyArgs) ElementType

func (NatPolicyArgs) ElementType() reflect.Type

type NatPolicyArray

type NatPolicyArray []NatPolicyInput

func (NatPolicyArray) ElementType

func (NatPolicyArray) ElementType() reflect.Type

func (NatPolicyArray) ToNatPolicyArrayOutput

func (i NatPolicyArray) ToNatPolicyArrayOutput() NatPolicyArrayOutput

func (NatPolicyArray) ToNatPolicyArrayOutputWithContext

func (i NatPolicyArray) ToNatPolicyArrayOutputWithContext(ctx context.Context) NatPolicyArrayOutput

type NatPolicyArrayInput

type NatPolicyArrayInput interface {
	pulumi.Input

	ToNatPolicyArrayOutput() NatPolicyArrayOutput
	ToNatPolicyArrayOutputWithContext(context.Context) NatPolicyArrayOutput
}

NatPolicyArrayInput is an input type that accepts NatPolicyArray and NatPolicyArrayOutput values. You can construct a concrete instance of `NatPolicyArrayInput` via:

NatPolicyArray{ NatPolicyArgs{...} }

type NatPolicyArrayOutput

type NatPolicyArrayOutput struct{ *pulumi.OutputState }

func (NatPolicyArrayOutput) ElementType

func (NatPolicyArrayOutput) ElementType() reflect.Type

func (NatPolicyArrayOutput) Index

func (NatPolicyArrayOutput) ToNatPolicyArrayOutput

func (o NatPolicyArrayOutput) ToNatPolicyArrayOutput() NatPolicyArrayOutput

func (NatPolicyArrayOutput) ToNatPolicyArrayOutputWithContext

func (o NatPolicyArrayOutput) ToNatPolicyArrayOutputWithContext(ctx context.Context) NatPolicyArrayOutput

type NatPolicyInput

type NatPolicyInput interface {
	pulumi.Input

	ToNatPolicyOutput() NatPolicyOutput
	ToNatPolicyOutputWithContext(ctx context.Context) NatPolicyOutput
}

type NatPolicyMap

type NatPolicyMap map[string]NatPolicyInput

func (NatPolicyMap) ElementType

func (NatPolicyMap) ElementType() reflect.Type

func (NatPolicyMap) ToNatPolicyMapOutput

func (i NatPolicyMap) ToNatPolicyMapOutput() NatPolicyMapOutput

func (NatPolicyMap) ToNatPolicyMapOutputWithContext

func (i NatPolicyMap) ToNatPolicyMapOutputWithContext(ctx context.Context) NatPolicyMapOutput

type NatPolicyMapInput

type NatPolicyMapInput interface {
	pulumi.Input

	ToNatPolicyMapOutput() NatPolicyMapOutput
	ToNatPolicyMapOutputWithContext(context.Context) NatPolicyMapOutput
}

NatPolicyMapInput is an input type that accepts NatPolicyMap and NatPolicyMapOutput values. You can construct a concrete instance of `NatPolicyMapInput` via:

NatPolicyMap{ "key": NatPolicyArgs{...} }

type NatPolicyMapOutput

type NatPolicyMapOutput struct{ *pulumi.OutputState }

func (NatPolicyMapOutput) ElementType

func (NatPolicyMapOutput) ElementType() reflect.Type

func (NatPolicyMapOutput) MapIndex

func (NatPolicyMapOutput) ToNatPolicyMapOutput

func (o NatPolicyMapOutput) ToNatPolicyMapOutput() NatPolicyMapOutput

func (NatPolicyMapOutput) ToNatPolicyMapOutputWithContext

func (o NatPolicyMapOutput) ToNatPolicyMapOutputWithContext(ctx context.Context) NatPolicyMapOutput

type NatPolicyOutput

type NatPolicyOutput struct{ *pulumi.OutputState }

func (NatPolicyOutput) Description

func (o NatPolicyOutput) Description() pulumi.StringPtrOutput

Description.

func (NatPolicyOutput) Direction

func (o NatPolicyOutput) Direction() pulumi.IntOutput

Rule direction: 1, inbound; 0, outbound.

func (NatPolicyOutput) ElementType

func (NatPolicyOutput) ElementType() reflect.Type

func (NatPolicyOutput) Enable

Rule status, true means enabled, false means disabled. Default is true.

func (NatPolicyOutput) ParamTemplateId

func (o NatPolicyOutput) ParamTemplateId() pulumi.StringOutput

Parameter template id. Note: This field may return null, indicating that no valid value can be obtained.

func (NatPolicyOutput) Port

The port for the access control policy. Value: -1/-1: All ports 80: Port 80.

func (NatPolicyOutput) Protocol

func (o NatPolicyOutput) Protocol() pulumi.StringOutput

Protocol. If Direction=1, optional values: TCP, UDP, ANY; If Direction=0, optional values: TCP, UDP, ICMP, ANY, HTTP, HTTPS, HTTP/HTTPS, SMTP, SMTPS, SMTP/SMTPS, FTP, and DNS.

func (NatPolicyOutput) RuleAction

func (o NatPolicyOutput) RuleAction() pulumi.StringOutput

How the traffic set in the access control policy passes through the cloud firewall. Values: accept: allow; drop: reject; log: observe.

func (NatPolicyOutput) SourceContent

func (o NatPolicyOutput) SourceContent() pulumi.StringOutput

Access source example: net:IP/CIDR(192.168.0.2).

func (NatPolicyOutput) SourceType

func (o NatPolicyOutput) SourceType() pulumi.StringOutput

Access source type: for inbound rules, the type can be net, location, vendor, template; for outbound rules, it can be net, instance, tag, template, group.

func (NatPolicyOutput) TargetContent

func (o NatPolicyOutput) TargetContent() pulumi.StringOutput

Example of access purpose: net: IP/CIDR(192.168.0.2) domain: domain name rules, such as *.qq.com.

func (NatPolicyOutput) TargetType

func (o NatPolicyOutput) TargetType() pulumi.StringOutput

Access purpose type: For inbound rules, the type can be net, instance, tag, template, group; for outbound rules, it can be net, location, vendor, template.

func (NatPolicyOutput) ToNatPolicyOutput

func (o NatPolicyOutput) ToNatPolicyOutput() NatPolicyOutput

func (NatPolicyOutput) ToNatPolicyOutputWithContext

func (o NatPolicyOutput) ToNatPolicyOutputWithContext(ctx context.Context) NatPolicyOutput

func (NatPolicyOutput) Uuid

func (o NatPolicyOutput) Uuid() pulumi.IntOutput

The unique id corresponding to the rule, no need to fill in when creating the rule.

type NatPolicyState

type NatPolicyState struct {
	// Description.
	Description pulumi.StringPtrInput
	// Rule direction: 1, inbound; 0, outbound.
	Direction pulumi.IntPtrInput
	// Rule status, true means enabled, false means disabled. Default is true.
	Enable pulumi.StringPtrInput
	// Parameter template id. Note: This field may return null, indicating that no valid value can be obtained.
	ParamTemplateId pulumi.StringPtrInput
	// The port for the access control policy. Value: -1/-1: All ports 80: Port 80.
	Port pulumi.StringPtrInput
	// Protocol. If Direction=1, optional values: TCP, UDP, ANY; If Direction=0, optional values: TCP, UDP, ICMP, ANY, HTTP, HTTPS, HTTP/HTTPS, SMTP, SMTPS, SMTP/SMTPS, FTP, and DNS.
	Protocol pulumi.StringPtrInput
	// How the traffic set in the access control policy passes through the cloud firewall. Values: accept: allow; drop: reject; log: observe.
	RuleAction pulumi.StringPtrInput
	// Access source example: net:IP/CIDR(192.168.0.2).
	SourceContent pulumi.StringPtrInput
	// Access source type: for inbound rules, the type can be net, location, vendor, template; for outbound rules, it can be net, instance, tag, template, group.
	SourceType pulumi.StringPtrInput
	// Example of access purpose: net: IP/CIDR(192.168.0.2) domain: domain name rules, such as *.qq.com.
	TargetContent pulumi.StringPtrInput
	// Access purpose type: For inbound rules, the type can be net, instance, tag, template, group; for outbound rules, it can be net, location, vendor, template.
	TargetType pulumi.StringPtrInput
	// The unique id corresponding to the rule, no need to fill in when creating the rule.
	Uuid pulumi.IntPtrInput
}

func (NatPolicyState) ElementType

func (NatPolicyState) ElementType() reflect.Type

type SyncAsset

type SyncAsset struct {
	pulumi.CustomResourceState
}

Provides a resource to create a cfw syncAsset

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewSyncAsset(ctx, "example", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetSyncAsset

func GetSyncAsset(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SyncAssetState, opts ...pulumi.ResourceOption) (*SyncAsset, error)

GetSyncAsset gets an existing SyncAsset 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 NewSyncAsset

func NewSyncAsset(ctx *pulumi.Context,
	name string, args *SyncAssetArgs, opts ...pulumi.ResourceOption) (*SyncAsset, error)

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

func (*SyncAsset) ElementType

func (*SyncAsset) ElementType() reflect.Type

func (*SyncAsset) ToSyncAssetOutput

func (i *SyncAsset) ToSyncAssetOutput() SyncAssetOutput

func (*SyncAsset) ToSyncAssetOutputWithContext

func (i *SyncAsset) ToSyncAssetOutputWithContext(ctx context.Context) SyncAssetOutput

type SyncAssetArgs

type SyncAssetArgs struct {
}

The set of arguments for constructing a SyncAsset resource.

func (SyncAssetArgs) ElementType

func (SyncAssetArgs) ElementType() reflect.Type

type SyncAssetArray

type SyncAssetArray []SyncAssetInput

func (SyncAssetArray) ElementType

func (SyncAssetArray) ElementType() reflect.Type

func (SyncAssetArray) ToSyncAssetArrayOutput

func (i SyncAssetArray) ToSyncAssetArrayOutput() SyncAssetArrayOutput

func (SyncAssetArray) ToSyncAssetArrayOutputWithContext

func (i SyncAssetArray) ToSyncAssetArrayOutputWithContext(ctx context.Context) SyncAssetArrayOutput

type SyncAssetArrayInput

type SyncAssetArrayInput interface {
	pulumi.Input

	ToSyncAssetArrayOutput() SyncAssetArrayOutput
	ToSyncAssetArrayOutputWithContext(context.Context) SyncAssetArrayOutput
}

SyncAssetArrayInput is an input type that accepts SyncAssetArray and SyncAssetArrayOutput values. You can construct a concrete instance of `SyncAssetArrayInput` via:

SyncAssetArray{ SyncAssetArgs{...} }

type SyncAssetArrayOutput

type SyncAssetArrayOutput struct{ *pulumi.OutputState }

func (SyncAssetArrayOutput) ElementType

func (SyncAssetArrayOutput) ElementType() reflect.Type

func (SyncAssetArrayOutput) Index

func (SyncAssetArrayOutput) ToSyncAssetArrayOutput

func (o SyncAssetArrayOutput) ToSyncAssetArrayOutput() SyncAssetArrayOutput

func (SyncAssetArrayOutput) ToSyncAssetArrayOutputWithContext

func (o SyncAssetArrayOutput) ToSyncAssetArrayOutputWithContext(ctx context.Context) SyncAssetArrayOutput

type SyncAssetInput

type SyncAssetInput interface {
	pulumi.Input

	ToSyncAssetOutput() SyncAssetOutput
	ToSyncAssetOutputWithContext(ctx context.Context) SyncAssetOutput
}

type SyncAssetMap

type SyncAssetMap map[string]SyncAssetInput

func (SyncAssetMap) ElementType

func (SyncAssetMap) ElementType() reflect.Type

func (SyncAssetMap) ToSyncAssetMapOutput

func (i SyncAssetMap) ToSyncAssetMapOutput() SyncAssetMapOutput

func (SyncAssetMap) ToSyncAssetMapOutputWithContext

func (i SyncAssetMap) ToSyncAssetMapOutputWithContext(ctx context.Context) SyncAssetMapOutput

type SyncAssetMapInput

type SyncAssetMapInput interface {
	pulumi.Input

	ToSyncAssetMapOutput() SyncAssetMapOutput
	ToSyncAssetMapOutputWithContext(context.Context) SyncAssetMapOutput
}

SyncAssetMapInput is an input type that accepts SyncAssetMap and SyncAssetMapOutput values. You can construct a concrete instance of `SyncAssetMapInput` via:

SyncAssetMap{ "key": SyncAssetArgs{...} }

type SyncAssetMapOutput

type SyncAssetMapOutput struct{ *pulumi.OutputState }

func (SyncAssetMapOutput) ElementType

func (SyncAssetMapOutput) ElementType() reflect.Type

func (SyncAssetMapOutput) MapIndex

func (SyncAssetMapOutput) ToSyncAssetMapOutput

func (o SyncAssetMapOutput) ToSyncAssetMapOutput() SyncAssetMapOutput

func (SyncAssetMapOutput) ToSyncAssetMapOutputWithContext

func (o SyncAssetMapOutput) ToSyncAssetMapOutputWithContext(ctx context.Context) SyncAssetMapOutput

type SyncAssetOutput

type SyncAssetOutput struct{ *pulumi.OutputState }

func (SyncAssetOutput) ElementType

func (SyncAssetOutput) ElementType() reflect.Type

func (SyncAssetOutput) ToSyncAssetOutput

func (o SyncAssetOutput) ToSyncAssetOutput() SyncAssetOutput

func (SyncAssetOutput) ToSyncAssetOutputWithContext

func (o SyncAssetOutput) ToSyncAssetOutputWithContext(ctx context.Context) SyncAssetOutput

type SyncAssetState

type SyncAssetState struct {
}

func (SyncAssetState) ElementType

func (SyncAssetState) ElementType() reflect.Type

type SyncRoute

type SyncRoute struct {
	pulumi.CustomResourceState

	// Firewall type; nat: nat firewall; ew: inter-vpc firewall.
	FwType pulumi.StringPtrOutput `pulumi:"fwType"`
	// Synchronization operation type: Route, synchronize firewall routing.
	SyncType pulumi.StringOutput `pulumi:"syncType"`
}

Provides a resource to create a cfw syncRoute

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewSyncRoute(ctx, "example", &Cfw.SyncRouteArgs{
			FwType:   pulumi.String("nat"),
			SyncType: pulumi.String("Route"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetSyncRoute

func GetSyncRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SyncRouteState, opts ...pulumi.ResourceOption) (*SyncRoute, error)

GetSyncRoute gets an existing SyncRoute 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 NewSyncRoute

func NewSyncRoute(ctx *pulumi.Context,
	name string, args *SyncRouteArgs, opts ...pulumi.ResourceOption) (*SyncRoute, error)

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

func (*SyncRoute) ElementType

func (*SyncRoute) ElementType() reflect.Type

func (*SyncRoute) ToSyncRouteOutput

func (i *SyncRoute) ToSyncRouteOutput() SyncRouteOutput

func (*SyncRoute) ToSyncRouteOutputWithContext

func (i *SyncRoute) ToSyncRouteOutputWithContext(ctx context.Context) SyncRouteOutput

type SyncRouteArgs

type SyncRouteArgs struct {
	// Firewall type; nat: nat firewall; ew: inter-vpc firewall.
	FwType pulumi.StringPtrInput
	// Synchronization operation type: Route, synchronize firewall routing.
	SyncType pulumi.StringInput
}

The set of arguments for constructing a SyncRoute resource.

func (SyncRouteArgs) ElementType

func (SyncRouteArgs) ElementType() reflect.Type

type SyncRouteArray

type SyncRouteArray []SyncRouteInput

func (SyncRouteArray) ElementType

func (SyncRouteArray) ElementType() reflect.Type

func (SyncRouteArray) ToSyncRouteArrayOutput

func (i SyncRouteArray) ToSyncRouteArrayOutput() SyncRouteArrayOutput

func (SyncRouteArray) ToSyncRouteArrayOutputWithContext

func (i SyncRouteArray) ToSyncRouteArrayOutputWithContext(ctx context.Context) SyncRouteArrayOutput

type SyncRouteArrayInput

type SyncRouteArrayInput interface {
	pulumi.Input

	ToSyncRouteArrayOutput() SyncRouteArrayOutput
	ToSyncRouteArrayOutputWithContext(context.Context) SyncRouteArrayOutput
}

SyncRouteArrayInput is an input type that accepts SyncRouteArray and SyncRouteArrayOutput values. You can construct a concrete instance of `SyncRouteArrayInput` via:

SyncRouteArray{ SyncRouteArgs{...} }

type SyncRouteArrayOutput

type SyncRouteArrayOutput struct{ *pulumi.OutputState }

func (SyncRouteArrayOutput) ElementType

func (SyncRouteArrayOutput) ElementType() reflect.Type

func (SyncRouteArrayOutput) Index

func (SyncRouteArrayOutput) ToSyncRouteArrayOutput

func (o SyncRouteArrayOutput) ToSyncRouteArrayOutput() SyncRouteArrayOutput

func (SyncRouteArrayOutput) ToSyncRouteArrayOutputWithContext

func (o SyncRouteArrayOutput) ToSyncRouteArrayOutputWithContext(ctx context.Context) SyncRouteArrayOutput

type SyncRouteInput

type SyncRouteInput interface {
	pulumi.Input

	ToSyncRouteOutput() SyncRouteOutput
	ToSyncRouteOutputWithContext(ctx context.Context) SyncRouteOutput
}

type SyncRouteMap

type SyncRouteMap map[string]SyncRouteInput

func (SyncRouteMap) ElementType

func (SyncRouteMap) ElementType() reflect.Type

func (SyncRouteMap) ToSyncRouteMapOutput

func (i SyncRouteMap) ToSyncRouteMapOutput() SyncRouteMapOutput

func (SyncRouteMap) ToSyncRouteMapOutputWithContext

func (i SyncRouteMap) ToSyncRouteMapOutputWithContext(ctx context.Context) SyncRouteMapOutput

type SyncRouteMapInput

type SyncRouteMapInput interface {
	pulumi.Input

	ToSyncRouteMapOutput() SyncRouteMapOutput
	ToSyncRouteMapOutputWithContext(context.Context) SyncRouteMapOutput
}

SyncRouteMapInput is an input type that accepts SyncRouteMap and SyncRouteMapOutput values. You can construct a concrete instance of `SyncRouteMapInput` via:

SyncRouteMap{ "key": SyncRouteArgs{...} }

type SyncRouteMapOutput

type SyncRouteMapOutput struct{ *pulumi.OutputState }

func (SyncRouteMapOutput) ElementType

func (SyncRouteMapOutput) ElementType() reflect.Type

func (SyncRouteMapOutput) MapIndex

func (SyncRouteMapOutput) ToSyncRouteMapOutput

func (o SyncRouteMapOutput) ToSyncRouteMapOutput() SyncRouteMapOutput

func (SyncRouteMapOutput) ToSyncRouteMapOutputWithContext

func (o SyncRouteMapOutput) ToSyncRouteMapOutputWithContext(ctx context.Context) SyncRouteMapOutput

type SyncRouteOutput

type SyncRouteOutput struct{ *pulumi.OutputState }

func (SyncRouteOutput) ElementType

func (SyncRouteOutput) ElementType() reflect.Type

func (SyncRouteOutput) FwType

Firewall type; nat: nat firewall; ew: inter-vpc firewall.

func (SyncRouteOutput) SyncType

func (o SyncRouteOutput) SyncType() pulumi.StringOutput

Synchronization operation type: Route, synchronize firewall routing.

func (SyncRouteOutput) ToSyncRouteOutput

func (o SyncRouteOutput) ToSyncRouteOutput() SyncRouteOutput

func (SyncRouteOutput) ToSyncRouteOutputWithContext

func (o SyncRouteOutput) ToSyncRouteOutputWithContext(ctx context.Context) SyncRouteOutput

type SyncRouteState

type SyncRouteState struct {
	// Firewall type; nat: nat firewall; ew: inter-vpc firewall.
	FwType pulumi.StringPtrInput
	// Synchronization operation type: Route, synchronize firewall routing.
	SyncType pulumi.StringPtrInput
}

func (SyncRouteState) ElementType

func (SyncRouteState) ElementType() reflect.Type

type VpcFirewallSwitch

type VpcFirewallSwitch struct {
	pulumi.CustomResourceState

	// Turn the switch on or off. 0: turn off the switch; 1: Turn on the switch.
	Enable pulumi.IntOutput `pulumi:"enable"`
	// Firewall switch ID.
	SwitchId pulumi.StringOutput `pulumi:"switchId"`
	// Firewall instance id.
	VpcInsId pulumi.StringOutput `pulumi:"vpcInsId"`
}

Provides a resource to create a cfw vpcFirewallSwitch

## Example Usage ### Turn off switch

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleVpcFwSwitches, err := Cfw.GetVpcFwSwitches(ctx, &cfw.GetVpcFwSwitchesArgs{
			VpcInsId: "cfwg-c8c2de41",
		}, nil)
		if err != nil {
			return err
		}
		_, err = Cfw.NewVpcFirewallSwitch(ctx, "exampleVpcFirewallSwitch", &Cfw.VpcFirewallSwitchArgs{
			VpcInsId: pulumi.String(exampleVpcFwSwitches.Id),
			SwitchId: pulumi.String(exampleVpcFwSwitches.SwitchLists[0].SwitchId),
			Enable:   pulumi.Int(0),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Or turn on switch

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleVpcFwSwitches, err := Cfw.GetVpcFwSwitches(ctx, &cfw.GetVpcFwSwitchesArgs{
			VpcInsId: "cfwg-c8c2de41",
		}, nil)
		if err != nil {
			return err
		}
		_, err = Cfw.NewVpcFirewallSwitch(ctx, "exampleVpcFirewallSwitch", &Cfw.VpcFirewallSwitchArgs{
			VpcInsId: pulumi.String(exampleVpcFwSwitches.Id),
			SwitchId: pulumi.String(exampleVpcFwSwitches.SwitchLists[0].SwitchId),
			Enable:   pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

cfw vpc_firewall_switch can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Cfw/vpcFirewallSwitch:VpcFirewallSwitch example cfwg-c8c2de41#cfws-f2c63ded84

```

func GetVpcFirewallSwitch

func GetVpcFirewallSwitch(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcFirewallSwitchState, opts ...pulumi.ResourceOption) (*VpcFirewallSwitch, error)

GetVpcFirewallSwitch gets an existing VpcFirewallSwitch 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 NewVpcFirewallSwitch

func NewVpcFirewallSwitch(ctx *pulumi.Context,
	name string, args *VpcFirewallSwitchArgs, opts ...pulumi.ResourceOption) (*VpcFirewallSwitch, error)

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

func (*VpcFirewallSwitch) ElementType

func (*VpcFirewallSwitch) ElementType() reflect.Type

func (*VpcFirewallSwitch) ToVpcFirewallSwitchOutput

func (i *VpcFirewallSwitch) ToVpcFirewallSwitchOutput() VpcFirewallSwitchOutput

func (*VpcFirewallSwitch) ToVpcFirewallSwitchOutputWithContext

func (i *VpcFirewallSwitch) ToVpcFirewallSwitchOutputWithContext(ctx context.Context) VpcFirewallSwitchOutput

type VpcFirewallSwitchArgs

type VpcFirewallSwitchArgs struct {
	// Turn the switch on or off. 0: turn off the switch; 1: Turn on the switch.
	Enable pulumi.IntInput
	// Firewall switch ID.
	SwitchId pulumi.StringInput
	// Firewall instance id.
	VpcInsId pulumi.StringInput
}

The set of arguments for constructing a VpcFirewallSwitch resource.

func (VpcFirewallSwitchArgs) ElementType

func (VpcFirewallSwitchArgs) ElementType() reflect.Type

type VpcFirewallSwitchArray

type VpcFirewallSwitchArray []VpcFirewallSwitchInput

func (VpcFirewallSwitchArray) ElementType

func (VpcFirewallSwitchArray) ElementType() reflect.Type

func (VpcFirewallSwitchArray) ToVpcFirewallSwitchArrayOutput

func (i VpcFirewallSwitchArray) ToVpcFirewallSwitchArrayOutput() VpcFirewallSwitchArrayOutput

func (VpcFirewallSwitchArray) ToVpcFirewallSwitchArrayOutputWithContext

func (i VpcFirewallSwitchArray) ToVpcFirewallSwitchArrayOutputWithContext(ctx context.Context) VpcFirewallSwitchArrayOutput

type VpcFirewallSwitchArrayInput

type VpcFirewallSwitchArrayInput interface {
	pulumi.Input

	ToVpcFirewallSwitchArrayOutput() VpcFirewallSwitchArrayOutput
	ToVpcFirewallSwitchArrayOutputWithContext(context.Context) VpcFirewallSwitchArrayOutput
}

VpcFirewallSwitchArrayInput is an input type that accepts VpcFirewallSwitchArray and VpcFirewallSwitchArrayOutput values. You can construct a concrete instance of `VpcFirewallSwitchArrayInput` via:

VpcFirewallSwitchArray{ VpcFirewallSwitchArgs{...} }

type VpcFirewallSwitchArrayOutput

type VpcFirewallSwitchArrayOutput struct{ *pulumi.OutputState }

func (VpcFirewallSwitchArrayOutput) ElementType

func (VpcFirewallSwitchArrayOutput) Index

func (VpcFirewallSwitchArrayOutput) ToVpcFirewallSwitchArrayOutput

func (o VpcFirewallSwitchArrayOutput) ToVpcFirewallSwitchArrayOutput() VpcFirewallSwitchArrayOutput

func (VpcFirewallSwitchArrayOutput) ToVpcFirewallSwitchArrayOutputWithContext

func (o VpcFirewallSwitchArrayOutput) ToVpcFirewallSwitchArrayOutputWithContext(ctx context.Context) VpcFirewallSwitchArrayOutput

type VpcFirewallSwitchInput

type VpcFirewallSwitchInput interface {
	pulumi.Input

	ToVpcFirewallSwitchOutput() VpcFirewallSwitchOutput
	ToVpcFirewallSwitchOutputWithContext(ctx context.Context) VpcFirewallSwitchOutput
}

type VpcFirewallSwitchMap

type VpcFirewallSwitchMap map[string]VpcFirewallSwitchInput

func (VpcFirewallSwitchMap) ElementType

func (VpcFirewallSwitchMap) ElementType() reflect.Type

func (VpcFirewallSwitchMap) ToVpcFirewallSwitchMapOutput

func (i VpcFirewallSwitchMap) ToVpcFirewallSwitchMapOutput() VpcFirewallSwitchMapOutput

func (VpcFirewallSwitchMap) ToVpcFirewallSwitchMapOutputWithContext

func (i VpcFirewallSwitchMap) ToVpcFirewallSwitchMapOutputWithContext(ctx context.Context) VpcFirewallSwitchMapOutput

type VpcFirewallSwitchMapInput

type VpcFirewallSwitchMapInput interface {
	pulumi.Input

	ToVpcFirewallSwitchMapOutput() VpcFirewallSwitchMapOutput
	ToVpcFirewallSwitchMapOutputWithContext(context.Context) VpcFirewallSwitchMapOutput
}

VpcFirewallSwitchMapInput is an input type that accepts VpcFirewallSwitchMap and VpcFirewallSwitchMapOutput values. You can construct a concrete instance of `VpcFirewallSwitchMapInput` via:

VpcFirewallSwitchMap{ "key": VpcFirewallSwitchArgs{...} }

type VpcFirewallSwitchMapOutput

type VpcFirewallSwitchMapOutput struct{ *pulumi.OutputState }

func (VpcFirewallSwitchMapOutput) ElementType

func (VpcFirewallSwitchMapOutput) ElementType() reflect.Type

func (VpcFirewallSwitchMapOutput) MapIndex

func (VpcFirewallSwitchMapOutput) ToVpcFirewallSwitchMapOutput

func (o VpcFirewallSwitchMapOutput) ToVpcFirewallSwitchMapOutput() VpcFirewallSwitchMapOutput

func (VpcFirewallSwitchMapOutput) ToVpcFirewallSwitchMapOutputWithContext

func (o VpcFirewallSwitchMapOutput) ToVpcFirewallSwitchMapOutputWithContext(ctx context.Context) VpcFirewallSwitchMapOutput

type VpcFirewallSwitchOutput

type VpcFirewallSwitchOutput struct{ *pulumi.OutputState }

func (VpcFirewallSwitchOutput) ElementType

func (VpcFirewallSwitchOutput) ElementType() reflect.Type

func (VpcFirewallSwitchOutput) Enable

Turn the switch on or off. 0: turn off the switch; 1: Turn on the switch.

func (VpcFirewallSwitchOutput) SwitchId

Firewall switch ID.

func (VpcFirewallSwitchOutput) ToVpcFirewallSwitchOutput

func (o VpcFirewallSwitchOutput) ToVpcFirewallSwitchOutput() VpcFirewallSwitchOutput

func (VpcFirewallSwitchOutput) ToVpcFirewallSwitchOutputWithContext

func (o VpcFirewallSwitchOutput) ToVpcFirewallSwitchOutputWithContext(ctx context.Context) VpcFirewallSwitchOutput

func (VpcFirewallSwitchOutput) VpcInsId

Firewall instance id.

type VpcFirewallSwitchState

type VpcFirewallSwitchState struct {
	// Turn the switch on or off. 0: turn off the switch; 1: Turn on the switch.
	Enable pulumi.IntPtrInput
	// Firewall switch ID.
	SwitchId pulumi.StringPtrInput
	// Firewall instance id.
	VpcInsId pulumi.StringPtrInput
}

func (VpcFirewallSwitchState) ElementType

func (VpcFirewallSwitchState) ElementType() reflect.Type

type VpcInstance

type VpcInstance struct {
	pulumi.CustomResourceState

	// Cloud networking id, suitable for cloud networking mode.
	CcnId pulumi.StringPtrOutput `pulumi:"ccnId"`
	// auto Automatically select the firewall network segment; 10.10.10.0/24 The firewall network segment entered by the user.
	FwVpcCidr pulumi.StringPtrOutput `pulumi:"fwVpcCidr"`
	// Mode 0: private network mode; 1: CCN cloud networking mode.
	Mode pulumi.IntOutput `pulumi:"mode"`
	// VPC firewall (group) name.
	Name pulumi.StringOutput `pulumi:"name"`
	// Switch mode of firewall instance. 1: Single point intercommunication; 2: Multi-point communication; 4: Custom Routing.
	SwitchMode pulumi.IntOutput `pulumi:"switchMode"`
	// List of firewall instances under firewall (group).
	VpcFwInstances VpcInstanceVpcFwInstanceArrayOutput `pulumi:"vpcFwInstances"`
}

Provides a resource to create a cfw vpcInstance

## Example Usage ### If mode is 0

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewVpcInstance(ctx, "example", &Cfw.VpcInstanceArgs{
			FwVpcCidr:  pulumi.String("auto"),
			Mode:       pulumi.Int(0),
			SwitchMode: pulumi.Int(1),
			VpcFwInstances: cfw.VpcInstanceVpcFwInstanceArray{
				&cfw.VpcInstanceVpcFwInstanceArgs{
					FwDeploy: &cfw.VpcInstanceVpcFwInstanceFwDeployArgs{
						CrossAZone:   pulumi.Int(1),
						DeployRegion: pulumi.String("ap-guangzhou"),
						Width:        pulumi.Int(1024),
						ZoneSet: []string{
							"ap-guangzhou-6",
							"ap-guangzhou-7",
						},
					},
					Name: pulumi.String("fw_ins_example"),
					VpcIds: pulumi.StringArray{
						pulumi.String("vpc-291vnoeu"),
						pulumi.String("vpc-39ixq9ci"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### If mode is 1

```go package main

import (

"github.com/pulumi/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewVpcInstance(ctx, "example", &Cfw.VpcInstanceArgs{
			CcnId:      pulumi.String("ccn-peihfqo7"),
			FwVpcCidr:  pulumi.String("auto"),
			Mode:       pulumi.Int(1),
			SwitchMode: pulumi.Int(1),
			VpcFwInstances: cfw.VpcInstanceVpcFwInstanceArray{
				&cfw.VpcInstanceVpcFwInstanceArgs{
					FwDeploy: &cfw.VpcInstanceVpcFwInstanceFwDeployArgs{
						CrossAZone:   pulumi.Int(0),
						DeployRegion: pulumi.String("ap-guangzhou"),
						Width:        pulumi.Int(1024),
						ZoneSet: []string{
							"ap-guangzhou-6",
						},
					},
					Name: pulumi.String("fw_ins_example"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

cfw vpc_instance can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Cfw/vpcInstance:VpcInstance example cfwg-4ee69507

```

func GetVpcInstance

func GetVpcInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcInstanceState, opts ...pulumi.ResourceOption) (*VpcInstance, error)

GetVpcInstance gets an existing VpcInstance 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 NewVpcInstance

func NewVpcInstance(ctx *pulumi.Context,
	name string, args *VpcInstanceArgs, opts ...pulumi.ResourceOption) (*VpcInstance, error)

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

func (*VpcInstance) ElementType

func (*VpcInstance) ElementType() reflect.Type

func (*VpcInstance) ToVpcInstanceOutput

func (i *VpcInstance) ToVpcInstanceOutput() VpcInstanceOutput

func (*VpcInstance) ToVpcInstanceOutputWithContext

func (i *VpcInstance) ToVpcInstanceOutputWithContext(ctx context.Context) VpcInstanceOutput

type VpcInstanceArgs

type VpcInstanceArgs struct {
	// Cloud networking id, suitable for cloud networking mode.
	CcnId pulumi.StringPtrInput
	// auto Automatically select the firewall network segment; 10.10.10.0/24 The firewall network segment entered by the user.
	FwVpcCidr pulumi.StringPtrInput
	// Mode 0: private network mode; 1: CCN cloud networking mode.
	Mode pulumi.IntInput
	// VPC firewall (group) name.
	Name pulumi.StringPtrInput
	// Switch mode of firewall instance. 1: Single point intercommunication; 2: Multi-point communication; 4: Custom Routing.
	SwitchMode pulumi.IntInput
	// List of firewall instances under firewall (group).
	VpcFwInstances VpcInstanceVpcFwInstanceArrayInput
}

The set of arguments for constructing a VpcInstance resource.

func (VpcInstanceArgs) ElementType

func (VpcInstanceArgs) ElementType() reflect.Type

type VpcInstanceArray

type VpcInstanceArray []VpcInstanceInput

func (VpcInstanceArray) ElementType

func (VpcInstanceArray) ElementType() reflect.Type

func (VpcInstanceArray) ToVpcInstanceArrayOutput

func (i VpcInstanceArray) ToVpcInstanceArrayOutput() VpcInstanceArrayOutput

func (VpcInstanceArray) ToVpcInstanceArrayOutputWithContext

func (i VpcInstanceArray) ToVpcInstanceArrayOutputWithContext(ctx context.Context) VpcInstanceArrayOutput

type VpcInstanceArrayInput

type VpcInstanceArrayInput interface {
	pulumi.Input

	ToVpcInstanceArrayOutput() VpcInstanceArrayOutput
	ToVpcInstanceArrayOutputWithContext(context.Context) VpcInstanceArrayOutput
}

VpcInstanceArrayInput is an input type that accepts VpcInstanceArray and VpcInstanceArrayOutput values. You can construct a concrete instance of `VpcInstanceArrayInput` via:

VpcInstanceArray{ VpcInstanceArgs{...} }

type VpcInstanceArrayOutput

type VpcInstanceArrayOutput struct{ *pulumi.OutputState }

func (VpcInstanceArrayOutput) ElementType

func (VpcInstanceArrayOutput) ElementType() reflect.Type

func (VpcInstanceArrayOutput) Index

func (VpcInstanceArrayOutput) ToVpcInstanceArrayOutput

func (o VpcInstanceArrayOutput) ToVpcInstanceArrayOutput() VpcInstanceArrayOutput

func (VpcInstanceArrayOutput) ToVpcInstanceArrayOutputWithContext

func (o VpcInstanceArrayOutput) ToVpcInstanceArrayOutputWithContext(ctx context.Context) VpcInstanceArrayOutput

type VpcInstanceInput

type VpcInstanceInput interface {
	pulumi.Input

	ToVpcInstanceOutput() VpcInstanceOutput
	ToVpcInstanceOutputWithContext(ctx context.Context) VpcInstanceOutput
}

type VpcInstanceMap

type VpcInstanceMap map[string]VpcInstanceInput

func (VpcInstanceMap) ElementType

func (VpcInstanceMap) ElementType() reflect.Type

func (VpcInstanceMap) ToVpcInstanceMapOutput

func (i VpcInstanceMap) ToVpcInstanceMapOutput() VpcInstanceMapOutput

func (VpcInstanceMap) ToVpcInstanceMapOutputWithContext

func (i VpcInstanceMap) ToVpcInstanceMapOutputWithContext(ctx context.Context) VpcInstanceMapOutput

type VpcInstanceMapInput

type VpcInstanceMapInput interface {
	pulumi.Input

	ToVpcInstanceMapOutput() VpcInstanceMapOutput
	ToVpcInstanceMapOutputWithContext(context.Context) VpcInstanceMapOutput
}

VpcInstanceMapInput is an input type that accepts VpcInstanceMap and VpcInstanceMapOutput values. You can construct a concrete instance of `VpcInstanceMapInput` via:

VpcInstanceMap{ "key": VpcInstanceArgs{...} }

type VpcInstanceMapOutput

type VpcInstanceMapOutput struct{ *pulumi.OutputState }

func (VpcInstanceMapOutput) ElementType

func (VpcInstanceMapOutput) ElementType() reflect.Type

func (VpcInstanceMapOutput) MapIndex

func (VpcInstanceMapOutput) ToVpcInstanceMapOutput

func (o VpcInstanceMapOutput) ToVpcInstanceMapOutput() VpcInstanceMapOutput

func (VpcInstanceMapOutput) ToVpcInstanceMapOutputWithContext

func (o VpcInstanceMapOutput) ToVpcInstanceMapOutputWithContext(ctx context.Context) VpcInstanceMapOutput

type VpcInstanceOutput

type VpcInstanceOutput struct{ *pulumi.OutputState }

func (VpcInstanceOutput) CcnId

Cloud networking id, suitable for cloud networking mode.

func (VpcInstanceOutput) ElementType

func (VpcInstanceOutput) ElementType() reflect.Type

func (VpcInstanceOutput) FwVpcCidr

auto Automatically select the firewall network segment; 10.10.10.0/24 The firewall network segment entered by the user.

func (VpcInstanceOutput) Mode

Mode 0: private network mode; 1: CCN cloud networking mode.

func (VpcInstanceOutput) Name

VPC firewall (group) name.

func (VpcInstanceOutput) SwitchMode

func (o VpcInstanceOutput) SwitchMode() pulumi.IntOutput

Switch mode of firewall instance. 1: Single point intercommunication; 2: Multi-point communication; 4: Custom Routing.

func (VpcInstanceOutput) ToVpcInstanceOutput

func (o VpcInstanceOutput) ToVpcInstanceOutput() VpcInstanceOutput

func (VpcInstanceOutput) ToVpcInstanceOutputWithContext

func (o VpcInstanceOutput) ToVpcInstanceOutputWithContext(ctx context.Context) VpcInstanceOutput

func (VpcInstanceOutput) VpcFwInstances

List of firewall instances under firewall (group).

type VpcInstanceState

type VpcInstanceState struct {
	// Cloud networking id, suitable for cloud networking mode.
	CcnId pulumi.StringPtrInput
	// auto Automatically select the firewall network segment; 10.10.10.0/24 The firewall network segment entered by the user.
	FwVpcCidr pulumi.StringPtrInput
	// Mode 0: private network mode; 1: CCN cloud networking mode.
	Mode pulumi.IntPtrInput
	// VPC firewall (group) name.
	Name pulumi.StringPtrInput
	// Switch mode of firewall instance. 1: Single point intercommunication; 2: Multi-point communication; 4: Custom Routing.
	SwitchMode pulumi.IntPtrInput
	// List of firewall instances under firewall (group).
	VpcFwInstances VpcInstanceVpcFwInstanceArrayInput
}

func (VpcInstanceState) ElementType

func (VpcInstanceState) ElementType() reflect.Type

type VpcInstanceVpcFwInstance

type VpcInstanceVpcFwInstance struct {
	// Deploy regional information.
	FwDeploy VpcInstanceVpcFwInstanceFwDeploy `pulumi:"fwDeploy"`
	FwInsId  *string                          `pulumi:"fwInsId"`
	// Firewall instance name.
	Name string `pulumi:"name"`
	// List of VpcIds accessed in private network mode; only used in private network mode.
	VpcIds []string `pulumi:"vpcIds"`
}

type VpcInstanceVpcFwInstanceArgs

type VpcInstanceVpcFwInstanceArgs struct {
	// Deploy regional information.
	FwDeploy VpcInstanceVpcFwInstanceFwDeployInput `pulumi:"fwDeploy"`
	FwInsId  pulumi.StringPtrInput                 `pulumi:"fwInsId"`
	// Firewall instance name.
	Name pulumi.StringInput `pulumi:"name"`
	// List of VpcIds accessed in private network mode; only used in private network mode.
	VpcIds pulumi.StringArrayInput `pulumi:"vpcIds"`
}

func (VpcInstanceVpcFwInstanceArgs) ElementType

func (VpcInstanceVpcFwInstanceArgs) ToVpcInstanceVpcFwInstanceOutput

func (i VpcInstanceVpcFwInstanceArgs) ToVpcInstanceVpcFwInstanceOutput() VpcInstanceVpcFwInstanceOutput

func (VpcInstanceVpcFwInstanceArgs) ToVpcInstanceVpcFwInstanceOutputWithContext

func (i VpcInstanceVpcFwInstanceArgs) ToVpcInstanceVpcFwInstanceOutputWithContext(ctx context.Context) VpcInstanceVpcFwInstanceOutput

type VpcInstanceVpcFwInstanceArray

type VpcInstanceVpcFwInstanceArray []VpcInstanceVpcFwInstanceInput

func (VpcInstanceVpcFwInstanceArray) ElementType

func (VpcInstanceVpcFwInstanceArray) ToVpcInstanceVpcFwInstanceArrayOutput

func (i VpcInstanceVpcFwInstanceArray) ToVpcInstanceVpcFwInstanceArrayOutput() VpcInstanceVpcFwInstanceArrayOutput

func (VpcInstanceVpcFwInstanceArray) ToVpcInstanceVpcFwInstanceArrayOutputWithContext

func (i VpcInstanceVpcFwInstanceArray) ToVpcInstanceVpcFwInstanceArrayOutputWithContext(ctx context.Context) VpcInstanceVpcFwInstanceArrayOutput

type VpcInstanceVpcFwInstanceArrayInput

type VpcInstanceVpcFwInstanceArrayInput interface {
	pulumi.Input

	ToVpcInstanceVpcFwInstanceArrayOutput() VpcInstanceVpcFwInstanceArrayOutput
	ToVpcInstanceVpcFwInstanceArrayOutputWithContext(context.Context) VpcInstanceVpcFwInstanceArrayOutput
}

VpcInstanceVpcFwInstanceArrayInput is an input type that accepts VpcInstanceVpcFwInstanceArray and VpcInstanceVpcFwInstanceArrayOutput values. You can construct a concrete instance of `VpcInstanceVpcFwInstanceArrayInput` via:

VpcInstanceVpcFwInstanceArray{ VpcInstanceVpcFwInstanceArgs{...} }

type VpcInstanceVpcFwInstanceArrayOutput

type VpcInstanceVpcFwInstanceArrayOutput struct{ *pulumi.OutputState }

func (VpcInstanceVpcFwInstanceArrayOutput) ElementType

func (VpcInstanceVpcFwInstanceArrayOutput) Index

func (VpcInstanceVpcFwInstanceArrayOutput) ToVpcInstanceVpcFwInstanceArrayOutput

func (o VpcInstanceVpcFwInstanceArrayOutput) ToVpcInstanceVpcFwInstanceArrayOutput() VpcInstanceVpcFwInstanceArrayOutput

func (VpcInstanceVpcFwInstanceArrayOutput) ToVpcInstanceVpcFwInstanceArrayOutputWithContext

func (o VpcInstanceVpcFwInstanceArrayOutput) ToVpcInstanceVpcFwInstanceArrayOutputWithContext(ctx context.Context) VpcInstanceVpcFwInstanceArrayOutput

type VpcInstanceVpcFwInstanceFwDeploy

type VpcInstanceVpcFwInstanceFwDeploy struct {
	// Off-site disaster recovery 1: use off-site disaster recovery; 0: do not use off-site disaster recovery; if it is empty, off-site disaster recovery will not be used by default.
	CrossAZone *int `pulumi:"crossAZone"`
	// Firewall Deployment Region.
	DeployRegion string `pulumi:"deployRegion"`
	// Bandwidth, unit: Mbps.
	Width int `pulumi:"width"`
	// Zone list.
	ZoneSets []string `pulumi:"zoneSets"`
}

type VpcInstanceVpcFwInstanceFwDeployArgs

type VpcInstanceVpcFwInstanceFwDeployArgs struct {
	// Off-site disaster recovery 1: use off-site disaster recovery; 0: do not use off-site disaster recovery; if it is empty, off-site disaster recovery will not be used by default.
	CrossAZone pulumi.IntPtrInput `pulumi:"crossAZone"`
	// Firewall Deployment Region.
	DeployRegion pulumi.StringInput `pulumi:"deployRegion"`
	// Bandwidth, unit: Mbps.
	Width pulumi.IntInput `pulumi:"width"`
	// Zone list.
	ZoneSets pulumi.StringArrayInput `pulumi:"zoneSets"`
}

func (VpcInstanceVpcFwInstanceFwDeployArgs) ElementType

func (VpcInstanceVpcFwInstanceFwDeployArgs) ToVpcInstanceVpcFwInstanceFwDeployOutput

func (i VpcInstanceVpcFwInstanceFwDeployArgs) ToVpcInstanceVpcFwInstanceFwDeployOutput() VpcInstanceVpcFwInstanceFwDeployOutput

func (VpcInstanceVpcFwInstanceFwDeployArgs) ToVpcInstanceVpcFwInstanceFwDeployOutputWithContext

func (i VpcInstanceVpcFwInstanceFwDeployArgs) ToVpcInstanceVpcFwInstanceFwDeployOutputWithContext(ctx context.Context) VpcInstanceVpcFwInstanceFwDeployOutput

type VpcInstanceVpcFwInstanceFwDeployInput

type VpcInstanceVpcFwInstanceFwDeployInput interface {
	pulumi.Input

	ToVpcInstanceVpcFwInstanceFwDeployOutput() VpcInstanceVpcFwInstanceFwDeployOutput
	ToVpcInstanceVpcFwInstanceFwDeployOutputWithContext(context.Context) VpcInstanceVpcFwInstanceFwDeployOutput
}

VpcInstanceVpcFwInstanceFwDeployInput is an input type that accepts VpcInstanceVpcFwInstanceFwDeployArgs and VpcInstanceVpcFwInstanceFwDeployOutput values. You can construct a concrete instance of `VpcInstanceVpcFwInstanceFwDeployInput` via:

VpcInstanceVpcFwInstanceFwDeployArgs{...}

type VpcInstanceVpcFwInstanceFwDeployOutput

type VpcInstanceVpcFwInstanceFwDeployOutput struct{ *pulumi.OutputState }

func (VpcInstanceVpcFwInstanceFwDeployOutput) CrossAZone

Off-site disaster recovery 1: use off-site disaster recovery; 0: do not use off-site disaster recovery; if it is empty, off-site disaster recovery will not be used by default.

func (VpcInstanceVpcFwInstanceFwDeployOutput) DeployRegion

Firewall Deployment Region.

func (VpcInstanceVpcFwInstanceFwDeployOutput) ElementType

func (VpcInstanceVpcFwInstanceFwDeployOutput) ToVpcInstanceVpcFwInstanceFwDeployOutput

func (o VpcInstanceVpcFwInstanceFwDeployOutput) ToVpcInstanceVpcFwInstanceFwDeployOutput() VpcInstanceVpcFwInstanceFwDeployOutput

func (VpcInstanceVpcFwInstanceFwDeployOutput) ToVpcInstanceVpcFwInstanceFwDeployOutputWithContext

func (o VpcInstanceVpcFwInstanceFwDeployOutput) ToVpcInstanceVpcFwInstanceFwDeployOutputWithContext(ctx context.Context) VpcInstanceVpcFwInstanceFwDeployOutput

func (VpcInstanceVpcFwInstanceFwDeployOutput) Width

Bandwidth, unit: Mbps.

func (VpcInstanceVpcFwInstanceFwDeployOutput) ZoneSets

Zone list.

type VpcInstanceVpcFwInstanceInput

type VpcInstanceVpcFwInstanceInput interface {
	pulumi.Input

	ToVpcInstanceVpcFwInstanceOutput() VpcInstanceVpcFwInstanceOutput
	ToVpcInstanceVpcFwInstanceOutputWithContext(context.Context) VpcInstanceVpcFwInstanceOutput
}

VpcInstanceVpcFwInstanceInput is an input type that accepts VpcInstanceVpcFwInstanceArgs and VpcInstanceVpcFwInstanceOutput values. You can construct a concrete instance of `VpcInstanceVpcFwInstanceInput` via:

VpcInstanceVpcFwInstanceArgs{...}

type VpcInstanceVpcFwInstanceOutput

type VpcInstanceVpcFwInstanceOutput struct{ *pulumi.OutputState }

func (VpcInstanceVpcFwInstanceOutput) ElementType

func (VpcInstanceVpcFwInstanceOutput) FwDeploy

Deploy regional information.

func (VpcInstanceVpcFwInstanceOutput) FwInsId

func (VpcInstanceVpcFwInstanceOutput) Name

Firewall instance name.

func (VpcInstanceVpcFwInstanceOutput) ToVpcInstanceVpcFwInstanceOutput

func (o VpcInstanceVpcFwInstanceOutput) ToVpcInstanceVpcFwInstanceOutput() VpcInstanceVpcFwInstanceOutput

func (VpcInstanceVpcFwInstanceOutput) ToVpcInstanceVpcFwInstanceOutputWithContext

func (o VpcInstanceVpcFwInstanceOutput) ToVpcInstanceVpcFwInstanceOutputWithContext(ctx context.Context) VpcInstanceVpcFwInstanceOutput

func (VpcInstanceVpcFwInstanceOutput) VpcIds

List of VpcIds accessed in private network mode; only used in private network mode.

type VpcPolicy

type VpcPolicy struct {
	pulumi.CustomResourceState

	// Beta mission details. Note: This field may return null, indicating that no valid value can be obtained.
	BetaLists VpcPolicyBetaListArrayOutput `pulumi:"betaLists"`
	// Describe.
	Description pulumi.StringOutput `pulumi:"description"`
	// Access purpose example: net:IP/CIDR(192.168.0.2) domain:domain rule, for example*.qq.com.
	DestContent pulumi.StringOutput `pulumi:"destContent"`
	// Access purpose type, the type can be: net, template.
	DestType pulumi.StringOutput `pulumi:"destType"`
	// Rule status, true means enabled, false means disabled. Default is true.
	Enable pulumi.StringPtrOutput `pulumi:"enable"`
	// Firewall instance ID where the rule takes effect. Default is ALL.
	FwGroupId pulumi.StringPtrOutput `pulumi:"fwGroupId"`
	// Firewall name.
	FwGroupName pulumi.StringOutput `pulumi:"fwGroupName"`
	// Uuid used internally, this field is generally not used.
	InternalUuid pulumi.IntOutput `pulumi:"internalUuid"`
	// Parameter template id. Note: This field may return null, indicating that no valid value can be obtained.
	ParamTemplateId pulumi.StringOutput `pulumi:"paramTemplateId"`
	// Parameter template Name. Note: This field may return null, indicating that no valid value can be obtained.
	ParamTemplateName pulumi.StringOutput `pulumi:"paramTemplateName"`
	// The port for the access control policy. Value: -1/-1: All ports; 80: port 80.
	Port pulumi.StringOutput `pulumi:"port"`
	// Protocol, optional value:TCP, UDP, ICMP, ANY, HTTP, HTTPS, HTTP/HTTPS, SMTP, SMTPS, SMTP/SMTPS, FTP, DNS, TLS/SSL.
	Protocol pulumi.StringOutput `pulumi:"protocol"`
	// How traffic set in the access control policy passes through the cloud firewall. Value: accept:accept, drop:drop, log:log.
	RuleAction pulumi.StringOutput `pulumi:"ruleAction"`
	// Access source examplnet:IP/CIDR(192.168.0.2).
	SourceContent pulumi.StringOutput `pulumi:"sourceContent"`
	// Access source type, the type can be: net, template.
	SourceType pulumi.StringOutput `pulumi:"sourceType"`
	// The unique id corresponding to the rule.
	Uuid pulumi.IntOutput `pulumi:"uuid"`
}

Provides a resource to create a cfw vpcPolicy

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/tencentcloudstack/pulumi-tencentcloud/sdk/go/tencentcloud/Cfw"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Cfw.NewVpcPolicy(ctx, "example", &Cfw.VpcPolicyArgs{
			Description:   pulumi.String("description."),
			DestContent:   pulumi.String("192.168.0.2"),
			DestType:      pulumi.String("net"),
			Enable:        pulumi.String("true"),
			FwGroupId:     pulumi.String("ALL"),
			Port:          pulumi.String("-1/-1"),
			Protocol:      pulumi.String("ANY"),
			RuleAction:    pulumi.String("log"),
			SourceContent: pulumi.String("0.0.0.0/0"),
			SourceType:    pulumi.String("net"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

cfw vpc_policy can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Cfw/vpcPolicy:VpcPolicy vpc_policy vpc_policy_id

```

func GetVpcPolicy

func GetVpcPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcPolicyState, opts ...pulumi.ResourceOption) (*VpcPolicy, error)

GetVpcPolicy gets an existing VpcPolicy 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 NewVpcPolicy

func NewVpcPolicy(ctx *pulumi.Context,
	name string, args *VpcPolicyArgs, opts ...pulumi.ResourceOption) (*VpcPolicy, error)

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

func (*VpcPolicy) ElementType

func (*VpcPolicy) ElementType() reflect.Type

func (*VpcPolicy) ToVpcPolicyOutput

func (i *VpcPolicy) ToVpcPolicyOutput() VpcPolicyOutput

func (*VpcPolicy) ToVpcPolicyOutputWithContext

func (i *VpcPolicy) ToVpcPolicyOutputWithContext(ctx context.Context) VpcPolicyOutput

type VpcPolicyArgs

type VpcPolicyArgs struct {
	// Describe.
	Description pulumi.StringInput
	// Access purpose example: net:IP/CIDR(192.168.0.2) domain:domain rule, for example*.qq.com.
	DestContent pulumi.StringInput
	// Access purpose type, the type can be: net, template.
	DestType pulumi.StringInput
	// Rule status, true means enabled, false means disabled. Default is true.
	Enable pulumi.StringPtrInput
	// Firewall instance ID where the rule takes effect. Default is ALL.
	FwGroupId pulumi.StringPtrInput
	// The port for the access control policy. Value: -1/-1: All ports; 80: port 80.
	Port pulumi.StringInput
	// Protocol, optional value:TCP, UDP, ICMP, ANY, HTTP, HTTPS, HTTP/HTTPS, SMTP, SMTPS, SMTP/SMTPS, FTP, DNS, TLS/SSL.
	Protocol pulumi.StringInput
	// How traffic set in the access control policy passes through the cloud firewall. Value: accept:accept, drop:drop, log:log.
	RuleAction pulumi.StringInput
	// Access source examplnet:IP/CIDR(192.168.0.2).
	SourceContent pulumi.StringInput
	// Access source type, the type can be: net, template.
	SourceType pulumi.StringInput
}

The set of arguments for constructing a VpcPolicy resource.

func (VpcPolicyArgs) ElementType

func (VpcPolicyArgs) ElementType() reflect.Type

type VpcPolicyArray

type VpcPolicyArray []VpcPolicyInput

func (VpcPolicyArray) ElementType

func (VpcPolicyArray) ElementType() reflect.Type

func (VpcPolicyArray) ToVpcPolicyArrayOutput

func (i VpcPolicyArray) ToVpcPolicyArrayOutput() VpcPolicyArrayOutput

func (VpcPolicyArray) ToVpcPolicyArrayOutputWithContext

func (i VpcPolicyArray) ToVpcPolicyArrayOutputWithContext(ctx context.Context) VpcPolicyArrayOutput

type VpcPolicyArrayInput

type VpcPolicyArrayInput interface {
	pulumi.Input

	ToVpcPolicyArrayOutput() VpcPolicyArrayOutput
	ToVpcPolicyArrayOutputWithContext(context.Context) VpcPolicyArrayOutput
}

VpcPolicyArrayInput is an input type that accepts VpcPolicyArray and VpcPolicyArrayOutput values. You can construct a concrete instance of `VpcPolicyArrayInput` via:

VpcPolicyArray{ VpcPolicyArgs{...} }

type VpcPolicyArrayOutput

type VpcPolicyArrayOutput struct{ *pulumi.OutputState }

func (VpcPolicyArrayOutput) ElementType

func (VpcPolicyArrayOutput) ElementType() reflect.Type

func (VpcPolicyArrayOutput) Index

func (VpcPolicyArrayOutput) ToVpcPolicyArrayOutput

func (o VpcPolicyArrayOutput) ToVpcPolicyArrayOutput() VpcPolicyArrayOutput

func (VpcPolicyArrayOutput) ToVpcPolicyArrayOutputWithContext

func (o VpcPolicyArrayOutput) ToVpcPolicyArrayOutputWithContext(ctx context.Context) VpcPolicyArrayOutput

type VpcPolicyBetaList

type VpcPolicyBetaList struct {
	LastTime *string `pulumi:"lastTime"`
	TaskId   *int    `pulumi:"taskId"`
	TaskName *string `pulumi:"taskName"`
}

type VpcPolicyBetaListArgs

type VpcPolicyBetaListArgs struct {
	LastTime pulumi.StringPtrInput `pulumi:"lastTime"`
	TaskId   pulumi.IntPtrInput    `pulumi:"taskId"`
	TaskName pulumi.StringPtrInput `pulumi:"taskName"`
}

func (VpcPolicyBetaListArgs) ElementType

func (VpcPolicyBetaListArgs) ElementType() reflect.Type

func (VpcPolicyBetaListArgs) ToVpcPolicyBetaListOutput

func (i VpcPolicyBetaListArgs) ToVpcPolicyBetaListOutput() VpcPolicyBetaListOutput

func (VpcPolicyBetaListArgs) ToVpcPolicyBetaListOutputWithContext

func (i VpcPolicyBetaListArgs) ToVpcPolicyBetaListOutputWithContext(ctx context.Context) VpcPolicyBetaListOutput

type VpcPolicyBetaListArray

type VpcPolicyBetaListArray []VpcPolicyBetaListInput

func (VpcPolicyBetaListArray) ElementType

func (VpcPolicyBetaListArray) ElementType() reflect.Type

func (VpcPolicyBetaListArray) ToVpcPolicyBetaListArrayOutput

func (i VpcPolicyBetaListArray) ToVpcPolicyBetaListArrayOutput() VpcPolicyBetaListArrayOutput

func (VpcPolicyBetaListArray) ToVpcPolicyBetaListArrayOutputWithContext

func (i VpcPolicyBetaListArray) ToVpcPolicyBetaListArrayOutputWithContext(ctx context.Context) VpcPolicyBetaListArrayOutput

type VpcPolicyBetaListArrayInput

type VpcPolicyBetaListArrayInput interface {
	pulumi.Input

	ToVpcPolicyBetaListArrayOutput() VpcPolicyBetaListArrayOutput
	ToVpcPolicyBetaListArrayOutputWithContext(context.Context) VpcPolicyBetaListArrayOutput
}

VpcPolicyBetaListArrayInput is an input type that accepts VpcPolicyBetaListArray and VpcPolicyBetaListArrayOutput values. You can construct a concrete instance of `VpcPolicyBetaListArrayInput` via:

VpcPolicyBetaListArray{ VpcPolicyBetaListArgs{...} }

type VpcPolicyBetaListArrayOutput

type VpcPolicyBetaListArrayOutput struct{ *pulumi.OutputState }

func (VpcPolicyBetaListArrayOutput) ElementType

func (VpcPolicyBetaListArrayOutput) Index

func (VpcPolicyBetaListArrayOutput) ToVpcPolicyBetaListArrayOutput

func (o VpcPolicyBetaListArrayOutput) ToVpcPolicyBetaListArrayOutput() VpcPolicyBetaListArrayOutput

func (VpcPolicyBetaListArrayOutput) ToVpcPolicyBetaListArrayOutputWithContext

func (o VpcPolicyBetaListArrayOutput) ToVpcPolicyBetaListArrayOutputWithContext(ctx context.Context) VpcPolicyBetaListArrayOutput

type VpcPolicyBetaListInput

type VpcPolicyBetaListInput interface {
	pulumi.Input

	ToVpcPolicyBetaListOutput() VpcPolicyBetaListOutput
	ToVpcPolicyBetaListOutputWithContext(context.Context) VpcPolicyBetaListOutput
}

VpcPolicyBetaListInput is an input type that accepts VpcPolicyBetaListArgs and VpcPolicyBetaListOutput values. You can construct a concrete instance of `VpcPolicyBetaListInput` via:

VpcPolicyBetaListArgs{...}

type VpcPolicyBetaListOutput

type VpcPolicyBetaListOutput struct{ *pulumi.OutputState }

func (VpcPolicyBetaListOutput) ElementType

func (VpcPolicyBetaListOutput) ElementType() reflect.Type

func (VpcPolicyBetaListOutput) LastTime

func (VpcPolicyBetaListOutput) TaskId

func (VpcPolicyBetaListOutput) TaskName

func (VpcPolicyBetaListOutput) ToVpcPolicyBetaListOutput

func (o VpcPolicyBetaListOutput) ToVpcPolicyBetaListOutput() VpcPolicyBetaListOutput

func (VpcPolicyBetaListOutput) ToVpcPolicyBetaListOutputWithContext

func (o VpcPolicyBetaListOutput) ToVpcPolicyBetaListOutputWithContext(ctx context.Context) VpcPolicyBetaListOutput

type VpcPolicyInput

type VpcPolicyInput interface {
	pulumi.Input

	ToVpcPolicyOutput() VpcPolicyOutput
	ToVpcPolicyOutputWithContext(ctx context.Context) VpcPolicyOutput
}

type VpcPolicyMap

type VpcPolicyMap map[string]VpcPolicyInput

func (VpcPolicyMap) ElementType

func (VpcPolicyMap) ElementType() reflect.Type

func (VpcPolicyMap) ToVpcPolicyMapOutput

func (i VpcPolicyMap) ToVpcPolicyMapOutput() VpcPolicyMapOutput

func (VpcPolicyMap) ToVpcPolicyMapOutputWithContext

func (i VpcPolicyMap) ToVpcPolicyMapOutputWithContext(ctx context.Context) VpcPolicyMapOutput

type VpcPolicyMapInput

type VpcPolicyMapInput interface {
	pulumi.Input

	ToVpcPolicyMapOutput() VpcPolicyMapOutput
	ToVpcPolicyMapOutputWithContext(context.Context) VpcPolicyMapOutput
}

VpcPolicyMapInput is an input type that accepts VpcPolicyMap and VpcPolicyMapOutput values. You can construct a concrete instance of `VpcPolicyMapInput` via:

VpcPolicyMap{ "key": VpcPolicyArgs{...} }

type VpcPolicyMapOutput

type VpcPolicyMapOutput struct{ *pulumi.OutputState }

func (VpcPolicyMapOutput) ElementType

func (VpcPolicyMapOutput) ElementType() reflect.Type

func (VpcPolicyMapOutput) MapIndex

func (VpcPolicyMapOutput) ToVpcPolicyMapOutput

func (o VpcPolicyMapOutput) ToVpcPolicyMapOutput() VpcPolicyMapOutput

func (VpcPolicyMapOutput) ToVpcPolicyMapOutputWithContext

func (o VpcPolicyMapOutput) ToVpcPolicyMapOutputWithContext(ctx context.Context) VpcPolicyMapOutput

type VpcPolicyOutput

type VpcPolicyOutput struct{ *pulumi.OutputState }

func (VpcPolicyOutput) BetaLists

Beta mission details. Note: This field may return null, indicating that no valid value can be obtained.

func (VpcPolicyOutput) Description

func (o VpcPolicyOutput) Description() pulumi.StringOutput

Describe.

func (VpcPolicyOutput) DestContent

func (o VpcPolicyOutput) DestContent() pulumi.StringOutput

Access purpose example: net:IP/CIDR(192.168.0.2) domain:domain rule, for example*.qq.com.

func (VpcPolicyOutput) DestType

func (o VpcPolicyOutput) DestType() pulumi.StringOutput

Access purpose type, the type can be: net, template.

func (VpcPolicyOutput) ElementType

func (VpcPolicyOutput) ElementType() reflect.Type

func (VpcPolicyOutput) Enable

Rule status, true means enabled, false means disabled. Default is true.

func (VpcPolicyOutput) FwGroupId

func (o VpcPolicyOutput) FwGroupId() pulumi.StringPtrOutput

Firewall instance ID where the rule takes effect. Default is ALL.

func (VpcPolicyOutput) FwGroupName

func (o VpcPolicyOutput) FwGroupName() pulumi.StringOutput

Firewall name.

func (VpcPolicyOutput) InternalUuid

func (o VpcPolicyOutput) InternalUuid() pulumi.IntOutput

Uuid used internally, this field is generally not used.

func (VpcPolicyOutput) ParamTemplateId

func (o VpcPolicyOutput) ParamTemplateId() pulumi.StringOutput

Parameter template id. Note: This field may return null, indicating that no valid value can be obtained.

func (VpcPolicyOutput) ParamTemplateName

func (o VpcPolicyOutput) ParamTemplateName() pulumi.StringOutput

Parameter template Name. Note: This field may return null, indicating that no valid value can be obtained.

func (VpcPolicyOutput) Port

The port for the access control policy. Value: -1/-1: All ports; 80: port 80.

func (VpcPolicyOutput) Protocol

func (o VpcPolicyOutput) Protocol() pulumi.StringOutput

Protocol, optional value:TCP, UDP, ICMP, ANY, HTTP, HTTPS, HTTP/HTTPS, SMTP, SMTPS, SMTP/SMTPS, FTP, DNS, TLS/SSL.

func (VpcPolicyOutput) RuleAction

func (o VpcPolicyOutput) RuleAction() pulumi.StringOutput

How traffic set in the access control policy passes through the cloud firewall. Value: accept:accept, drop:drop, log:log.

func (VpcPolicyOutput) SourceContent

func (o VpcPolicyOutput) SourceContent() pulumi.StringOutput

Access source examplnet:IP/CIDR(192.168.0.2).

func (VpcPolicyOutput) SourceType

func (o VpcPolicyOutput) SourceType() pulumi.StringOutput

Access source type, the type can be: net, template.

func (VpcPolicyOutput) ToVpcPolicyOutput

func (o VpcPolicyOutput) ToVpcPolicyOutput() VpcPolicyOutput

func (VpcPolicyOutput) ToVpcPolicyOutputWithContext

func (o VpcPolicyOutput) ToVpcPolicyOutputWithContext(ctx context.Context) VpcPolicyOutput

func (VpcPolicyOutput) Uuid

func (o VpcPolicyOutput) Uuid() pulumi.IntOutput

The unique id corresponding to the rule.

type VpcPolicyState

type VpcPolicyState struct {
	// Beta mission details. Note: This field may return null, indicating that no valid value can be obtained.
	BetaLists VpcPolicyBetaListArrayInput
	// Describe.
	Description pulumi.StringPtrInput
	// Access purpose example: net:IP/CIDR(192.168.0.2) domain:domain rule, for example*.qq.com.
	DestContent pulumi.StringPtrInput
	// Access purpose type, the type can be: net, template.
	DestType pulumi.StringPtrInput
	// Rule status, true means enabled, false means disabled. Default is true.
	Enable pulumi.StringPtrInput
	// Firewall instance ID where the rule takes effect. Default is ALL.
	FwGroupId pulumi.StringPtrInput
	// Firewall name.
	FwGroupName pulumi.StringPtrInput
	// Uuid used internally, this field is generally not used.
	InternalUuid pulumi.IntPtrInput
	// Parameter template id. Note: This field may return null, indicating that no valid value can be obtained.
	ParamTemplateId pulumi.StringPtrInput
	// Parameter template Name. Note: This field may return null, indicating that no valid value can be obtained.
	ParamTemplateName pulumi.StringPtrInput
	// The port for the access control policy. Value: -1/-1: All ports; 80: port 80.
	Port pulumi.StringPtrInput
	// Protocol, optional value:TCP, UDP, ICMP, ANY, HTTP, HTTPS, HTTP/HTTPS, SMTP, SMTPS, SMTP/SMTPS, FTP, DNS, TLS/SSL.
	Protocol pulumi.StringPtrInput
	// How traffic set in the access control policy passes through the cloud firewall. Value: accept:accept, drop:drop, log:log.
	RuleAction pulumi.StringPtrInput
	// Access source examplnet:IP/CIDR(192.168.0.2).
	SourceContent pulumi.StringPtrInput
	// Access source type, the type can be: net, template.
	SourceType pulumi.StringPtrInput
	// The unique id corresponding to the rule.
	Uuid pulumi.IntPtrInput
}

func (VpcPolicyState) ElementType

func (VpcPolicyState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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