vpn

package
v0.1.1 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PkgVersion added in v0.0.5

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 Connection

type Connection struct {
	pulumi.CustomResourceState

	// Create time of the VPN connection.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// ID of the customer gateway.
	CustomerGatewayId pulumi.StringOutput `pulumi:"customerGatewayId"`
	// Whether intra-tunnel health checks are supported.
	EnableHealthCheck pulumi.BoolOutput `pulumi:"enableHealthCheck"`
	// Encrypt proto of the VPN connection.
	EncryptProto pulumi.StringOutput `pulumi:"encryptProto"`
	// Health check the address of this terminal.
	HealthCheckLocalIp pulumi.StringOutput `pulumi:"healthCheckLocalIp"`
	// Health check peer address.
	HealthCheckRemoteIp pulumi.StringOutput `pulumi:"healthCheckRemoteIp"`
	// DH group name of the IKE operation specification. Valid values: `GROUP1`, `GROUP2`, `GROUP5`, `GROUP14`, `GROUP24`. Default value is `GROUP1`.
	IkeDhGroupName pulumi.StringPtrOutput `pulumi:"ikeDhGroupName"`
	// Exchange mode of the IKE operation specification. Valid values: `AGGRESSIVE`, `MAIN`. Default value is `MAIN`.
	IkeExchangeMode pulumi.StringPtrOutput `pulumi:"ikeExchangeMode"`
	// Local address of IKE operation specification, valid when ikeLocalIdentity is `ADDRESS`, generally the value is `publicIpAddress` of the related VPN gateway.
	IkeLocalAddress pulumi.StringPtrOutput `pulumi:"ikeLocalAddress"`
	// Local FQDN name of the IKE operation specification.
	IkeLocalFqdnName pulumi.StringPtrOutput `pulumi:"ikeLocalFqdnName"`
	// Local identity way of IKE operation specification. Valid values: `ADDRESS`, `FQDN`. Default value is `ADDRESS`.
	IkeLocalIdentity pulumi.StringPtrOutput `pulumi:"ikeLocalIdentity"`
	// Proto authenticate algorithm of the IKE operation specification. Valid values: `MD5`, `SHA`, `SHA-256`. Default Value is `MD5`.
	IkeProtoAuthenAlgorithm pulumi.StringPtrOutput `pulumi:"ikeProtoAuthenAlgorithm"`
	// Proto encrypt algorithm of the IKE operation specification. Valid values: `3DES-CBC`, `AES-CBC-128`, `AES-CBC-128`, `AES-CBC-256`, `DES-CBC`. Default value is `3DES-CBC`.
	IkeProtoEncryAlgorithm pulumi.StringPtrOutput `pulumi:"ikeProtoEncryAlgorithm"`
	// Remote address of IKE operation specification, valid when ikeRemoteIdentity is `ADDRESS`, generally the value is `publicIpAddress` of the related customer gateway.
	IkeRemoteAddress pulumi.StringPtrOutput `pulumi:"ikeRemoteAddress"`
	// Remote FQDN name of the IKE operation specification.
	IkeRemoteFqdnName pulumi.StringPtrOutput `pulumi:"ikeRemoteFqdnName"`
	// Remote identity way of IKE operation specification. Valid values: `ADDRESS`, `FQDN`. Default value is `ADDRESS`.
	IkeRemoteIdentity pulumi.StringPtrOutput `pulumi:"ikeRemoteIdentity"`
	// SA lifetime of the IKE operation specification, unit is `second`. The value ranges from 60 to 604800. Default value is 86400 seconds.
	IkeSaLifetimeSeconds pulumi.IntPtrOutput `pulumi:"ikeSaLifetimeSeconds"`
	// Version of the IKE operation specification. Default value is `IKEV1`.
	IkeVersion pulumi.StringPtrOutput `pulumi:"ikeVersion"`
	// Encrypt algorithm of the IPSEC operation specification. Valid values: `3DES-CBC`, `AES-CBC-128`, `AES-CBC-128`, `AES-CBC-256`, `DES-CBC`. Default value is `3DES-CBC`.
	IpsecEncryptAlgorithm pulumi.StringPtrOutput `pulumi:"ipsecEncryptAlgorithm"`
	// Integrity algorithm of the IPSEC operation specification. Valid values: `SHA1`, `MD5`, `SHA-256`. Default value is `MD5`.
	IpsecIntegrityAlgorithm pulumi.StringPtrOutput `pulumi:"ipsecIntegrityAlgorithm"`
	// PFS DH group. Valid value: `GROUP1`, `GROUP2`, `GROUP5`, `GROUP14`, `GROUP24`, `NULL`. Default value is `NULL`.
	IpsecPfsDhGroup pulumi.StringPtrOutput `pulumi:"ipsecPfsDhGroup"`
	// SA lifetime of the IPSEC operation specification, unit is second. Valid value ranges: [180~604800]. Default value is 3600 seconds.
	IpsecSaLifetimeSeconds pulumi.IntPtrOutput `pulumi:"ipsecSaLifetimeSeconds"`
	// SA lifetime of the IPSEC operation specification, unit is KB. The value should not be less then 2560. Default value is 1843200.
	IpsecSaLifetimeTraffic pulumi.IntPtrOutput `pulumi:"ipsecSaLifetimeTraffic"`
	// Indicate whether is ccn type. Modification of this field only impacts force new logic of `vpcId`. If `isCcnType` is true, modification of `vpcId` will be ignored.
	IsCcnType pulumi.BoolOutput `pulumi:"isCcnType"`
	// Name of the VPN connection. The length of character is limited to 1-60.
	Name pulumi.StringOutput `pulumi:"name"`
	// Net status of the VPN connection. Valid value: `AVAILABLE`.
	NetStatus pulumi.StringOutput `pulumi:"netStatus"`
	// Pre-shared key of the VPN connection.
	PreShareKey pulumi.StringOutput `pulumi:"preShareKey"`
	// Route type of the VPN connection.
	RouteType pulumi.StringOutput `pulumi:"routeType"`
	// Security group policy of the VPN connection.
	SecurityGroupPolicies ConnectionSecurityGroupPolicyArrayOutput `pulumi:"securityGroupPolicies"`
	// State of the connection. Valid value: `PENDING`, `AVAILABLE`, `DELETING`.
	State pulumi.StringOutput `pulumi:"state"`
	// A list of tags used to associate different resources.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// ID of the VPC. Required if vpn gateway is not in `CCN` type, and doesn't make sense for `CCN` vpn gateway.
	VpcId pulumi.StringPtrOutput `pulumi:"vpcId"`
	// ID of the VPN gateway.
	VpnGatewayId pulumi.StringOutput `pulumi:"vpnGatewayId"`
	// Vpn proto of the VPN connection.
	VpnProto pulumi.StringOutput `pulumi:"vpnProto"`
}

Provides a resource to create a VPN connection.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Vpn.NewConnection(ctx, "foo", &Vpn.ConnectionArgs{
			CustomerGatewayId:       pulumi.String("cgw-xfqag"),
			IkeDhGroupName:          pulumi.String("GROUP2"),
			IkeExchangeMode:         pulumi.String("AGGRESSIVE"),
			IkeLocalAddress:         pulumi.String("1.1.1.1"),
			IkeLocalIdentity:        pulumi.String("ADDRESS"),
			IkeProtoAuthenAlgorithm: pulumi.String("SHA"),
			IkeProtoEncryAlgorithm:  pulumi.String("3DES-CBC"),
			IkeRemoteAddress:        pulumi.String("2.2.2.2"),
			IkeRemoteIdentity:       pulumi.String("ADDRESS"),
			IkeSaLifetimeSeconds:    pulumi.Int(86401),
			IpsecEncryptAlgorithm:   pulumi.String("3DES-CBC"),
			IpsecIntegrityAlgorithm: pulumi.String("SHA1"),
			IpsecPfsDhGroup:         pulumi.String("NULL"),
			IpsecSaLifetimeSeconds:  pulumi.Int(7200),
			IpsecSaLifetimeTraffic:  pulumi.Int(2570),
			PreShareKey:             pulumi.String("testt"),
			SecurityGroupPolicies: vpn.ConnectionSecurityGroupPolicyArray{
				&vpn.ConnectionSecurityGroupPolicyArgs{
					LocalCidrBlock: pulumi.String("172.16.0.0/16"),
					RemoteCidrBlocks: pulumi.StringArray{
						pulumi.String("2.2.2.0/26"),
					},
				},
			},
			Tags: pulumi.AnyMap{
				"test": pulumi.Any("testt"),
			},
			VpcId:        pulumi.String("vpc-dk8zmwuf"),
			VpnGatewayId: pulumi.String("vpngw-8ccsnclt"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPN connection can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Vpn/connection:Connection foo vpnx-nadifg3s

```

func GetConnection

func GetConnection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConnectionState, opts ...pulumi.ResourceOption) (*Connection, error)

GetConnection gets an existing Connection 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 NewConnection

func NewConnection(ctx *pulumi.Context,
	name string, args *ConnectionArgs, opts ...pulumi.ResourceOption) (*Connection, error)

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

func (*Connection) ElementType

func (*Connection) ElementType() reflect.Type

func (*Connection) ToConnectionOutput

func (i *Connection) ToConnectionOutput() ConnectionOutput

func (*Connection) ToConnectionOutputWithContext

func (i *Connection) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput

type ConnectionArgs

type ConnectionArgs struct {
	// ID of the customer gateway.
	CustomerGatewayId pulumi.StringInput
	// Whether intra-tunnel health checks are supported.
	EnableHealthCheck pulumi.BoolPtrInput
	// Health check the address of this terminal.
	HealthCheckLocalIp pulumi.StringPtrInput
	// Health check peer address.
	HealthCheckRemoteIp pulumi.StringPtrInput
	// DH group name of the IKE operation specification. Valid values: `GROUP1`, `GROUP2`, `GROUP5`, `GROUP14`, `GROUP24`. Default value is `GROUP1`.
	IkeDhGroupName pulumi.StringPtrInput
	// Exchange mode of the IKE operation specification. Valid values: `AGGRESSIVE`, `MAIN`. Default value is `MAIN`.
	IkeExchangeMode pulumi.StringPtrInput
	// Local address of IKE operation specification, valid when ikeLocalIdentity is `ADDRESS`, generally the value is `publicIpAddress` of the related VPN gateway.
	IkeLocalAddress pulumi.StringPtrInput
	// Local FQDN name of the IKE operation specification.
	IkeLocalFqdnName pulumi.StringPtrInput
	// Local identity way of IKE operation specification. Valid values: `ADDRESS`, `FQDN`. Default value is `ADDRESS`.
	IkeLocalIdentity pulumi.StringPtrInput
	// Proto authenticate algorithm of the IKE operation specification. Valid values: `MD5`, `SHA`, `SHA-256`. Default Value is `MD5`.
	IkeProtoAuthenAlgorithm pulumi.StringPtrInput
	// Proto encrypt algorithm of the IKE operation specification. Valid values: `3DES-CBC`, `AES-CBC-128`, `AES-CBC-128`, `AES-CBC-256`, `DES-CBC`. Default value is `3DES-CBC`.
	IkeProtoEncryAlgorithm pulumi.StringPtrInput
	// Remote address of IKE operation specification, valid when ikeRemoteIdentity is `ADDRESS`, generally the value is `publicIpAddress` of the related customer gateway.
	IkeRemoteAddress pulumi.StringPtrInput
	// Remote FQDN name of the IKE operation specification.
	IkeRemoteFqdnName pulumi.StringPtrInput
	// Remote identity way of IKE operation specification. Valid values: `ADDRESS`, `FQDN`. Default value is `ADDRESS`.
	IkeRemoteIdentity pulumi.StringPtrInput
	// SA lifetime of the IKE operation specification, unit is `second`. The value ranges from 60 to 604800. Default value is 86400 seconds.
	IkeSaLifetimeSeconds pulumi.IntPtrInput
	// Version of the IKE operation specification. Default value is `IKEV1`.
	IkeVersion pulumi.StringPtrInput
	// Encrypt algorithm of the IPSEC operation specification. Valid values: `3DES-CBC`, `AES-CBC-128`, `AES-CBC-128`, `AES-CBC-256`, `DES-CBC`. Default value is `3DES-CBC`.
	IpsecEncryptAlgorithm pulumi.StringPtrInput
	// Integrity algorithm of the IPSEC operation specification. Valid values: `SHA1`, `MD5`, `SHA-256`. Default value is `MD5`.
	IpsecIntegrityAlgorithm pulumi.StringPtrInput
	// PFS DH group. Valid value: `GROUP1`, `GROUP2`, `GROUP5`, `GROUP14`, `GROUP24`, `NULL`. Default value is `NULL`.
	IpsecPfsDhGroup pulumi.StringPtrInput
	// SA lifetime of the IPSEC operation specification, unit is second. Valid value ranges: [180~604800]. Default value is 3600 seconds.
	IpsecSaLifetimeSeconds pulumi.IntPtrInput
	// SA lifetime of the IPSEC operation specification, unit is KB. The value should not be less then 2560. Default value is 1843200.
	IpsecSaLifetimeTraffic pulumi.IntPtrInput
	// Name of the VPN connection. The length of character is limited to 1-60.
	Name pulumi.StringPtrInput
	// Pre-shared key of the VPN connection.
	PreShareKey pulumi.StringInput
	// Security group policy of the VPN connection.
	SecurityGroupPolicies ConnectionSecurityGroupPolicyArrayInput
	// A list of tags used to associate different resources.
	Tags pulumi.MapInput
	// ID of the VPC. Required if vpn gateway is not in `CCN` type, and doesn't make sense for `CCN` vpn gateway.
	VpcId pulumi.StringPtrInput
	// ID of the VPN gateway.
	VpnGatewayId pulumi.StringInput
}

The set of arguments for constructing a Connection resource.

func (ConnectionArgs) ElementType

func (ConnectionArgs) ElementType() reflect.Type

type ConnectionArray

type ConnectionArray []ConnectionInput

func (ConnectionArray) ElementType

func (ConnectionArray) ElementType() reflect.Type

func (ConnectionArray) ToConnectionArrayOutput

func (i ConnectionArray) ToConnectionArrayOutput() ConnectionArrayOutput

func (ConnectionArray) ToConnectionArrayOutputWithContext

func (i ConnectionArray) ToConnectionArrayOutputWithContext(ctx context.Context) ConnectionArrayOutput

type ConnectionArrayInput

type ConnectionArrayInput interface {
	pulumi.Input

	ToConnectionArrayOutput() ConnectionArrayOutput
	ToConnectionArrayOutputWithContext(context.Context) ConnectionArrayOutput
}

ConnectionArrayInput is an input type that accepts ConnectionArray and ConnectionArrayOutput values. You can construct a concrete instance of `ConnectionArrayInput` via:

ConnectionArray{ ConnectionArgs{...} }

type ConnectionArrayOutput

type ConnectionArrayOutput struct{ *pulumi.OutputState }

func (ConnectionArrayOutput) ElementType

func (ConnectionArrayOutput) ElementType() reflect.Type

func (ConnectionArrayOutput) Index

func (ConnectionArrayOutput) ToConnectionArrayOutput

func (o ConnectionArrayOutput) ToConnectionArrayOutput() ConnectionArrayOutput

func (ConnectionArrayOutput) ToConnectionArrayOutputWithContext

func (o ConnectionArrayOutput) ToConnectionArrayOutputWithContext(ctx context.Context) ConnectionArrayOutput

type ConnectionInput

type ConnectionInput interface {
	pulumi.Input

	ToConnectionOutput() ConnectionOutput
	ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput
}

type ConnectionMap

type ConnectionMap map[string]ConnectionInput

func (ConnectionMap) ElementType

func (ConnectionMap) ElementType() reflect.Type

func (ConnectionMap) ToConnectionMapOutput

func (i ConnectionMap) ToConnectionMapOutput() ConnectionMapOutput

func (ConnectionMap) ToConnectionMapOutputWithContext

func (i ConnectionMap) ToConnectionMapOutputWithContext(ctx context.Context) ConnectionMapOutput

type ConnectionMapInput

type ConnectionMapInput interface {
	pulumi.Input

	ToConnectionMapOutput() ConnectionMapOutput
	ToConnectionMapOutputWithContext(context.Context) ConnectionMapOutput
}

ConnectionMapInput is an input type that accepts ConnectionMap and ConnectionMapOutput values. You can construct a concrete instance of `ConnectionMapInput` via:

ConnectionMap{ "key": ConnectionArgs{...} }

type ConnectionMapOutput

type ConnectionMapOutput struct{ *pulumi.OutputState }

func (ConnectionMapOutput) ElementType

func (ConnectionMapOutput) ElementType() reflect.Type

func (ConnectionMapOutput) MapIndex

func (ConnectionMapOutput) ToConnectionMapOutput

func (o ConnectionMapOutput) ToConnectionMapOutput() ConnectionMapOutput

func (ConnectionMapOutput) ToConnectionMapOutputWithContext

func (o ConnectionMapOutput) ToConnectionMapOutputWithContext(ctx context.Context) ConnectionMapOutput

type ConnectionOutput

type ConnectionOutput struct{ *pulumi.OutputState }

func (ConnectionOutput) CreateTime

func (o ConnectionOutput) CreateTime() pulumi.StringOutput

Create time of the VPN connection.

func (ConnectionOutput) CustomerGatewayId

func (o ConnectionOutput) CustomerGatewayId() pulumi.StringOutput

ID of the customer gateway.

func (ConnectionOutput) ElementType

func (ConnectionOutput) ElementType() reflect.Type

func (ConnectionOutput) EnableHealthCheck

func (o ConnectionOutput) EnableHealthCheck() pulumi.BoolOutput

Whether intra-tunnel health checks are supported.

func (ConnectionOutput) EncryptProto

func (o ConnectionOutput) EncryptProto() pulumi.StringOutput

Encrypt proto of the VPN connection.

func (ConnectionOutput) HealthCheckLocalIp

func (o ConnectionOutput) HealthCheckLocalIp() pulumi.StringOutput

Health check the address of this terminal.

func (ConnectionOutput) HealthCheckRemoteIp

func (o ConnectionOutput) HealthCheckRemoteIp() pulumi.StringOutput

Health check peer address.

func (ConnectionOutput) IkeDhGroupName

func (o ConnectionOutput) IkeDhGroupName() pulumi.StringPtrOutput

DH group name of the IKE operation specification. Valid values: `GROUP1`, `GROUP2`, `GROUP5`, `GROUP14`, `GROUP24`. Default value is `GROUP1`.

func (ConnectionOutput) IkeExchangeMode

func (o ConnectionOutput) IkeExchangeMode() pulumi.StringPtrOutput

Exchange mode of the IKE operation specification. Valid values: `AGGRESSIVE`, `MAIN`. Default value is `MAIN`.

func (ConnectionOutput) IkeLocalAddress

func (o ConnectionOutput) IkeLocalAddress() pulumi.StringPtrOutput

Local address of IKE operation specification, valid when ikeLocalIdentity is `ADDRESS`, generally the value is `publicIpAddress` of the related VPN gateway.

func (ConnectionOutput) IkeLocalFqdnName

func (o ConnectionOutput) IkeLocalFqdnName() pulumi.StringPtrOutput

Local FQDN name of the IKE operation specification.

func (ConnectionOutput) IkeLocalIdentity

func (o ConnectionOutput) IkeLocalIdentity() pulumi.StringPtrOutput

Local identity way of IKE operation specification. Valid values: `ADDRESS`, `FQDN`. Default value is `ADDRESS`.

func (ConnectionOutput) IkeProtoAuthenAlgorithm

func (o ConnectionOutput) IkeProtoAuthenAlgorithm() pulumi.StringPtrOutput

Proto authenticate algorithm of the IKE operation specification. Valid values: `MD5`, `SHA`, `SHA-256`. Default Value is `MD5`.

func (ConnectionOutput) IkeProtoEncryAlgorithm

func (o ConnectionOutput) IkeProtoEncryAlgorithm() pulumi.StringPtrOutput

Proto encrypt algorithm of the IKE operation specification. Valid values: `3DES-CBC`, `AES-CBC-128`, `AES-CBC-128`, `AES-CBC-256`, `DES-CBC`. Default value is `3DES-CBC`.

func (ConnectionOutput) IkeRemoteAddress

func (o ConnectionOutput) IkeRemoteAddress() pulumi.StringPtrOutput

Remote address of IKE operation specification, valid when ikeRemoteIdentity is `ADDRESS`, generally the value is `publicIpAddress` of the related customer gateway.

func (ConnectionOutput) IkeRemoteFqdnName

func (o ConnectionOutput) IkeRemoteFqdnName() pulumi.StringPtrOutput

Remote FQDN name of the IKE operation specification.

func (ConnectionOutput) IkeRemoteIdentity

func (o ConnectionOutput) IkeRemoteIdentity() pulumi.StringPtrOutput

Remote identity way of IKE operation specification. Valid values: `ADDRESS`, `FQDN`. Default value is `ADDRESS`.

func (ConnectionOutput) IkeSaLifetimeSeconds

func (o ConnectionOutput) IkeSaLifetimeSeconds() pulumi.IntPtrOutput

SA lifetime of the IKE operation specification, unit is `second`. The value ranges from 60 to 604800. Default value is 86400 seconds.

func (ConnectionOutput) IkeVersion

func (o ConnectionOutput) IkeVersion() pulumi.StringPtrOutput

Version of the IKE operation specification. Default value is `IKEV1`.

func (ConnectionOutput) IpsecEncryptAlgorithm

func (o ConnectionOutput) IpsecEncryptAlgorithm() pulumi.StringPtrOutput

Encrypt algorithm of the IPSEC operation specification. Valid values: `3DES-CBC`, `AES-CBC-128`, `AES-CBC-128`, `AES-CBC-256`, `DES-CBC`. Default value is `3DES-CBC`.

func (ConnectionOutput) IpsecIntegrityAlgorithm

func (o ConnectionOutput) IpsecIntegrityAlgorithm() pulumi.StringPtrOutput

Integrity algorithm of the IPSEC operation specification. Valid values: `SHA1`, `MD5`, `SHA-256`. Default value is `MD5`.

func (ConnectionOutput) IpsecPfsDhGroup

func (o ConnectionOutput) IpsecPfsDhGroup() pulumi.StringPtrOutput

PFS DH group. Valid value: `GROUP1`, `GROUP2`, `GROUP5`, `GROUP14`, `GROUP24`, `NULL`. Default value is `NULL`.

func (ConnectionOutput) IpsecSaLifetimeSeconds

func (o ConnectionOutput) IpsecSaLifetimeSeconds() pulumi.IntPtrOutput

SA lifetime of the IPSEC operation specification, unit is second. Valid value ranges: [180~604800]. Default value is 3600 seconds.

func (ConnectionOutput) IpsecSaLifetimeTraffic

func (o ConnectionOutput) IpsecSaLifetimeTraffic() pulumi.IntPtrOutput

SA lifetime of the IPSEC operation specification, unit is KB. The value should not be less then 2560. Default value is 1843200.

func (ConnectionOutput) IsCcnType

func (o ConnectionOutput) IsCcnType() pulumi.BoolOutput

Indicate whether is ccn type. Modification of this field only impacts force new logic of `vpcId`. If `isCcnType` is true, modification of `vpcId` will be ignored.

func (ConnectionOutput) Name

Name of the VPN connection. The length of character is limited to 1-60.

func (ConnectionOutput) NetStatus

func (o ConnectionOutput) NetStatus() pulumi.StringOutput

Net status of the VPN connection. Valid value: `AVAILABLE`.

func (ConnectionOutput) PreShareKey

func (o ConnectionOutput) PreShareKey() pulumi.StringOutput

Pre-shared key of the VPN connection.

func (ConnectionOutput) RouteType

func (o ConnectionOutput) RouteType() pulumi.StringOutput

Route type of the VPN connection.

func (ConnectionOutput) SecurityGroupPolicies

Security group policy of the VPN connection.

func (ConnectionOutput) State

State of the connection. Valid value: `PENDING`, `AVAILABLE`, `DELETING`.

func (ConnectionOutput) Tags

A list of tags used to associate different resources.

func (ConnectionOutput) ToConnectionOutput

func (o ConnectionOutput) ToConnectionOutput() ConnectionOutput

func (ConnectionOutput) ToConnectionOutputWithContext

func (o ConnectionOutput) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput

func (ConnectionOutput) VpcId

ID of the VPC. Required if vpn gateway is not in `CCN` type, and doesn't make sense for `CCN` vpn gateway.

func (ConnectionOutput) VpnGatewayId

func (o ConnectionOutput) VpnGatewayId() pulumi.StringOutput

ID of the VPN gateway.

func (ConnectionOutput) VpnProto

func (o ConnectionOutput) VpnProto() pulumi.StringOutput

Vpn proto of the VPN connection.

type ConnectionSecurityGroupPolicy

type ConnectionSecurityGroupPolicy struct {
	// Local cidr block.
	LocalCidrBlock string `pulumi:"localCidrBlock"`
	// Remote cidr block list.
	RemoteCidrBlocks []string `pulumi:"remoteCidrBlocks"`
}

type ConnectionSecurityGroupPolicyArgs

type ConnectionSecurityGroupPolicyArgs struct {
	// Local cidr block.
	LocalCidrBlock pulumi.StringInput `pulumi:"localCidrBlock"`
	// Remote cidr block list.
	RemoteCidrBlocks pulumi.StringArrayInput `pulumi:"remoteCidrBlocks"`
}

func (ConnectionSecurityGroupPolicyArgs) ElementType

func (ConnectionSecurityGroupPolicyArgs) ToConnectionSecurityGroupPolicyOutput

func (i ConnectionSecurityGroupPolicyArgs) ToConnectionSecurityGroupPolicyOutput() ConnectionSecurityGroupPolicyOutput

func (ConnectionSecurityGroupPolicyArgs) ToConnectionSecurityGroupPolicyOutputWithContext

func (i ConnectionSecurityGroupPolicyArgs) ToConnectionSecurityGroupPolicyOutputWithContext(ctx context.Context) ConnectionSecurityGroupPolicyOutput

type ConnectionSecurityGroupPolicyArray

type ConnectionSecurityGroupPolicyArray []ConnectionSecurityGroupPolicyInput

func (ConnectionSecurityGroupPolicyArray) ElementType

func (ConnectionSecurityGroupPolicyArray) ToConnectionSecurityGroupPolicyArrayOutput

func (i ConnectionSecurityGroupPolicyArray) ToConnectionSecurityGroupPolicyArrayOutput() ConnectionSecurityGroupPolicyArrayOutput

func (ConnectionSecurityGroupPolicyArray) ToConnectionSecurityGroupPolicyArrayOutputWithContext

func (i ConnectionSecurityGroupPolicyArray) ToConnectionSecurityGroupPolicyArrayOutputWithContext(ctx context.Context) ConnectionSecurityGroupPolicyArrayOutput

type ConnectionSecurityGroupPolicyArrayInput

type ConnectionSecurityGroupPolicyArrayInput interface {
	pulumi.Input

	ToConnectionSecurityGroupPolicyArrayOutput() ConnectionSecurityGroupPolicyArrayOutput
	ToConnectionSecurityGroupPolicyArrayOutputWithContext(context.Context) ConnectionSecurityGroupPolicyArrayOutput
}

ConnectionSecurityGroupPolicyArrayInput is an input type that accepts ConnectionSecurityGroupPolicyArray and ConnectionSecurityGroupPolicyArrayOutput values. You can construct a concrete instance of `ConnectionSecurityGroupPolicyArrayInput` via:

ConnectionSecurityGroupPolicyArray{ ConnectionSecurityGroupPolicyArgs{...} }

type ConnectionSecurityGroupPolicyArrayOutput

type ConnectionSecurityGroupPolicyArrayOutput struct{ *pulumi.OutputState }

func (ConnectionSecurityGroupPolicyArrayOutput) ElementType

func (ConnectionSecurityGroupPolicyArrayOutput) Index

func (ConnectionSecurityGroupPolicyArrayOutput) ToConnectionSecurityGroupPolicyArrayOutput

func (o ConnectionSecurityGroupPolicyArrayOutput) ToConnectionSecurityGroupPolicyArrayOutput() ConnectionSecurityGroupPolicyArrayOutput

func (ConnectionSecurityGroupPolicyArrayOutput) ToConnectionSecurityGroupPolicyArrayOutputWithContext

func (o ConnectionSecurityGroupPolicyArrayOutput) ToConnectionSecurityGroupPolicyArrayOutputWithContext(ctx context.Context) ConnectionSecurityGroupPolicyArrayOutput

type ConnectionSecurityGroupPolicyInput

type ConnectionSecurityGroupPolicyInput interface {
	pulumi.Input

	ToConnectionSecurityGroupPolicyOutput() ConnectionSecurityGroupPolicyOutput
	ToConnectionSecurityGroupPolicyOutputWithContext(context.Context) ConnectionSecurityGroupPolicyOutput
}

ConnectionSecurityGroupPolicyInput is an input type that accepts ConnectionSecurityGroupPolicyArgs and ConnectionSecurityGroupPolicyOutput values. You can construct a concrete instance of `ConnectionSecurityGroupPolicyInput` via:

ConnectionSecurityGroupPolicyArgs{...}

type ConnectionSecurityGroupPolicyOutput

type ConnectionSecurityGroupPolicyOutput struct{ *pulumi.OutputState }

func (ConnectionSecurityGroupPolicyOutput) ElementType

func (ConnectionSecurityGroupPolicyOutput) LocalCidrBlock

Local cidr block.

func (ConnectionSecurityGroupPolicyOutput) RemoteCidrBlocks

Remote cidr block list.

func (ConnectionSecurityGroupPolicyOutput) ToConnectionSecurityGroupPolicyOutput

func (o ConnectionSecurityGroupPolicyOutput) ToConnectionSecurityGroupPolicyOutput() ConnectionSecurityGroupPolicyOutput

func (ConnectionSecurityGroupPolicyOutput) ToConnectionSecurityGroupPolicyOutputWithContext

func (o ConnectionSecurityGroupPolicyOutput) ToConnectionSecurityGroupPolicyOutputWithContext(ctx context.Context) ConnectionSecurityGroupPolicyOutput

type ConnectionState

type ConnectionState struct {
	// Create time of the VPN connection.
	CreateTime pulumi.StringPtrInput
	// ID of the customer gateway.
	CustomerGatewayId pulumi.StringPtrInput
	// Whether intra-tunnel health checks are supported.
	EnableHealthCheck pulumi.BoolPtrInput
	// Encrypt proto of the VPN connection.
	EncryptProto pulumi.StringPtrInput
	// Health check the address of this terminal.
	HealthCheckLocalIp pulumi.StringPtrInput
	// Health check peer address.
	HealthCheckRemoteIp pulumi.StringPtrInput
	// DH group name of the IKE operation specification. Valid values: `GROUP1`, `GROUP2`, `GROUP5`, `GROUP14`, `GROUP24`. Default value is `GROUP1`.
	IkeDhGroupName pulumi.StringPtrInput
	// Exchange mode of the IKE operation specification. Valid values: `AGGRESSIVE`, `MAIN`. Default value is `MAIN`.
	IkeExchangeMode pulumi.StringPtrInput
	// Local address of IKE operation specification, valid when ikeLocalIdentity is `ADDRESS`, generally the value is `publicIpAddress` of the related VPN gateway.
	IkeLocalAddress pulumi.StringPtrInput
	// Local FQDN name of the IKE operation specification.
	IkeLocalFqdnName pulumi.StringPtrInput
	// Local identity way of IKE operation specification. Valid values: `ADDRESS`, `FQDN`. Default value is `ADDRESS`.
	IkeLocalIdentity pulumi.StringPtrInput
	// Proto authenticate algorithm of the IKE operation specification. Valid values: `MD5`, `SHA`, `SHA-256`. Default Value is `MD5`.
	IkeProtoAuthenAlgorithm pulumi.StringPtrInput
	// Proto encrypt algorithm of the IKE operation specification. Valid values: `3DES-CBC`, `AES-CBC-128`, `AES-CBC-128`, `AES-CBC-256`, `DES-CBC`. Default value is `3DES-CBC`.
	IkeProtoEncryAlgorithm pulumi.StringPtrInput
	// Remote address of IKE operation specification, valid when ikeRemoteIdentity is `ADDRESS`, generally the value is `publicIpAddress` of the related customer gateway.
	IkeRemoteAddress pulumi.StringPtrInput
	// Remote FQDN name of the IKE operation specification.
	IkeRemoteFqdnName pulumi.StringPtrInput
	// Remote identity way of IKE operation specification. Valid values: `ADDRESS`, `FQDN`. Default value is `ADDRESS`.
	IkeRemoteIdentity pulumi.StringPtrInput
	// SA lifetime of the IKE operation specification, unit is `second`. The value ranges from 60 to 604800. Default value is 86400 seconds.
	IkeSaLifetimeSeconds pulumi.IntPtrInput
	// Version of the IKE operation specification. Default value is `IKEV1`.
	IkeVersion pulumi.StringPtrInput
	// Encrypt algorithm of the IPSEC operation specification. Valid values: `3DES-CBC`, `AES-CBC-128`, `AES-CBC-128`, `AES-CBC-256`, `DES-CBC`. Default value is `3DES-CBC`.
	IpsecEncryptAlgorithm pulumi.StringPtrInput
	// Integrity algorithm of the IPSEC operation specification. Valid values: `SHA1`, `MD5`, `SHA-256`. Default value is `MD5`.
	IpsecIntegrityAlgorithm pulumi.StringPtrInput
	// PFS DH group. Valid value: `GROUP1`, `GROUP2`, `GROUP5`, `GROUP14`, `GROUP24`, `NULL`. Default value is `NULL`.
	IpsecPfsDhGroup pulumi.StringPtrInput
	// SA lifetime of the IPSEC operation specification, unit is second. Valid value ranges: [180~604800]. Default value is 3600 seconds.
	IpsecSaLifetimeSeconds pulumi.IntPtrInput
	// SA lifetime of the IPSEC operation specification, unit is KB. The value should not be less then 2560. Default value is 1843200.
	IpsecSaLifetimeTraffic pulumi.IntPtrInput
	// Indicate whether is ccn type. Modification of this field only impacts force new logic of `vpcId`. If `isCcnType` is true, modification of `vpcId` will be ignored.
	IsCcnType pulumi.BoolPtrInput
	// Name of the VPN connection. The length of character is limited to 1-60.
	Name pulumi.StringPtrInput
	// Net status of the VPN connection. Valid value: `AVAILABLE`.
	NetStatus pulumi.StringPtrInput
	// Pre-shared key of the VPN connection.
	PreShareKey pulumi.StringPtrInput
	// Route type of the VPN connection.
	RouteType pulumi.StringPtrInput
	// Security group policy of the VPN connection.
	SecurityGroupPolicies ConnectionSecurityGroupPolicyArrayInput
	// State of the connection. Valid value: `PENDING`, `AVAILABLE`, `DELETING`.
	State pulumi.StringPtrInput
	// A list of tags used to associate different resources.
	Tags pulumi.MapInput
	// ID of the VPC. Required if vpn gateway is not in `CCN` type, and doesn't make sense for `CCN` vpn gateway.
	VpcId pulumi.StringPtrInput
	// ID of the VPN gateway.
	VpnGatewayId pulumi.StringPtrInput
	// Vpn proto of the VPN connection.
	VpnProto pulumi.StringPtrInput
}

func (ConnectionState) ElementType

func (ConnectionState) ElementType() reflect.Type

type CustomerGateway

type CustomerGateway struct {
	pulumi.CustomResourceState

	// Create time of the customer gateway.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Name of the customer gateway. The length of character is limited to 1-60.
	Name pulumi.StringOutput `pulumi:"name"`
	// Public IP of the customer gateway.
	PublicIpAddress pulumi.StringOutput `pulumi:"publicIpAddress"`
	// A list of tags used to associate different resources.
	Tags pulumi.MapOutput `pulumi:"tags"`
}

Provides a resource to create a VPN customer gateway.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Vpn.NewCustomerGateway(ctx, "foo", &Vpn.CustomerGatewayArgs{
			PublicIpAddress: pulumi.String("1.1.1.1"),
			Tags: pulumi.AnyMap{
				"tag": pulumi.Any("test"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPN customer gateway can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Vpn/customerGateway:CustomerGateway foo cgw-xfqag

```

func GetCustomerGateway

func GetCustomerGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CustomerGatewayState, opts ...pulumi.ResourceOption) (*CustomerGateway, error)

GetCustomerGateway gets an existing CustomerGateway 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 NewCustomerGateway

func NewCustomerGateway(ctx *pulumi.Context,
	name string, args *CustomerGatewayArgs, opts ...pulumi.ResourceOption) (*CustomerGateway, error)

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

func (*CustomerGateway) ElementType

func (*CustomerGateway) ElementType() reflect.Type

func (*CustomerGateway) ToCustomerGatewayOutput

func (i *CustomerGateway) ToCustomerGatewayOutput() CustomerGatewayOutput

func (*CustomerGateway) ToCustomerGatewayOutputWithContext

func (i *CustomerGateway) ToCustomerGatewayOutputWithContext(ctx context.Context) CustomerGatewayOutput

type CustomerGatewayArgs

type CustomerGatewayArgs struct {
	// Name of the customer gateway. The length of character is limited to 1-60.
	Name pulumi.StringPtrInput
	// Public IP of the customer gateway.
	PublicIpAddress pulumi.StringInput
	// A list of tags used to associate different resources.
	Tags pulumi.MapInput
}

The set of arguments for constructing a CustomerGateway resource.

func (CustomerGatewayArgs) ElementType

func (CustomerGatewayArgs) ElementType() reflect.Type

type CustomerGatewayArray

type CustomerGatewayArray []CustomerGatewayInput

func (CustomerGatewayArray) ElementType

func (CustomerGatewayArray) ElementType() reflect.Type

func (CustomerGatewayArray) ToCustomerGatewayArrayOutput

func (i CustomerGatewayArray) ToCustomerGatewayArrayOutput() CustomerGatewayArrayOutput

func (CustomerGatewayArray) ToCustomerGatewayArrayOutputWithContext

func (i CustomerGatewayArray) ToCustomerGatewayArrayOutputWithContext(ctx context.Context) CustomerGatewayArrayOutput

type CustomerGatewayArrayInput

type CustomerGatewayArrayInput interface {
	pulumi.Input

	ToCustomerGatewayArrayOutput() CustomerGatewayArrayOutput
	ToCustomerGatewayArrayOutputWithContext(context.Context) CustomerGatewayArrayOutput
}

CustomerGatewayArrayInput is an input type that accepts CustomerGatewayArray and CustomerGatewayArrayOutput values. You can construct a concrete instance of `CustomerGatewayArrayInput` via:

CustomerGatewayArray{ CustomerGatewayArgs{...} }

type CustomerGatewayArrayOutput

type CustomerGatewayArrayOutput struct{ *pulumi.OutputState }

func (CustomerGatewayArrayOutput) ElementType

func (CustomerGatewayArrayOutput) ElementType() reflect.Type

func (CustomerGatewayArrayOutput) Index

func (CustomerGatewayArrayOutput) ToCustomerGatewayArrayOutput

func (o CustomerGatewayArrayOutput) ToCustomerGatewayArrayOutput() CustomerGatewayArrayOutput

func (CustomerGatewayArrayOutput) ToCustomerGatewayArrayOutputWithContext

func (o CustomerGatewayArrayOutput) ToCustomerGatewayArrayOutputWithContext(ctx context.Context) CustomerGatewayArrayOutput

type CustomerGatewayInput

type CustomerGatewayInput interface {
	pulumi.Input

	ToCustomerGatewayOutput() CustomerGatewayOutput
	ToCustomerGatewayOutputWithContext(ctx context.Context) CustomerGatewayOutput
}

type CustomerGatewayMap

type CustomerGatewayMap map[string]CustomerGatewayInput

func (CustomerGatewayMap) ElementType

func (CustomerGatewayMap) ElementType() reflect.Type

func (CustomerGatewayMap) ToCustomerGatewayMapOutput

func (i CustomerGatewayMap) ToCustomerGatewayMapOutput() CustomerGatewayMapOutput

func (CustomerGatewayMap) ToCustomerGatewayMapOutputWithContext

func (i CustomerGatewayMap) ToCustomerGatewayMapOutputWithContext(ctx context.Context) CustomerGatewayMapOutput

type CustomerGatewayMapInput

type CustomerGatewayMapInput interface {
	pulumi.Input

	ToCustomerGatewayMapOutput() CustomerGatewayMapOutput
	ToCustomerGatewayMapOutputWithContext(context.Context) CustomerGatewayMapOutput
}

CustomerGatewayMapInput is an input type that accepts CustomerGatewayMap and CustomerGatewayMapOutput values. You can construct a concrete instance of `CustomerGatewayMapInput` via:

CustomerGatewayMap{ "key": CustomerGatewayArgs{...} }

type CustomerGatewayMapOutput

type CustomerGatewayMapOutput struct{ *pulumi.OutputState }

func (CustomerGatewayMapOutput) ElementType

func (CustomerGatewayMapOutput) ElementType() reflect.Type

func (CustomerGatewayMapOutput) MapIndex

func (CustomerGatewayMapOutput) ToCustomerGatewayMapOutput

func (o CustomerGatewayMapOutput) ToCustomerGatewayMapOutput() CustomerGatewayMapOutput

func (CustomerGatewayMapOutput) ToCustomerGatewayMapOutputWithContext

func (o CustomerGatewayMapOutput) ToCustomerGatewayMapOutputWithContext(ctx context.Context) CustomerGatewayMapOutput

type CustomerGatewayOutput

type CustomerGatewayOutput struct{ *pulumi.OutputState }

func (CustomerGatewayOutput) CreateTime

func (o CustomerGatewayOutput) CreateTime() pulumi.StringOutput

Create time of the customer gateway.

func (CustomerGatewayOutput) ElementType

func (CustomerGatewayOutput) ElementType() reflect.Type

func (CustomerGatewayOutput) Name

Name of the customer gateway. The length of character is limited to 1-60.

func (CustomerGatewayOutput) PublicIpAddress

func (o CustomerGatewayOutput) PublicIpAddress() pulumi.StringOutput

Public IP of the customer gateway.

func (CustomerGatewayOutput) Tags

A list of tags used to associate different resources.

func (CustomerGatewayOutput) ToCustomerGatewayOutput

func (o CustomerGatewayOutput) ToCustomerGatewayOutput() CustomerGatewayOutput

func (CustomerGatewayOutput) ToCustomerGatewayOutputWithContext

func (o CustomerGatewayOutput) ToCustomerGatewayOutputWithContext(ctx context.Context) CustomerGatewayOutput

type CustomerGatewayState

type CustomerGatewayState struct {
	// Create time of the customer gateway.
	CreateTime pulumi.StringPtrInput
	// Name of the customer gateway. The length of character is limited to 1-60.
	Name pulumi.StringPtrInput
	// Public IP of the customer gateway.
	PublicIpAddress pulumi.StringPtrInput
	// A list of tags used to associate different resources.
	Tags pulumi.MapInput
}

func (CustomerGatewayState) ElementType

func (CustomerGatewayState) ElementType() reflect.Type

type Gateway

type Gateway struct {
	pulumi.CustomResourceState

	// The maximum public network output bandwidth of VPN gateway (unit: Mbps), the available values include: 5,10,20,50,100,200,500,1000. Default is 5. When charge type is `PREPAID`, bandwidth degradation operation is unsupported.
	Bandwidth pulumi.IntPtrOutput `pulumi:"bandwidth"`
	// CDC instance ID.
	CdcId pulumi.StringOutput `pulumi:"cdcId"`
	// Charge Type of the VPN gateway. Valid value: `PREPAID`, `POSTPAID_BY_HOUR`. The default is `POSTPAID_BY_HOUR`.
	ChargeType pulumi.StringPtrOutput `pulumi:"chargeType"`
	// Create time of the VPN gateway.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Expired time of the VPN gateway when charge type is `PREPAID`.
	ExpiredTime pulumi.StringOutput `pulumi:"expiredTime"`
	// Indicates whether ip address is blocked.
	IsAddressBlocked pulumi.BoolOutput `pulumi:"isAddressBlocked"`
	// Maximum number of connected clients allowed for the SSL VPN gateway. Valid values: [5, 10, 20, 50, 100]. This parameter is only required for SSL VPN gateways.
	MaxConnection pulumi.IntOutput `pulumi:"maxConnection"`
	// Name of the VPN gateway. The length of character is limited to 1-60.
	Name pulumi.StringOutput `pulumi:"name"`
	// The plan of new purchase. Valid value: `PREPAID_TO_POSTPAID`.
	NewPurchasePlan pulumi.StringOutput `pulumi:"newPurchasePlan"`
	// Period of instance to be prepaid. Valid value: `1`, `2`, `3`, `4`, `6`, `7`, `8`, `9`, `12`, `24`, `36`. The unit is month. Caution: when this para and renewFlag para are valid, the request means to renew several months more pre-paid period. This para can only be set to take effect in create operation.
	PrepaidPeriod pulumi.IntPtrOutput `pulumi:"prepaidPeriod"`
	// Flag indicates whether to renew or not. Valid value: `NOTIFY_AND_RENEW`, `NOTIFY_AND_AUTO_RENEW`, `NOT_NOTIFY_AND_NOT_RENEW`. This para can only be set to take effect in create operation.
	PrepaidRenewFlag pulumi.StringPtrOutput `pulumi:"prepaidRenewFlag"`
	// Public IP of the VPN gateway.
	PublicIpAddress pulumi.StringOutput `pulumi:"publicIpAddress"`
	// Restrict state of gateway. Valid value: `PRETECIVELY_ISOLATED`, `NORMAL`.
	RestrictState pulumi.StringOutput `pulumi:"restrictState"`
	// State of the VPN gateway. Valid value: `PENDING`, `DELETING`, `AVAILABLE`.
	State pulumi.StringOutput `pulumi:"state"`
	// A list of tags used to associate different resources.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// Type of gateway instance. Valid value: `IPSEC`, `SSL` and `CCN`. Note: CCN type is only for whitelist customer now.
	Type pulumi.StringOutput `pulumi:"type"`
	// ID of the VPC. Required if vpn gateway is not in `CCN` type, and doesn't make sense for `CCN` vpn gateway.
	VpcId pulumi.StringPtrOutput `pulumi:"vpcId"`
	// Zone of the VPN gateway.
	Zone pulumi.StringOutput `pulumi:"zone"`
}

## Example Usage

POSTPAID_BY_HOUR VPN gateway

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Vpn.NewGateway(ctx, "myCgw", &Vpn.GatewayArgs{
			Bandwidth: pulumi.Int(5),
			Tags: pulumi.AnyMap{
				"test": pulumi.Any("test"),
			},
			VpcId: pulumi.String("vpc-dk8zmwuf"),
			Zone:  pulumi.String("ap-guangzhou-3"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

PREPAID VPN gateway

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Vpn.NewGateway(ctx, "myCgw", &Vpn.GatewayArgs{
			Bandwidth:     pulumi.Int(5),
			ChargeType:    pulumi.String("PREPAID"),
			PrepaidPeriod: pulumi.Int(1),
			Tags: pulumi.AnyMap{
				"test": pulumi.Any("test"),
			},
			VpcId: pulumi.String("vpc-dk8zmwuf"),
			Zone:  pulumi.String("ap-guangzhou-3"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPN gateway can be imported using the id, e.g.

```sh

$ pulumi import tencentcloud:Vpn/gateway:Gateway foo vpngw-8ccsnclt

```

func GetGateway

func GetGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GatewayState, opts ...pulumi.ResourceOption) (*Gateway, error)

GetGateway gets an existing Gateway 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 NewGateway

func NewGateway(ctx *pulumi.Context,
	name string, args *GatewayArgs, opts ...pulumi.ResourceOption) (*Gateway, error)

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

func (*Gateway) ElementType

func (*Gateway) ElementType() reflect.Type

func (*Gateway) ToGatewayOutput

func (i *Gateway) ToGatewayOutput() GatewayOutput

func (*Gateway) ToGatewayOutputWithContext

func (i *Gateway) ToGatewayOutputWithContext(ctx context.Context) GatewayOutput

type GatewayArgs

type GatewayArgs struct {
	// The maximum public network output bandwidth of VPN gateway (unit: Mbps), the available values include: 5,10,20,50,100,200,500,1000. Default is 5. When charge type is `PREPAID`, bandwidth degradation operation is unsupported.
	Bandwidth pulumi.IntPtrInput
	// CDC instance ID.
	CdcId pulumi.StringPtrInput
	// Charge Type of the VPN gateway. Valid value: `PREPAID`, `POSTPAID_BY_HOUR`. The default is `POSTPAID_BY_HOUR`.
	ChargeType pulumi.StringPtrInput
	// Maximum number of connected clients allowed for the SSL VPN gateway. Valid values: [5, 10, 20, 50, 100]. This parameter is only required for SSL VPN gateways.
	MaxConnection pulumi.IntPtrInput
	// Name of the VPN gateway. The length of character is limited to 1-60.
	Name pulumi.StringPtrInput
	// Period of instance to be prepaid. Valid value: `1`, `2`, `3`, `4`, `6`, `7`, `8`, `9`, `12`, `24`, `36`. The unit is month. Caution: when this para and renewFlag para are valid, the request means to renew several months more pre-paid period. This para can only be set to take effect in create operation.
	PrepaidPeriod pulumi.IntPtrInput
	// Flag indicates whether to renew or not. Valid value: `NOTIFY_AND_RENEW`, `NOTIFY_AND_AUTO_RENEW`, `NOT_NOTIFY_AND_NOT_RENEW`. This para can only be set to take effect in create operation.
	PrepaidRenewFlag pulumi.StringPtrInput
	// A list of tags used to associate different resources.
	Tags pulumi.MapInput
	// Type of gateway instance. Valid value: `IPSEC`, `SSL` and `CCN`. Note: CCN type is only for whitelist customer now.
	Type pulumi.StringPtrInput
	// ID of the VPC. Required if vpn gateway is not in `CCN` type, and doesn't make sense for `CCN` vpn gateway.
	VpcId pulumi.StringPtrInput
	// Zone of the VPN gateway.
	Zone pulumi.StringInput
}

The set of arguments for constructing a Gateway resource.

func (GatewayArgs) ElementType

func (GatewayArgs) ElementType() reflect.Type

type GatewayArray

type GatewayArray []GatewayInput

func (GatewayArray) ElementType

func (GatewayArray) ElementType() reflect.Type

func (GatewayArray) ToGatewayArrayOutput

func (i GatewayArray) ToGatewayArrayOutput() GatewayArrayOutput

func (GatewayArray) ToGatewayArrayOutputWithContext

func (i GatewayArray) ToGatewayArrayOutputWithContext(ctx context.Context) GatewayArrayOutput

type GatewayArrayInput

type GatewayArrayInput interface {
	pulumi.Input

	ToGatewayArrayOutput() GatewayArrayOutput
	ToGatewayArrayOutputWithContext(context.Context) GatewayArrayOutput
}

GatewayArrayInput is an input type that accepts GatewayArray and GatewayArrayOutput values. You can construct a concrete instance of `GatewayArrayInput` via:

GatewayArray{ GatewayArgs{...} }

type GatewayArrayOutput

type GatewayArrayOutput struct{ *pulumi.OutputState }

func (GatewayArrayOutput) ElementType

func (GatewayArrayOutput) ElementType() reflect.Type

func (GatewayArrayOutput) Index

func (GatewayArrayOutput) ToGatewayArrayOutput

func (o GatewayArrayOutput) ToGatewayArrayOutput() GatewayArrayOutput

func (GatewayArrayOutput) ToGatewayArrayOutputWithContext

func (o GatewayArrayOutput) ToGatewayArrayOutputWithContext(ctx context.Context) GatewayArrayOutput

type GatewayInput

type GatewayInput interface {
	pulumi.Input

	ToGatewayOutput() GatewayOutput
	ToGatewayOutputWithContext(ctx context.Context) GatewayOutput
}

type GatewayMap

type GatewayMap map[string]GatewayInput

func (GatewayMap) ElementType

func (GatewayMap) ElementType() reflect.Type

func (GatewayMap) ToGatewayMapOutput

func (i GatewayMap) ToGatewayMapOutput() GatewayMapOutput

func (GatewayMap) ToGatewayMapOutputWithContext

func (i GatewayMap) ToGatewayMapOutputWithContext(ctx context.Context) GatewayMapOutput

type GatewayMapInput

type GatewayMapInput interface {
	pulumi.Input

	ToGatewayMapOutput() GatewayMapOutput
	ToGatewayMapOutputWithContext(context.Context) GatewayMapOutput
}

GatewayMapInput is an input type that accepts GatewayMap and GatewayMapOutput values. You can construct a concrete instance of `GatewayMapInput` via:

GatewayMap{ "key": GatewayArgs{...} }

type GatewayMapOutput

type GatewayMapOutput struct{ *pulumi.OutputState }

func (GatewayMapOutput) ElementType

func (GatewayMapOutput) ElementType() reflect.Type

func (GatewayMapOutput) MapIndex

func (GatewayMapOutput) ToGatewayMapOutput

func (o GatewayMapOutput) ToGatewayMapOutput() GatewayMapOutput

func (GatewayMapOutput) ToGatewayMapOutputWithContext

func (o GatewayMapOutput) ToGatewayMapOutputWithContext(ctx context.Context) GatewayMapOutput

type GatewayOutput

type GatewayOutput struct{ *pulumi.OutputState }

func (GatewayOutput) Bandwidth

func (o GatewayOutput) Bandwidth() pulumi.IntPtrOutput

The maximum public network output bandwidth of VPN gateway (unit: Mbps), the available values include: 5,10,20,50,100,200,500,1000. Default is 5. When charge type is `PREPAID`, bandwidth degradation operation is unsupported.

func (GatewayOutput) CdcId

func (o GatewayOutput) CdcId() pulumi.StringOutput

CDC instance ID.

func (GatewayOutput) ChargeType

func (o GatewayOutput) ChargeType() pulumi.StringPtrOutput

Charge Type of the VPN gateway. Valid value: `PREPAID`, `POSTPAID_BY_HOUR`. The default is `POSTPAID_BY_HOUR`.

func (GatewayOutput) CreateTime

func (o GatewayOutput) CreateTime() pulumi.StringOutput

Create time of the VPN gateway.

func (GatewayOutput) ElementType

func (GatewayOutput) ElementType() reflect.Type

func (GatewayOutput) ExpiredTime

func (o GatewayOutput) ExpiredTime() pulumi.StringOutput

Expired time of the VPN gateway when charge type is `PREPAID`.

func (GatewayOutput) IsAddressBlocked

func (o GatewayOutput) IsAddressBlocked() pulumi.BoolOutput

Indicates whether ip address is blocked.

func (GatewayOutput) MaxConnection

func (o GatewayOutput) MaxConnection() pulumi.IntOutput

Maximum number of connected clients allowed for the SSL VPN gateway. Valid values: [5, 10, 20, 50, 100]. This parameter is only required for SSL VPN gateways.

func (GatewayOutput) Name

Name of the VPN gateway. The length of character is limited to 1-60.

func (GatewayOutput) NewPurchasePlan

func (o GatewayOutput) NewPurchasePlan() pulumi.StringOutput

The plan of new purchase. Valid value: `PREPAID_TO_POSTPAID`.

func (GatewayOutput) PrepaidPeriod

func (o GatewayOutput) PrepaidPeriod() pulumi.IntPtrOutput

Period of instance to be prepaid. Valid value: `1`, `2`, `3`, `4`, `6`, `7`, `8`, `9`, `12`, `24`, `36`. The unit is month. Caution: when this para and renewFlag para are valid, the request means to renew several months more pre-paid period. This para can only be set to take effect in create operation.

func (GatewayOutput) PrepaidRenewFlag

func (o GatewayOutput) PrepaidRenewFlag() pulumi.StringPtrOutput

Flag indicates whether to renew or not. Valid value: `NOTIFY_AND_RENEW`, `NOTIFY_AND_AUTO_RENEW`, `NOT_NOTIFY_AND_NOT_RENEW`. This para can only be set to take effect in create operation.

func (GatewayOutput) PublicIpAddress

func (o GatewayOutput) PublicIpAddress() pulumi.StringOutput

Public IP of the VPN gateway.

func (GatewayOutput) RestrictState

func (o GatewayOutput) RestrictState() pulumi.StringOutput

Restrict state of gateway. Valid value: `PRETECIVELY_ISOLATED`, `NORMAL`.

func (GatewayOutput) State

func (o GatewayOutput) State() pulumi.StringOutput

State of the VPN gateway. Valid value: `PENDING`, `DELETING`, `AVAILABLE`.

func (GatewayOutput) Tags

func (o GatewayOutput) Tags() pulumi.MapOutput

A list of tags used to associate different resources.

func (GatewayOutput) ToGatewayOutput

func (o GatewayOutput) ToGatewayOutput() GatewayOutput

func (GatewayOutput) ToGatewayOutputWithContext

func (o GatewayOutput) ToGatewayOutputWithContext(ctx context.Context) GatewayOutput

func (GatewayOutput) Type

Type of gateway instance. Valid value: `IPSEC`, `SSL` and `CCN`. Note: CCN type is only for whitelist customer now.

func (GatewayOutput) VpcId

ID of the VPC. Required if vpn gateway is not in `CCN` type, and doesn't make sense for `CCN` vpn gateway.

func (GatewayOutput) Zone

Zone of the VPN gateway.

type GatewayRoute

type GatewayRoute struct {
	pulumi.CustomResourceState

	// Create time.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Destination IDC IP range.
	DestinationCidrBlock pulumi.StringOutput `pulumi:"destinationCidrBlock"`
	// Instance ID of the next hop.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// Next hop type (type of the associated instance). Valid values: VPNCONN (VPN tunnel) and CCN (CCN instance).
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// Priority. Valid values: 0 and 100.
	Priority pulumi.IntOutput `pulumi:"priority"`
	// Route ID.
	RouteId pulumi.StringOutput `pulumi:"routeId"`
	// Status. Valid values: ENABLE and DISABLE.
	Status pulumi.StringOutput `pulumi:"status"`
	// Route type. Default value: Static.
	Type pulumi.StringOutput `pulumi:"type"`
	// Update time.
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
	// VPN gateway ID.
	VpnGatewayId pulumi.StringOutput `pulumi:"vpnGatewayId"`
}

Provides a resource to create a VPN gateway route.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Vpn.NewGatewayRoute(ctx, "route", &Vpn.GatewayRouteArgs{
			DestinationCidrBlock: pulumi.String("10.0.0.0/16"),
			InstanceId:           pulumi.String("vpnx-5b5dmao3"),
			InstanceType:         pulumi.String("VPNCONN"),
			Priority:             pulumi.Int(100),
			Status:               pulumi.String("DISABLE"),
			VpnGatewayId:         pulumi.String("vpngw-ak9sjem2"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPN gateway route can be imported using the id, the id format must be '{vpn_gateway_id}#{route_id}', e.g.

```sh

$ pulumi import tencentcloud:Vpn/gatewayRoute:GatewayRoute route1 vpngw-ak9sjem2#vpngw-8ccsnclt

```

func GetGatewayRoute

func GetGatewayRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GatewayRouteState, opts ...pulumi.ResourceOption) (*GatewayRoute, error)

GetGatewayRoute gets an existing GatewayRoute 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 NewGatewayRoute

func NewGatewayRoute(ctx *pulumi.Context,
	name string, args *GatewayRouteArgs, opts ...pulumi.ResourceOption) (*GatewayRoute, error)

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

func (*GatewayRoute) ElementType

func (*GatewayRoute) ElementType() reflect.Type

func (*GatewayRoute) ToGatewayRouteOutput

func (i *GatewayRoute) ToGatewayRouteOutput() GatewayRouteOutput

func (*GatewayRoute) ToGatewayRouteOutputWithContext

func (i *GatewayRoute) ToGatewayRouteOutputWithContext(ctx context.Context) GatewayRouteOutput

type GatewayRouteArgs

type GatewayRouteArgs struct {
	// Destination IDC IP range.
	DestinationCidrBlock pulumi.StringInput
	// Instance ID of the next hop.
	InstanceId pulumi.StringInput
	// Next hop type (type of the associated instance). Valid values: VPNCONN (VPN tunnel) and CCN (CCN instance).
	InstanceType pulumi.StringInput
	// Priority. Valid values: 0 and 100.
	Priority pulumi.IntInput
	// Status. Valid values: ENABLE and DISABLE.
	Status pulumi.StringInput
	// VPN gateway ID.
	VpnGatewayId pulumi.StringInput
}

The set of arguments for constructing a GatewayRoute resource.

func (GatewayRouteArgs) ElementType

func (GatewayRouteArgs) ElementType() reflect.Type

type GatewayRouteArray

type GatewayRouteArray []GatewayRouteInput

func (GatewayRouteArray) ElementType

func (GatewayRouteArray) ElementType() reflect.Type

func (GatewayRouteArray) ToGatewayRouteArrayOutput

func (i GatewayRouteArray) ToGatewayRouteArrayOutput() GatewayRouteArrayOutput

func (GatewayRouteArray) ToGatewayRouteArrayOutputWithContext

func (i GatewayRouteArray) ToGatewayRouteArrayOutputWithContext(ctx context.Context) GatewayRouteArrayOutput

type GatewayRouteArrayInput

type GatewayRouteArrayInput interface {
	pulumi.Input

	ToGatewayRouteArrayOutput() GatewayRouteArrayOutput
	ToGatewayRouteArrayOutputWithContext(context.Context) GatewayRouteArrayOutput
}

GatewayRouteArrayInput is an input type that accepts GatewayRouteArray and GatewayRouteArrayOutput values. You can construct a concrete instance of `GatewayRouteArrayInput` via:

GatewayRouteArray{ GatewayRouteArgs{...} }

type GatewayRouteArrayOutput

type GatewayRouteArrayOutput struct{ *pulumi.OutputState }

func (GatewayRouteArrayOutput) ElementType

func (GatewayRouteArrayOutput) ElementType() reflect.Type

func (GatewayRouteArrayOutput) Index

func (GatewayRouteArrayOutput) ToGatewayRouteArrayOutput

func (o GatewayRouteArrayOutput) ToGatewayRouteArrayOutput() GatewayRouteArrayOutput

func (GatewayRouteArrayOutput) ToGatewayRouteArrayOutputWithContext

func (o GatewayRouteArrayOutput) ToGatewayRouteArrayOutputWithContext(ctx context.Context) GatewayRouteArrayOutput

type GatewayRouteInput

type GatewayRouteInput interface {
	pulumi.Input

	ToGatewayRouteOutput() GatewayRouteOutput
	ToGatewayRouteOutputWithContext(ctx context.Context) GatewayRouteOutput
}

type GatewayRouteMap

type GatewayRouteMap map[string]GatewayRouteInput

func (GatewayRouteMap) ElementType

func (GatewayRouteMap) ElementType() reflect.Type

func (GatewayRouteMap) ToGatewayRouteMapOutput

func (i GatewayRouteMap) ToGatewayRouteMapOutput() GatewayRouteMapOutput

func (GatewayRouteMap) ToGatewayRouteMapOutputWithContext

func (i GatewayRouteMap) ToGatewayRouteMapOutputWithContext(ctx context.Context) GatewayRouteMapOutput

type GatewayRouteMapInput

type GatewayRouteMapInput interface {
	pulumi.Input

	ToGatewayRouteMapOutput() GatewayRouteMapOutput
	ToGatewayRouteMapOutputWithContext(context.Context) GatewayRouteMapOutput
}

GatewayRouteMapInput is an input type that accepts GatewayRouteMap and GatewayRouteMapOutput values. You can construct a concrete instance of `GatewayRouteMapInput` via:

GatewayRouteMap{ "key": GatewayRouteArgs{...} }

type GatewayRouteMapOutput

type GatewayRouteMapOutput struct{ *pulumi.OutputState }

func (GatewayRouteMapOutput) ElementType

func (GatewayRouteMapOutput) ElementType() reflect.Type

func (GatewayRouteMapOutput) MapIndex

func (GatewayRouteMapOutput) ToGatewayRouteMapOutput

func (o GatewayRouteMapOutput) ToGatewayRouteMapOutput() GatewayRouteMapOutput

func (GatewayRouteMapOutput) ToGatewayRouteMapOutputWithContext

func (o GatewayRouteMapOutput) ToGatewayRouteMapOutputWithContext(ctx context.Context) GatewayRouteMapOutput

type GatewayRouteOutput

type GatewayRouteOutput struct{ *pulumi.OutputState }

func (GatewayRouteOutput) CreateTime

func (o GatewayRouteOutput) CreateTime() pulumi.StringOutput

Create time.

func (GatewayRouteOutput) DestinationCidrBlock

func (o GatewayRouteOutput) DestinationCidrBlock() pulumi.StringOutput

Destination IDC IP range.

func (GatewayRouteOutput) ElementType

func (GatewayRouteOutput) ElementType() reflect.Type

func (GatewayRouteOutput) InstanceId

func (o GatewayRouteOutput) InstanceId() pulumi.StringOutput

Instance ID of the next hop.

func (GatewayRouteOutput) InstanceType

func (o GatewayRouteOutput) InstanceType() pulumi.StringOutput

Next hop type (type of the associated instance). Valid values: VPNCONN (VPN tunnel) and CCN (CCN instance).

func (GatewayRouteOutput) Priority

func (o GatewayRouteOutput) Priority() pulumi.IntOutput

Priority. Valid values: 0 and 100.

func (GatewayRouteOutput) RouteId

Route ID.

func (GatewayRouteOutput) Status

Status. Valid values: ENABLE and DISABLE.

func (GatewayRouteOutput) ToGatewayRouteOutput

func (o GatewayRouteOutput) ToGatewayRouteOutput() GatewayRouteOutput

func (GatewayRouteOutput) ToGatewayRouteOutputWithContext

func (o GatewayRouteOutput) ToGatewayRouteOutputWithContext(ctx context.Context) GatewayRouteOutput

func (GatewayRouteOutput) Type

Route type. Default value: Static.

func (GatewayRouteOutput) UpdateTime

func (o GatewayRouteOutput) UpdateTime() pulumi.StringOutput

Update time.

func (GatewayRouteOutput) VpnGatewayId

func (o GatewayRouteOutput) VpnGatewayId() pulumi.StringOutput

VPN gateway ID.

type GatewayRouteState

type GatewayRouteState struct {
	// Create time.
	CreateTime pulumi.StringPtrInput
	// Destination IDC IP range.
	DestinationCidrBlock pulumi.StringPtrInput
	// Instance ID of the next hop.
	InstanceId pulumi.StringPtrInput
	// Next hop type (type of the associated instance). Valid values: VPNCONN (VPN tunnel) and CCN (CCN instance).
	InstanceType pulumi.StringPtrInput
	// Priority. Valid values: 0 and 100.
	Priority pulumi.IntPtrInput
	// Route ID.
	RouteId pulumi.StringPtrInput
	// Status. Valid values: ENABLE and DISABLE.
	Status pulumi.StringPtrInput
	// Route type. Default value: Static.
	Type pulumi.StringPtrInput
	// Update time.
	UpdateTime pulumi.StringPtrInput
	// VPN gateway ID.
	VpnGatewayId pulumi.StringPtrInput
}

func (GatewayRouteState) ElementType

func (GatewayRouteState) ElementType() reflect.Type

type GatewayState

type GatewayState struct {
	// The maximum public network output bandwidth of VPN gateway (unit: Mbps), the available values include: 5,10,20,50,100,200,500,1000. Default is 5. When charge type is `PREPAID`, bandwidth degradation operation is unsupported.
	Bandwidth pulumi.IntPtrInput
	// CDC instance ID.
	CdcId pulumi.StringPtrInput
	// Charge Type of the VPN gateway. Valid value: `PREPAID`, `POSTPAID_BY_HOUR`. The default is `POSTPAID_BY_HOUR`.
	ChargeType pulumi.StringPtrInput
	// Create time of the VPN gateway.
	CreateTime pulumi.StringPtrInput
	// Expired time of the VPN gateway when charge type is `PREPAID`.
	ExpiredTime pulumi.StringPtrInput
	// Indicates whether ip address is blocked.
	IsAddressBlocked pulumi.BoolPtrInput
	// Maximum number of connected clients allowed for the SSL VPN gateway. Valid values: [5, 10, 20, 50, 100]. This parameter is only required for SSL VPN gateways.
	MaxConnection pulumi.IntPtrInput
	// Name of the VPN gateway. The length of character is limited to 1-60.
	Name pulumi.StringPtrInput
	// The plan of new purchase. Valid value: `PREPAID_TO_POSTPAID`.
	NewPurchasePlan pulumi.StringPtrInput
	// Period of instance to be prepaid. Valid value: `1`, `2`, `3`, `4`, `6`, `7`, `8`, `9`, `12`, `24`, `36`. The unit is month. Caution: when this para and renewFlag para are valid, the request means to renew several months more pre-paid period. This para can only be set to take effect in create operation.
	PrepaidPeriod pulumi.IntPtrInput
	// Flag indicates whether to renew or not. Valid value: `NOTIFY_AND_RENEW`, `NOTIFY_AND_AUTO_RENEW`, `NOT_NOTIFY_AND_NOT_RENEW`. This para can only be set to take effect in create operation.
	PrepaidRenewFlag pulumi.StringPtrInput
	// Public IP of the VPN gateway.
	PublicIpAddress pulumi.StringPtrInput
	// Restrict state of gateway. Valid value: `PRETECIVELY_ISOLATED`, `NORMAL`.
	RestrictState pulumi.StringPtrInput
	// State of the VPN gateway. Valid value: `PENDING`, `DELETING`, `AVAILABLE`.
	State pulumi.StringPtrInput
	// A list of tags used to associate different resources.
	Tags pulumi.MapInput
	// Type of gateway instance. Valid value: `IPSEC`, `SSL` and `CCN`. Note: CCN type is only for whitelist customer now.
	Type pulumi.StringPtrInput
	// ID of the VPC. Required if vpn gateway is not in `CCN` type, and doesn't make sense for `CCN` vpn gateway.
	VpcId pulumi.StringPtrInput
	// Zone of the VPN gateway.
	Zone pulumi.StringPtrInput
}

func (GatewayState) ElementType

func (GatewayState) ElementType() reflect.Type

type GetConnectionsArgs

type GetConnectionsArgs struct {
	// Customer gateway ID of the VPN connection.
	CustomerGatewayId *string `pulumi:"customerGatewayId"`
	// ID of the VPN connection.
	Id *string `pulumi:"id"`
	// Name of the VPN connection. The length of character is limited to 1-60.
	Name *string `pulumi:"name"`
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Tags of the VPN connection to be queried.
	Tags map[string]interface{} `pulumi:"tags"`
	// ID of the VPC.
	VpcId *string `pulumi:"vpcId"`
	// VPN gateway ID of the VPN connection.
	VpnGatewayId *string `pulumi:"vpnGatewayId"`
}

A collection of arguments for invoking getConnections.

type GetConnectionsConnectionList

type GetConnectionsConnectionList struct {
	// Create time of the VPN connection.
	CreateTime string `pulumi:"createTime"`
	// Customer gateway ID of the VPN connection.
	CustomerGatewayId string `pulumi:"customerGatewayId"`
	// Encrypt proto of the VPN connection.
	EncryptProto string `pulumi:"encryptProto"`
	// ID of the VPN connection.
	Id string `pulumi:"id"`
	// DH group name of the IKE operation specification.
	IkeDhGroupName string `pulumi:"ikeDhGroupName"`
	// Exchange mode of the IKE operation specification.
	IkeExchangeMode string `pulumi:"ikeExchangeMode"`
	// Local address of the IKE operation specification.
	IkeLocalAddress string `pulumi:"ikeLocalAddress"`
	// Local FQDN name of the IKE operation specification.
	IkeLocalFqdnName string `pulumi:"ikeLocalFqdnName"`
	// Local identity of the IKE operation specification.
	IkeLocalIdentity string `pulumi:"ikeLocalIdentity"`
	// Proto authenticate algorithm of the IKE operation specification.
	IkeProtoAuthenAlgorithm string `pulumi:"ikeProtoAuthenAlgorithm"`
	// Proto encrypt algorithm of the IKE operation specification.
	IkeProtoEncryAlgorithm string `pulumi:"ikeProtoEncryAlgorithm"`
	// Remote address of the IKE operation specification.
	IkeRemoteAddress string `pulumi:"ikeRemoteAddress"`
	// Remote FQDN name of the IKE operation specification.
	IkeRemoteFqdnName string `pulumi:"ikeRemoteFqdnName"`
	// Remote identity of the IKE operation specification.
	IkeRemoteIdentity string `pulumi:"ikeRemoteIdentity"`
	// SA lifetime of the IKE operation specification, unit is `second`.
	IkeSaLifetimeSeconds int `pulumi:"ikeSaLifetimeSeconds"`
	// Version of the IKE operation specification.
	IkeVersion string `pulumi:"ikeVersion"`
	// Encrypt algorithm of the IPSEC operation specification.
	IpsecEncryptAlgorithm string `pulumi:"ipsecEncryptAlgorithm"`
	// Integrity algorithm of the IPSEC operation specification.
	IpsecIntegrityAlgorithm string `pulumi:"ipsecIntegrityAlgorithm"`
	// PFS DH group name of the IPSEC operation specification.
	IpsecPfsDhGroup string `pulumi:"ipsecPfsDhGroup"`
	// SA lifetime of the IPSEC operation specification, unit is `second`.
	IpsecSaLifetimeSeconds int `pulumi:"ipsecSaLifetimeSeconds"`
	// SA lifetime traffic of the IPSEC operation specification, unit is `KB`.
	IpsecSaLifetimeTraffic int `pulumi:"ipsecSaLifetimeTraffic"`
	// Name of the VPN connection. The length of character is limited to 1-60.
	Name string `pulumi:"name"`
	// Net status of the VPN connection.
	NetStatus string `pulumi:"netStatus"`
	// Pre-shared key of the VPN connection.
	PreShareKey string `pulumi:"preShareKey"`
	// Route type of the VPN connection.
	RouteType string `pulumi:"routeType"`
	// Security group policy of the VPN connection.
	SecurityGroupPolicies []GetConnectionsConnectionListSecurityGroupPolicy `pulumi:"securityGroupPolicies"`
	// State of the VPN connection.
	State string `pulumi:"state"`
	// Tags of the VPN connection to be queried.
	Tags map[string]interface{} `pulumi:"tags"`
	// ID of the VPC.
	VpcId string `pulumi:"vpcId"`
	// VPN gateway ID of the VPN connection.
	VpnGatewayId string `pulumi:"vpnGatewayId"`
	// Vpn proto of the VPN connection.
	VpnProto string `pulumi:"vpnProto"`
}

type GetConnectionsConnectionListArgs

type GetConnectionsConnectionListArgs struct {
	// Create time of the VPN connection.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// Customer gateway ID of the VPN connection.
	CustomerGatewayId pulumi.StringInput `pulumi:"customerGatewayId"`
	// Encrypt proto of the VPN connection.
	EncryptProto pulumi.StringInput `pulumi:"encryptProto"`
	// ID of the VPN connection.
	Id pulumi.StringInput `pulumi:"id"`
	// DH group name of the IKE operation specification.
	IkeDhGroupName pulumi.StringInput `pulumi:"ikeDhGroupName"`
	// Exchange mode of the IKE operation specification.
	IkeExchangeMode pulumi.StringInput `pulumi:"ikeExchangeMode"`
	// Local address of the IKE operation specification.
	IkeLocalAddress pulumi.StringInput `pulumi:"ikeLocalAddress"`
	// Local FQDN name of the IKE operation specification.
	IkeLocalFqdnName pulumi.StringInput `pulumi:"ikeLocalFqdnName"`
	// Local identity of the IKE operation specification.
	IkeLocalIdentity pulumi.StringInput `pulumi:"ikeLocalIdentity"`
	// Proto authenticate algorithm of the IKE operation specification.
	IkeProtoAuthenAlgorithm pulumi.StringInput `pulumi:"ikeProtoAuthenAlgorithm"`
	// Proto encrypt algorithm of the IKE operation specification.
	IkeProtoEncryAlgorithm pulumi.StringInput `pulumi:"ikeProtoEncryAlgorithm"`
	// Remote address of the IKE operation specification.
	IkeRemoteAddress pulumi.StringInput `pulumi:"ikeRemoteAddress"`
	// Remote FQDN name of the IKE operation specification.
	IkeRemoteFqdnName pulumi.StringInput `pulumi:"ikeRemoteFqdnName"`
	// Remote identity of the IKE operation specification.
	IkeRemoteIdentity pulumi.StringInput `pulumi:"ikeRemoteIdentity"`
	// SA lifetime of the IKE operation specification, unit is `second`.
	IkeSaLifetimeSeconds pulumi.IntInput `pulumi:"ikeSaLifetimeSeconds"`
	// Version of the IKE operation specification.
	IkeVersion pulumi.StringInput `pulumi:"ikeVersion"`
	// Encrypt algorithm of the IPSEC operation specification.
	IpsecEncryptAlgorithm pulumi.StringInput `pulumi:"ipsecEncryptAlgorithm"`
	// Integrity algorithm of the IPSEC operation specification.
	IpsecIntegrityAlgorithm pulumi.StringInput `pulumi:"ipsecIntegrityAlgorithm"`
	// PFS DH group name of the IPSEC operation specification.
	IpsecPfsDhGroup pulumi.StringInput `pulumi:"ipsecPfsDhGroup"`
	// SA lifetime of the IPSEC operation specification, unit is `second`.
	IpsecSaLifetimeSeconds pulumi.IntInput `pulumi:"ipsecSaLifetimeSeconds"`
	// SA lifetime traffic of the IPSEC operation specification, unit is `KB`.
	IpsecSaLifetimeTraffic pulumi.IntInput `pulumi:"ipsecSaLifetimeTraffic"`
	// Name of the VPN connection. The length of character is limited to 1-60.
	Name pulumi.StringInput `pulumi:"name"`
	// Net status of the VPN connection.
	NetStatus pulumi.StringInput `pulumi:"netStatus"`
	// Pre-shared key of the VPN connection.
	PreShareKey pulumi.StringInput `pulumi:"preShareKey"`
	// Route type of the VPN connection.
	RouteType pulumi.StringInput `pulumi:"routeType"`
	// Security group policy of the VPN connection.
	SecurityGroupPolicies GetConnectionsConnectionListSecurityGroupPolicyArrayInput `pulumi:"securityGroupPolicies"`
	// State of the VPN connection.
	State pulumi.StringInput `pulumi:"state"`
	// Tags of the VPN connection to be queried.
	Tags pulumi.MapInput `pulumi:"tags"`
	// ID of the VPC.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// VPN gateway ID of the VPN connection.
	VpnGatewayId pulumi.StringInput `pulumi:"vpnGatewayId"`
	// Vpn proto of the VPN connection.
	VpnProto pulumi.StringInput `pulumi:"vpnProto"`
}

func (GetConnectionsConnectionListArgs) ElementType

func (GetConnectionsConnectionListArgs) ToGetConnectionsConnectionListOutput

func (i GetConnectionsConnectionListArgs) ToGetConnectionsConnectionListOutput() GetConnectionsConnectionListOutput

func (GetConnectionsConnectionListArgs) ToGetConnectionsConnectionListOutputWithContext

func (i GetConnectionsConnectionListArgs) ToGetConnectionsConnectionListOutputWithContext(ctx context.Context) GetConnectionsConnectionListOutput

type GetConnectionsConnectionListArray

type GetConnectionsConnectionListArray []GetConnectionsConnectionListInput

func (GetConnectionsConnectionListArray) ElementType

func (GetConnectionsConnectionListArray) ToGetConnectionsConnectionListArrayOutput

func (i GetConnectionsConnectionListArray) ToGetConnectionsConnectionListArrayOutput() GetConnectionsConnectionListArrayOutput

func (GetConnectionsConnectionListArray) ToGetConnectionsConnectionListArrayOutputWithContext

func (i GetConnectionsConnectionListArray) ToGetConnectionsConnectionListArrayOutputWithContext(ctx context.Context) GetConnectionsConnectionListArrayOutput

type GetConnectionsConnectionListArrayInput

type GetConnectionsConnectionListArrayInput interface {
	pulumi.Input

	ToGetConnectionsConnectionListArrayOutput() GetConnectionsConnectionListArrayOutput
	ToGetConnectionsConnectionListArrayOutputWithContext(context.Context) GetConnectionsConnectionListArrayOutput
}

GetConnectionsConnectionListArrayInput is an input type that accepts GetConnectionsConnectionListArray and GetConnectionsConnectionListArrayOutput values. You can construct a concrete instance of `GetConnectionsConnectionListArrayInput` via:

GetConnectionsConnectionListArray{ GetConnectionsConnectionListArgs{...} }

type GetConnectionsConnectionListArrayOutput

type GetConnectionsConnectionListArrayOutput struct{ *pulumi.OutputState }

func (GetConnectionsConnectionListArrayOutput) ElementType

func (GetConnectionsConnectionListArrayOutput) Index

func (GetConnectionsConnectionListArrayOutput) ToGetConnectionsConnectionListArrayOutput

func (o GetConnectionsConnectionListArrayOutput) ToGetConnectionsConnectionListArrayOutput() GetConnectionsConnectionListArrayOutput

func (GetConnectionsConnectionListArrayOutput) ToGetConnectionsConnectionListArrayOutputWithContext

func (o GetConnectionsConnectionListArrayOutput) ToGetConnectionsConnectionListArrayOutputWithContext(ctx context.Context) GetConnectionsConnectionListArrayOutput

type GetConnectionsConnectionListInput

type GetConnectionsConnectionListInput interface {
	pulumi.Input

	ToGetConnectionsConnectionListOutput() GetConnectionsConnectionListOutput
	ToGetConnectionsConnectionListOutputWithContext(context.Context) GetConnectionsConnectionListOutput
}

GetConnectionsConnectionListInput is an input type that accepts GetConnectionsConnectionListArgs and GetConnectionsConnectionListOutput values. You can construct a concrete instance of `GetConnectionsConnectionListInput` via:

GetConnectionsConnectionListArgs{...}

type GetConnectionsConnectionListOutput

type GetConnectionsConnectionListOutput struct{ *pulumi.OutputState }

func (GetConnectionsConnectionListOutput) CreateTime

Create time of the VPN connection.

func (GetConnectionsConnectionListOutput) CustomerGatewayId

Customer gateway ID of the VPN connection.

func (GetConnectionsConnectionListOutput) ElementType

func (GetConnectionsConnectionListOutput) EncryptProto

Encrypt proto of the VPN connection.

func (GetConnectionsConnectionListOutput) Id

ID of the VPN connection.

func (GetConnectionsConnectionListOutput) IkeDhGroupName

DH group name of the IKE operation specification.

func (GetConnectionsConnectionListOutput) IkeExchangeMode

Exchange mode of the IKE operation specification.

func (GetConnectionsConnectionListOutput) IkeLocalAddress

Local address of the IKE operation specification.

func (GetConnectionsConnectionListOutput) IkeLocalFqdnName

Local FQDN name of the IKE operation specification.

func (GetConnectionsConnectionListOutput) IkeLocalIdentity

Local identity of the IKE operation specification.

func (GetConnectionsConnectionListOutput) IkeProtoAuthenAlgorithm

func (o GetConnectionsConnectionListOutput) IkeProtoAuthenAlgorithm() pulumi.StringOutput

Proto authenticate algorithm of the IKE operation specification.

func (GetConnectionsConnectionListOutput) IkeProtoEncryAlgorithm

func (o GetConnectionsConnectionListOutput) IkeProtoEncryAlgorithm() pulumi.StringOutput

Proto encrypt algorithm of the IKE operation specification.

func (GetConnectionsConnectionListOutput) IkeRemoteAddress

Remote address of the IKE operation specification.

func (GetConnectionsConnectionListOutput) IkeRemoteFqdnName

Remote FQDN name of the IKE operation specification.

func (GetConnectionsConnectionListOutput) IkeRemoteIdentity

Remote identity of the IKE operation specification.

func (GetConnectionsConnectionListOutput) IkeSaLifetimeSeconds

func (o GetConnectionsConnectionListOutput) IkeSaLifetimeSeconds() pulumi.IntOutput

SA lifetime of the IKE operation specification, unit is `second`.

func (GetConnectionsConnectionListOutput) IkeVersion

Version of the IKE operation specification.

func (GetConnectionsConnectionListOutput) IpsecEncryptAlgorithm

func (o GetConnectionsConnectionListOutput) IpsecEncryptAlgorithm() pulumi.StringOutput

Encrypt algorithm of the IPSEC operation specification.

func (GetConnectionsConnectionListOutput) IpsecIntegrityAlgorithm

func (o GetConnectionsConnectionListOutput) IpsecIntegrityAlgorithm() pulumi.StringOutput

Integrity algorithm of the IPSEC operation specification.

func (GetConnectionsConnectionListOutput) IpsecPfsDhGroup

PFS DH group name of the IPSEC operation specification.

func (GetConnectionsConnectionListOutput) IpsecSaLifetimeSeconds

func (o GetConnectionsConnectionListOutput) IpsecSaLifetimeSeconds() pulumi.IntOutput

SA lifetime of the IPSEC operation specification, unit is `second`.

func (GetConnectionsConnectionListOutput) IpsecSaLifetimeTraffic

func (o GetConnectionsConnectionListOutput) IpsecSaLifetimeTraffic() pulumi.IntOutput

SA lifetime traffic of the IPSEC operation specification, unit is `KB`.

func (GetConnectionsConnectionListOutput) Name

Name of the VPN connection. The length of character is limited to 1-60.

func (GetConnectionsConnectionListOutput) NetStatus

Net status of the VPN connection.

func (GetConnectionsConnectionListOutput) PreShareKey

Pre-shared key of the VPN connection.

func (GetConnectionsConnectionListOutput) RouteType

Route type of the VPN connection.

func (GetConnectionsConnectionListOutput) SecurityGroupPolicies

Security group policy of the VPN connection.

func (GetConnectionsConnectionListOutput) State

State of the VPN connection.

func (GetConnectionsConnectionListOutput) Tags

Tags of the VPN connection to be queried.

func (GetConnectionsConnectionListOutput) ToGetConnectionsConnectionListOutput

func (o GetConnectionsConnectionListOutput) ToGetConnectionsConnectionListOutput() GetConnectionsConnectionListOutput

func (GetConnectionsConnectionListOutput) ToGetConnectionsConnectionListOutputWithContext

func (o GetConnectionsConnectionListOutput) ToGetConnectionsConnectionListOutputWithContext(ctx context.Context) GetConnectionsConnectionListOutput

func (GetConnectionsConnectionListOutput) VpcId

ID of the VPC.

func (GetConnectionsConnectionListOutput) VpnGatewayId

VPN gateway ID of the VPN connection.

func (GetConnectionsConnectionListOutput) VpnProto

Vpn proto of the VPN connection.

type GetConnectionsConnectionListSecurityGroupPolicy

type GetConnectionsConnectionListSecurityGroupPolicy struct {
	// Local cidr block.
	LocalCidrBlock string `pulumi:"localCidrBlock"`
	// Remote cidr block list.
	RemoteCidrBlocks []string `pulumi:"remoteCidrBlocks"`
}

type GetConnectionsConnectionListSecurityGroupPolicyArgs

type GetConnectionsConnectionListSecurityGroupPolicyArgs struct {
	// Local cidr block.
	LocalCidrBlock pulumi.StringInput `pulumi:"localCidrBlock"`
	// Remote cidr block list.
	RemoteCidrBlocks pulumi.StringArrayInput `pulumi:"remoteCidrBlocks"`
}

func (GetConnectionsConnectionListSecurityGroupPolicyArgs) ElementType

func (GetConnectionsConnectionListSecurityGroupPolicyArgs) ToGetConnectionsConnectionListSecurityGroupPolicyOutput

func (i GetConnectionsConnectionListSecurityGroupPolicyArgs) ToGetConnectionsConnectionListSecurityGroupPolicyOutput() GetConnectionsConnectionListSecurityGroupPolicyOutput

func (GetConnectionsConnectionListSecurityGroupPolicyArgs) ToGetConnectionsConnectionListSecurityGroupPolicyOutputWithContext

func (i GetConnectionsConnectionListSecurityGroupPolicyArgs) ToGetConnectionsConnectionListSecurityGroupPolicyOutputWithContext(ctx context.Context) GetConnectionsConnectionListSecurityGroupPolicyOutput

type GetConnectionsConnectionListSecurityGroupPolicyArray

type GetConnectionsConnectionListSecurityGroupPolicyArray []GetConnectionsConnectionListSecurityGroupPolicyInput

func (GetConnectionsConnectionListSecurityGroupPolicyArray) ElementType

func (GetConnectionsConnectionListSecurityGroupPolicyArray) ToGetConnectionsConnectionListSecurityGroupPolicyArrayOutput

func (i GetConnectionsConnectionListSecurityGroupPolicyArray) ToGetConnectionsConnectionListSecurityGroupPolicyArrayOutput() GetConnectionsConnectionListSecurityGroupPolicyArrayOutput

func (GetConnectionsConnectionListSecurityGroupPolicyArray) ToGetConnectionsConnectionListSecurityGroupPolicyArrayOutputWithContext

func (i GetConnectionsConnectionListSecurityGroupPolicyArray) ToGetConnectionsConnectionListSecurityGroupPolicyArrayOutputWithContext(ctx context.Context) GetConnectionsConnectionListSecurityGroupPolicyArrayOutput

type GetConnectionsConnectionListSecurityGroupPolicyArrayInput

type GetConnectionsConnectionListSecurityGroupPolicyArrayInput interface {
	pulumi.Input

	ToGetConnectionsConnectionListSecurityGroupPolicyArrayOutput() GetConnectionsConnectionListSecurityGroupPolicyArrayOutput
	ToGetConnectionsConnectionListSecurityGroupPolicyArrayOutputWithContext(context.Context) GetConnectionsConnectionListSecurityGroupPolicyArrayOutput
}

GetConnectionsConnectionListSecurityGroupPolicyArrayInput is an input type that accepts GetConnectionsConnectionListSecurityGroupPolicyArray and GetConnectionsConnectionListSecurityGroupPolicyArrayOutput values. You can construct a concrete instance of `GetConnectionsConnectionListSecurityGroupPolicyArrayInput` via:

GetConnectionsConnectionListSecurityGroupPolicyArray{ GetConnectionsConnectionListSecurityGroupPolicyArgs{...} }

type GetConnectionsConnectionListSecurityGroupPolicyArrayOutput

type GetConnectionsConnectionListSecurityGroupPolicyArrayOutput struct{ *pulumi.OutputState }

func (GetConnectionsConnectionListSecurityGroupPolicyArrayOutput) ElementType

func (GetConnectionsConnectionListSecurityGroupPolicyArrayOutput) Index

func (GetConnectionsConnectionListSecurityGroupPolicyArrayOutput) ToGetConnectionsConnectionListSecurityGroupPolicyArrayOutput

func (GetConnectionsConnectionListSecurityGroupPolicyArrayOutput) ToGetConnectionsConnectionListSecurityGroupPolicyArrayOutputWithContext

func (o GetConnectionsConnectionListSecurityGroupPolicyArrayOutput) ToGetConnectionsConnectionListSecurityGroupPolicyArrayOutputWithContext(ctx context.Context) GetConnectionsConnectionListSecurityGroupPolicyArrayOutput

type GetConnectionsConnectionListSecurityGroupPolicyInput

type GetConnectionsConnectionListSecurityGroupPolicyInput interface {
	pulumi.Input

	ToGetConnectionsConnectionListSecurityGroupPolicyOutput() GetConnectionsConnectionListSecurityGroupPolicyOutput
	ToGetConnectionsConnectionListSecurityGroupPolicyOutputWithContext(context.Context) GetConnectionsConnectionListSecurityGroupPolicyOutput
}

GetConnectionsConnectionListSecurityGroupPolicyInput is an input type that accepts GetConnectionsConnectionListSecurityGroupPolicyArgs and GetConnectionsConnectionListSecurityGroupPolicyOutput values. You can construct a concrete instance of `GetConnectionsConnectionListSecurityGroupPolicyInput` via:

GetConnectionsConnectionListSecurityGroupPolicyArgs{...}

type GetConnectionsConnectionListSecurityGroupPolicyOutput

type GetConnectionsConnectionListSecurityGroupPolicyOutput struct{ *pulumi.OutputState }

func (GetConnectionsConnectionListSecurityGroupPolicyOutput) ElementType

func (GetConnectionsConnectionListSecurityGroupPolicyOutput) LocalCidrBlock

Local cidr block.

func (GetConnectionsConnectionListSecurityGroupPolicyOutput) RemoteCidrBlocks

Remote cidr block list.

func (GetConnectionsConnectionListSecurityGroupPolicyOutput) ToGetConnectionsConnectionListSecurityGroupPolicyOutput

func (GetConnectionsConnectionListSecurityGroupPolicyOutput) ToGetConnectionsConnectionListSecurityGroupPolicyOutputWithContext

func (o GetConnectionsConnectionListSecurityGroupPolicyOutput) ToGetConnectionsConnectionListSecurityGroupPolicyOutputWithContext(ctx context.Context) GetConnectionsConnectionListSecurityGroupPolicyOutput

type GetConnectionsOutputArgs

type GetConnectionsOutputArgs struct {
	// Customer gateway ID of the VPN connection.
	CustomerGatewayId pulumi.StringPtrInput `pulumi:"customerGatewayId"`
	// ID of the VPN connection.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// Name of the VPN connection. The length of character is limited to 1-60.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
	// Tags of the VPN connection to be queried.
	Tags pulumi.MapInput `pulumi:"tags"`
	// ID of the VPC.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// VPN gateway ID of the VPN connection.
	VpnGatewayId pulumi.StringPtrInput `pulumi:"vpnGatewayId"`
}

A collection of arguments for invoking getConnections.

func (GetConnectionsOutputArgs) ElementType

func (GetConnectionsOutputArgs) ElementType() reflect.Type

type GetConnectionsResult

type GetConnectionsResult struct {
	// Information list of the dedicated connections.
	ConnectionLists []GetConnectionsConnectionList `pulumi:"connectionLists"`
	// ID of the customer gateway.
	CustomerGatewayId *string `pulumi:"customerGatewayId"`
	// ID of the VPN connection.
	Id *string `pulumi:"id"`
	// Name of the VPN connection.
	Name             *string `pulumi:"name"`
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// A list of tags used to associate different resources.
	Tags map[string]interface{} `pulumi:"tags"`
	// ID of the VPC.
	VpcId *string `pulumi:"vpcId"`
	// ID of the VPN gateway.
	VpnGatewayId *string `pulumi:"vpnGatewayId"`
}

A collection of values returned by getConnections.

func GetConnections

func GetConnections(ctx *pulumi.Context, args *GetConnectionsArgs, opts ...pulumi.InvokeOption) (*GetConnectionsResult, error)

Use this data source to query detailed information of VPN connections.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Vpn.GetConnections(ctx, &vpn.GetConnectionsArgs{
			CustomerGatewayId: pulumi.StringRef(""),
			Id:                pulumi.StringRef("vpnx-xfqag"),
			Name:              pulumi.StringRef("main"),
			Tags: map[string]interface{}{
				"test": "tf",
			},
			VpcId:        pulumi.StringRef("cgw-xfqag"),
			VpnGatewayId: pulumi.StringRef("vpngw-8ccsnclt"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetConnectionsResultOutput

type GetConnectionsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getConnections.

func (GetConnectionsResultOutput) ConnectionLists

Information list of the dedicated connections.

func (GetConnectionsResultOutput) CustomerGatewayId

func (o GetConnectionsResultOutput) CustomerGatewayId() pulumi.StringPtrOutput

ID of the customer gateway.

func (GetConnectionsResultOutput) ElementType

func (GetConnectionsResultOutput) ElementType() reflect.Type

func (GetConnectionsResultOutput) Id

ID of the VPN connection.

func (GetConnectionsResultOutput) Name

Name of the VPN connection.

func (GetConnectionsResultOutput) ResultOutputFile

func (o GetConnectionsResultOutput) ResultOutputFile() pulumi.StringPtrOutput

func (GetConnectionsResultOutput) Tags

A list of tags used to associate different resources.

func (GetConnectionsResultOutput) ToGetConnectionsResultOutput

func (o GetConnectionsResultOutput) ToGetConnectionsResultOutput() GetConnectionsResultOutput

func (GetConnectionsResultOutput) ToGetConnectionsResultOutputWithContext

func (o GetConnectionsResultOutput) ToGetConnectionsResultOutputWithContext(ctx context.Context) GetConnectionsResultOutput

func (GetConnectionsResultOutput) VpcId

ID of the VPC.

func (GetConnectionsResultOutput) VpnGatewayId

ID of the VPN gateway.

type GetCustomerGatewaysArgs

type GetCustomerGatewaysArgs struct {
	// ID of the VPN customer gateway.
	Id *string `pulumi:"id"`
	// Name of the customer gateway. The length of character is limited to 1-60.
	Name *string `pulumi:"name"`
	// Public ip address of the VPN customer gateway.
	PublicIpAddress *string `pulumi:"publicIpAddress"`
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Tags of the VPN customer gateway to be queried.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getCustomerGateways.

type GetCustomerGatewaysGatewayList

type GetCustomerGatewaysGatewayList struct {
	// Create time of the VPN customer gateway.
	CreateTime string `pulumi:"createTime"`
	// ID of the VPN customer gateway.
	Id string `pulumi:"id"`
	// Name of the customer gateway. The length of character is limited to 1-60.
	Name string `pulumi:"name"`
	// Public ip address of the VPN customer gateway.
	PublicIpAddress string `pulumi:"publicIpAddress"`
	// Tags of the VPN customer gateway to be queried.
	Tags map[string]interface{} `pulumi:"tags"`
}

type GetCustomerGatewaysGatewayListArgs

type GetCustomerGatewaysGatewayListArgs struct {
	// Create time of the VPN customer gateway.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// ID of the VPN customer gateway.
	Id pulumi.StringInput `pulumi:"id"`
	// Name of the customer gateway. The length of character is limited to 1-60.
	Name pulumi.StringInput `pulumi:"name"`
	// Public ip address of the VPN customer gateway.
	PublicIpAddress pulumi.StringInput `pulumi:"publicIpAddress"`
	// Tags of the VPN customer gateway to be queried.
	Tags pulumi.MapInput `pulumi:"tags"`
}

func (GetCustomerGatewaysGatewayListArgs) ElementType

func (GetCustomerGatewaysGatewayListArgs) ToGetCustomerGatewaysGatewayListOutput

func (i GetCustomerGatewaysGatewayListArgs) ToGetCustomerGatewaysGatewayListOutput() GetCustomerGatewaysGatewayListOutput

func (GetCustomerGatewaysGatewayListArgs) ToGetCustomerGatewaysGatewayListOutputWithContext

func (i GetCustomerGatewaysGatewayListArgs) ToGetCustomerGatewaysGatewayListOutputWithContext(ctx context.Context) GetCustomerGatewaysGatewayListOutput

type GetCustomerGatewaysGatewayListArray

type GetCustomerGatewaysGatewayListArray []GetCustomerGatewaysGatewayListInput

func (GetCustomerGatewaysGatewayListArray) ElementType

func (GetCustomerGatewaysGatewayListArray) ToGetCustomerGatewaysGatewayListArrayOutput

func (i GetCustomerGatewaysGatewayListArray) ToGetCustomerGatewaysGatewayListArrayOutput() GetCustomerGatewaysGatewayListArrayOutput

func (GetCustomerGatewaysGatewayListArray) ToGetCustomerGatewaysGatewayListArrayOutputWithContext

func (i GetCustomerGatewaysGatewayListArray) ToGetCustomerGatewaysGatewayListArrayOutputWithContext(ctx context.Context) GetCustomerGatewaysGatewayListArrayOutput

type GetCustomerGatewaysGatewayListArrayInput

type GetCustomerGatewaysGatewayListArrayInput interface {
	pulumi.Input

	ToGetCustomerGatewaysGatewayListArrayOutput() GetCustomerGatewaysGatewayListArrayOutput
	ToGetCustomerGatewaysGatewayListArrayOutputWithContext(context.Context) GetCustomerGatewaysGatewayListArrayOutput
}

GetCustomerGatewaysGatewayListArrayInput is an input type that accepts GetCustomerGatewaysGatewayListArray and GetCustomerGatewaysGatewayListArrayOutput values. You can construct a concrete instance of `GetCustomerGatewaysGatewayListArrayInput` via:

GetCustomerGatewaysGatewayListArray{ GetCustomerGatewaysGatewayListArgs{...} }

type GetCustomerGatewaysGatewayListArrayOutput

type GetCustomerGatewaysGatewayListArrayOutput struct{ *pulumi.OutputState }

func (GetCustomerGatewaysGatewayListArrayOutput) ElementType

func (GetCustomerGatewaysGatewayListArrayOutput) Index

func (GetCustomerGatewaysGatewayListArrayOutput) ToGetCustomerGatewaysGatewayListArrayOutput

func (o GetCustomerGatewaysGatewayListArrayOutput) ToGetCustomerGatewaysGatewayListArrayOutput() GetCustomerGatewaysGatewayListArrayOutput

func (GetCustomerGatewaysGatewayListArrayOutput) ToGetCustomerGatewaysGatewayListArrayOutputWithContext

func (o GetCustomerGatewaysGatewayListArrayOutput) ToGetCustomerGatewaysGatewayListArrayOutputWithContext(ctx context.Context) GetCustomerGatewaysGatewayListArrayOutput

type GetCustomerGatewaysGatewayListInput

type GetCustomerGatewaysGatewayListInput interface {
	pulumi.Input

	ToGetCustomerGatewaysGatewayListOutput() GetCustomerGatewaysGatewayListOutput
	ToGetCustomerGatewaysGatewayListOutputWithContext(context.Context) GetCustomerGatewaysGatewayListOutput
}

GetCustomerGatewaysGatewayListInput is an input type that accepts GetCustomerGatewaysGatewayListArgs and GetCustomerGatewaysGatewayListOutput values. You can construct a concrete instance of `GetCustomerGatewaysGatewayListInput` via:

GetCustomerGatewaysGatewayListArgs{...}

type GetCustomerGatewaysGatewayListOutput

type GetCustomerGatewaysGatewayListOutput struct{ *pulumi.OutputState }

func (GetCustomerGatewaysGatewayListOutput) CreateTime

Create time of the VPN customer gateway.

func (GetCustomerGatewaysGatewayListOutput) ElementType

func (GetCustomerGatewaysGatewayListOutput) Id

ID of the VPN customer gateway.

func (GetCustomerGatewaysGatewayListOutput) Name

Name of the customer gateway. The length of character is limited to 1-60.

func (GetCustomerGatewaysGatewayListOutput) PublicIpAddress

Public ip address of the VPN customer gateway.

func (GetCustomerGatewaysGatewayListOutput) Tags

Tags of the VPN customer gateway to be queried.

func (GetCustomerGatewaysGatewayListOutput) ToGetCustomerGatewaysGatewayListOutput

func (o GetCustomerGatewaysGatewayListOutput) ToGetCustomerGatewaysGatewayListOutput() GetCustomerGatewaysGatewayListOutput

func (GetCustomerGatewaysGatewayListOutput) ToGetCustomerGatewaysGatewayListOutputWithContext

func (o GetCustomerGatewaysGatewayListOutput) ToGetCustomerGatewaysGatewayListOutputWithContext(ctx context.Context) GetCustomerGatewaysGatewayListOutput

type GetCustomerGatewaysOutputArgs

type GetCustomerGatewaysOutputArgs struct {
	// ID of the VPN customer gateway.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// Name of the customer gateway. The length of character is limited to 1-60.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Public ip address of the VPN customer gateway.
	PublicIpAddress pulumi.StringPtrInput `pulumi:"publicIpAddress"`
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
	// Tags of the VPN customer gateway to be queried.
	Tags pulumi.MapInput `pulumi:"tags"`
}

A collection of arguments for invoking getCustomerGateways.

func (GetCustomerGatewaysOutputArgs) ElementType

type GetCustomerGatewaysResult

type GetCustomerGatewaysResult struct {
	// Information list of the dedicated gateways.
	GatewayLists []GetCustomerGatewaysGatewayList `pulumi:"gatewayLists"`
	// ID of the VPN customer gateway.
	Id *string `pulumi:"id"`
	// Name of the VPN customer gateway.
	Name *string `pulumi:"name"`
	// Public ip address of the VPN customer gateway.
	PublicIpAddress  *string `pulumi:"publicIpAddress"`
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Tags of the VPN customer gateway.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of values returned by getCustomerGateways.

func GetCustomerGateways

func GetCustomerGateways(ctx *pulumi.Context, args *GetCustomerGatewaysArgs, opts ...pulumi.InvokeOption) (*GetCustomerGatewaysResult, error)

Use this data source to query detailed information of VPN customer gateways.

type GetCustomerGatewaysResultOutput

type GetCustomerGatewaysResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCustomerGateways.

func (GetCustomerGatewaysResultOutput) ElementType

func (GetCustomerGatewaysResultOutput) GatewayLists

Information list of the dedicated gateways.

func (GetCustomerGatewaysResultOutput) Id

ID of the VPN customer gateway.

func (GetCustomerGatewaysResultOutput) Name

Name of the VPN customer gateway.

func (GetCustomerGatewaysResultOutput) PublicIpAddress

Public ip address of the VPN customer gateway.

func (GetCustomerGatewaysResultOutput) ResultOutputFile

func (GetCustomerGatewaysResultOutput) Tags

Tags of the VPN customer gateway.

func (GetCustomerGatewaysResultOutput) ToGetCustomerGatewaysResultOutput

func (o GetCustomerGatewaysResultOutput) ToGetCustomerGatewaysResultOutput() GetCustomerGatewaysResultOutput

func (GetCustomerGatewaysResultOutput) ToGetCustomerGatewaysResultOutputWithContext

func (o GetCustomerGatewaysResultOutput) ToGetCustomerGatewaysResultOutputWithContext(ctx context.Context) GetCustomerGatewaysResultOutput

type GetGatewayRoutesArgs

type GetGatewayRoutesArgs struct {
	// Destination IDC IP range.
	DestinationCidr *string `pulumi:"destinationCidr"`
	// Instance ID of the next hop.
	InstanceId *string `pulumi:"instanceId"`
	// Next hop type (type of the associated instance). Valid values: VPNCONN (VPN tunnel) and CCN (CCN instance).
	InstanceType *string `pulumi:"instanceType"`
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// VPN gateway ID.
	VpnGatewayId string `pulumi:"vpnGatewayId"`
}

A collection of arguments for invoking getGatewayRoutes.

type GetGatewayRoutesOutputArgs

type GetGatewayRoutesOutputArgs struct {
	// Destination IDC IP range.
	DestinationCidr pulumi.StringPtrInput `pulumi:"destinationCidr"`
	// Instance ID of the next hop.
	InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
	// Next hop type (type of the associated instance). Valid values: VPNCONN (VPN tunnel) and CCN (CCN instance).
	InstanceType pulumi.StringPtrInput `pulumi:"instanceType"`
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
	// VPN gateway ID.
	VpnGatewayId pulumi.StringInput `pulumi:"vpnGatewayId"`
}

A collection of arguments for invoking getGatewayRoutes.

func (GetGatewayRoutesOutputArgs) ElementType

func (GetGatewayRoutesOutputArgs) ElementType() reflect.Type

type GetGatewayRoutesResult

type GetGatewayRoutesResult struct {
	DestinationCidr *string `pulumi:"destinationCidr"`
	// The provider-assigned unique ID for this managed resource.
	Id               string  `pulumi:"id"`
	InstanceId       *string `pulumi:"instanceId"`
	InstanceType     *string `pulumi:"instanceType"`
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	VpnGatewayId     string  `pulumi:"vpnGatewayId"`
	// Information list of the vpn gateway routes.
	VpnGatewayRouteLists []GetGatewayRoutesVpnGatewayRouteList `pulumi:"vpnGatewayRouteLists"`
}

A collection of values returned by getGatewayRoutes.

func GetGatewayRoutes

func GetGatewayRoutes(ctx *pulumi.Context, args *GetGatewayRoutesArgs, opts ...pulumi.InvokeOption) (*GetGatewayRoutesResult, error)

Use this data source to query detailed information of VPN gateways.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Vpn.GetGateways(ctx, &vpn.GetGatewaysArgs{
			DestinationCidrBlock: "vpngw-8ccsnclt",
			InstanceId:           "ap-guangzhou-3",
			InstanceType:         "1.1.1.1",
			Tags: map[string]interface{}{
				"test": "tf",
			},
			VpnGatewayId: "main",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetGatewayRoutesResultOutput

type GetGatewayRoutesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getGatewayRoutes.

func (GetGatewayRoutesResultOutput) DestinationCidr

func (GetGatewayRoutesResultOutput) ElementType

func (GetGatewayRoutesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetGatewayRoutesResultOutput) InstanceId

func (GetGatewayRoutesResultOutput) InstanceType

func (GetGatewayRoutesResultOutput) ResultOutputFile

func (GetGatewayRoutesResultOutput) ToGetGatewayRoutesResultOutput

func (o GetGatewayRoutesResultOutput) ToGetGatewayRoutesResultOutput() GetGatewayRoutesResultOutput

func (GetGatewayRoutesResultOutput) ToGetGatewayRoutesResultOutputWithContext

func (o GetGatewayRoutesResultOutput) ToGetGatewayRoutesResultOutputWithContext(ctx context.Context) GetGatewayRoutesResultOutput

func (GetGatewayRoutesResultOutput) VpnGatewayId

func (GetGatewayRoutesResultOutput) VpnGatewayRouteLists

Information list of the vpn gateway routes.

type GetGatewayRoutesVpnGatewayRouteList

type GetGatewayRoutesVpnGatewayRouteList struct {
	// Create time.
	CreateTime           string `pulumi:"createTime"`
	DestinationCidrBlock string `pulumi:"destinationCidrBlock"`
	// Instance ID of the next hop.
	InstanceId string `pulumi:"instanceId"`
	// Next hop type (type of the associated instance). Valid values: VPNCONN (VPN tunnel) and CCN (CCN instance).
	InstanceType string `pulumi:"instanceType"`
	Priority     int    `pulumi:"priority"`
	// Route ID.
	RouteId string `pulumi:"routeId"`
	Status  string `pulumi:"status"`
	// Route type. Default value: Static.
	Type string `pulumi:"type"`
	// Update time.
	UpdateTime string `pulumi:"updateTime"`
	// VPN gateway ID.
	VpnGatewayId string `pulumi:"vpnGatewayId"`
}

type GetGatewayRoutesVpnGatewayRouteListArgs

type GetGatewayRoutesVpnGatewayRouteListArgs struct {
	// Create time.
	CreateTime           pulumi.StringInput `pulumi:"createTime"`
	DestinationCidrBlock pulumi.StringInput `pulumi:"destinationCidrBlock"`
	// Instance ID of the next hop.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// Next hop type (type of the associated instance). Valid values: VPNCONN (VPN tunnel) and CCN (CCN instance).
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	Priority     pulumi.IntInput    `pulumi:"priority"`
	// Route ID.
	RouteId pulumi.StringInput `pulumi:"routeId"`
	Status  pulumi.StringInput `pulumi:"status"`
	// Route type. Default value: Static.
	Type pulumi.StringInput `pulumi:"type"`
	// Update time.
	UpdateTime pulumi.StringInput `pulumi:"updateTime"`
	// VPN gateway ID.
	VpnGatewayId pulumi.StringInput `pulumi:"vpnGatewayId"`
}

func (GetGatewayRoutesVpnGatewayRouteListArgs) ElementType

func (GetGatewayRoutesVpnGatewayRouteListArgs) ToGetGatewayRoutesVpnGatewayRouteListOutput

func (i GetGatewayRoutesVpnGatewayRouteListArgs) ToGetGatewayRoutesVpnGatewayRouteListOutput() GetGatewayRoutesVpnGatewayRouteListOutput

func (GetGatewayRoutesVpnGatewayRouteListArgs) ToGetGatewayRoutesVpnGatewayRouteListOutputWithContext

func (i GetGatewayRoutesVpnGatewayRouteListArgs) ToGetGatewayRoutesVpnGatewayRouteListOutputWithContext(ctx context.Context) GetGatewayRoutesVpnGatewayRouteListOutput

type GetGatewayRoutesVpnGatewayRouteListArray

type GetGatewayRoutesVpnGatewayRouteListArray []GetGatewayRoutesVpnGatewayRouteListInput

func (GetGatewayRoutesVpnGatewayRouteListArray) ElementType

func (GetGatewayRoutesVpnGatewayRouteListArray) ToGetGatewayRoutesVpnGatewayRouteListArrayOutput

func (i GetGatewayRoutesVpnGatewayRouteListArray) ToGetGatewayRoutesVpnGatewayRouteListArrayOutput() GetGatewayRoutesVpnGatewayRouteListArrayOutput

func (GetGatewayRoutesVpnGatewayRouteListArray) ToGetGatewayRoutesVpnGatewayRouteListArrayOutputWithContext

func (i GetGatewayRoutesVpnGatewayRouteListArray) ToGetGatewayRoutesVpnGatewayRouteListArrayOutputWithContext(ctx context.Context) GetGatewayRoutesVpnGatewayRouteListArrayOutput

type GetGatewayRoutesVpnGatewayRouteListArrayInput

type GetGatewayRoutesVpnGatewayRouteListArrayInput interface {
	pulumi.Input

	ToGetGatewayRoutesVpnGatewayRouteListArrayOutput() GetGatewayRoutesVpnGatewayRouteListArrayOutput
	ToGetGatewayRoutesVpnGatewayRouteListArrayOutputWithContext(context.Context) GetGatewayRoutesVpnGatewayRouteListArrayOutput
}

GetGatewayRoutesVpnGatewayRouteListArrayInput is an input type that accepts GetGatewayRoutesVpnGatewayRouteListArray and GetGatewayRoutesVpnGatewayRouteListArrayOutput values. You can construct a concrete instance of `GetGatewayRoutesVpnGatewayRouteListArrayInput` via:

GetGatewayRoutesVpnGatewayRouteListArray{ GetGatewayRoutesVpnGatewayRouteListArgs{...} }

type GetGatewayRoutesVpnGatewayRouteListArrayOutput

type GetGatewayRoutesVpnGatewayRouteListArrayOutput struct{ *pulumi.OutputState }

func (GetGatewayRoutesVpnGatewayRouteListArrayOutput) ElementType

func (GetGatewayRoutesVpnGatewayRouteListArrayOutput) Index

func (GetGatewayRoutesVpnGatewayRouteListArrayOutput) ToGetGatewayRoutesVpnGatewayRouteListArrayOutput

func (o GetGatewayRoutesVpnGatewayRouteListArrayOutput) ToGetGatewayRoutesVpnGatewayRouteListArrayOutput() GetGatewayRoutesVpnGatewayRouteListArrayOutput

func (GetGatewayRoutesVpnGatewayRouteListArrayOutput) ToGetGatewayRoutesVpnGatewayRouteListArrayOutputWithContext

func (o GetGatewayRoutesVpnGatewayRouteListArrayOutput) ToGetGatewayRoutesVpnGatewayRouteListArrayOutputWithContext(ctx context.Context) GetGatewayRoutesVpnGatewayRouteListArrayOutput

type GetGatewayRoutesVpnGatewayRouteListInput

type GetGatewayRoutesVpnGatewayRouteListInput interface {
	pulumi.Input

	ToGetGatewayRoutesVpnGatewayRouteListOutput() GetGatewayRoutesVpnGatewayRouteListOutput
	ToGetGatewayRoutesVpnGatewayRouteListOutputWithContext(context.Context) GetGatewayRoutesVpnGatewayRouteListOutput
}

GetGatewayRoutesVpnGatewayRouteListInput is an input type that accepts GetGatewayRoutesVpnGatewayRouteListArgs and GetGatewayRoutesVpnGatewayRouteListOutput values. You can construct a concrete instance of `GetGatewayRoutesVpnGatewayRouteListInput` via:

GetGatewayRoutesVpnGatewayRouteListArgs{...}

type GetGatewayRoutesVpnGatewayRouteListOutput

type GetGatewayRoutesVpnGatewayRouteListOutput struct{ *pulumi.OutputState }

func (GetGatewayRoutesVpnGatewayRouteListOutput) CreateTime

Create time.

func (GetGatewayRoutesVpnGatewayRouteListOutput) DestinationCidrBlock

func (GetGatewayRoutesVpnGatewayRouteListOutput) ElementType

func (GetGatewayRoutesVpnGatewayRouteListOutput) InstanceId

Instance ID of the next hop.

func (GetGatewayRoutesVpnGatewayRouteListOutput) InstanceType

Next hop type (type of the associated instance). Valid values: VPNCONN (VPN tunnel) and CCN (CCN instance).

func (GetGatewayRoutesVpnGatewayRouteListOutput) Priority

func (GetGatewayRoutesVpnGatewayRouteListOutput) RouteId

Route ID.

func (GetGatewayRoutesVpnGatewayRouteListOutput) Status

func (GetGatewayRoutesVpnGatewayRouteListOutput) ToGetGatewayRoutesVpnGatewayRouteListOutput

func (o GetGatewayRoutesVpnGatewayRouteListOutput) ToGetGatewayRoutesVpnGatewayRouteListOutput() GetGatewayRoutesVpnGatewayRouteListOutput

func (GetGatewayRoutesVpnGatewayRouteListOutput) ToGetGatewayRoutesVpnGatewayRouteListOutputWithContext

func (o GetGatewayRoutesVpnGatewayRouteListOutput) ToGetGatewayRoutesVpnGatewayRouteListOutputWithContext(ctx context.Context) GetGatewayRoutesVpnGatewayRouteListOutput

func (GetGatewayRoutesVpnGatewayRouteListOutput) Type

Route type. Default value: Static.

func (GetGatewayRoutesVpnGatewayRouteListOutput) UpdateTime

Update time.

func (GetGatewayRoutesVpnGatewayRouteListOutput) VpnGatewayId

VPN gateway ID.

type GetGatewaysArgs

type GetGatewaysArgs struct {
	// ID of the VPN gateway.
	Id *string `pulumi:"id"`
	// Name of the VPN gateway. The length of character is limited to 1-60.
	Name *string `pulumi:"name"`
	// Public ip address of the VPN gateway.
	PublicIpAddress *string `pulumi:"publicIpAddress"`
	// Used to save results.
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// Tags of the VPN gateway to be queried.
	Tags map[string]interface{} `pulumi:"tags"`
	// ID of the VPC.
	VpcId *string `pulumi:"vpcId"`
	// Zone of the VPN gateway.
	Zone *string `pulumi:"zone"`
}

A collection of arguments for invoking getGateways.

type GetGatewaysGatewayList

type GetGatewaysGatewayList struct {
	// The maximum public network output bandwidth of VPN gateway (unit: Mbps).
	Bandwidth int `pulumi:"bandwidth"`
	// Charge Type of the VPN gateway.
	ChargeType string `pulumi:"chargeType"`
	// Create time of the VPN gateway.
	CreateTime string `pulumi:"createTime"`
	// Expired time of the VPN gateway when charge type is `PREPAID`.
	ExpiredTime string `pulumi:"expiredTime"`
	// ID of the VPN gateway.
	Id string `pulumi:"id"`
	// Indicates whether ip address is blocked.
	IsAddressBlocked bool `pulumi:"isAddressBlocked"`
	// Name of the VPN gateway. The length of character is limited to 1-60.
	Name string `pulumi:"name"`
	// The plan of new purchase.
	NewPurchasePlan string `pulumi:"newPurchasePlan"`
	// Flag indicates whether to renew or not.
	PrepaidRenewFlag string `pulumi:"prepaidRenewFlag"`
	// Public ip address of the VPN gateway.
	PublicIpAddress string `pulumi:"publicIpAddress"`
	// Restrict state of VPN gateway.
	RestrictState string `pulumi:"restrictState"`
	// State of the VPN gateway.
	State string `pulumi:"state"`
	// Tags of the VPN gateway to be queried.
	Tags map[string]interface{} `pulumi:"tags"`
	// Type of gateway instance.
	Type string `pulumi:"type"`
	// ID of the VPC.
	VpcId string `pulumi:"vpcId"`
	// Zone of the VPN gateway.
	Zone string `pulumi:"zone"`
}

type GetGatewaysGatewayListArgs

type GetGatewaysGatewayListArgs struct {
	// The maximum public network output bandwidth of VPN gateway (unit: Mbps).
	Bandwidth pulumi.IntInput `pulumi:"bandwidth"`
	// Charge Type of the VPN gateway.
	ChargeType pulumi.StringInput `pulumi:"chargeType"`
	// Create time of the VPN gateway.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// Expired time of the VPN gateway when charge type is `PREPAID`.
	ExpiredTime pulumi.StringInput `pulumi:"expiredTime"`
	// ID of the VPN gateway.
	Id pulumi.StringInput `pulumi:"id"`
	// Indicates whether ip address is blocked.
	IsAddressBlocked pulumi.BoolInput `pulumi:"isAddressBlocked"`
	// Name of the VPN gateway. The length of character is limited to 1-60.
	Name pulumi.StringInput `pulumi:"name"`
	// The plan of new purchase.
	NewPurchasePlan pulumi.StringInput `pulumi:"newPurchasePlan"`
	// Flag indicates whether to renew or not.
	PrepaidRenewFlag pulumi.StringInput `pulumi:"prepaidRenewFlag"`
	// Public ip address of the VPN gateway.
	PublicIpAddress pulumi.StringInput `pulumi:"publicIpAddress"`
	// Restrict state of VPN gateway.
	RestrictState pulumi.StringInput `pulumi:"restrictState"`
	// State of the VPN gateway.
	State pulumi.StringInput `pulumi:"state"`
	// Tags of the VPN gateway to be queried.
	Tags pulumi.MapInput `pulumi:"tags"`
	// Type of gateway instance.
	Type pulumi.StringInput `pulumi:"type"`
	// ID of the VPC.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// Zone of the VPN gateway.
	Zone pulumi.StringInput `pulumi:"zone"`
}

func (GetGatewaysGatewayListArgs) ElementType

func (GetGatewaysGatewayListArgs) ElementType() reflect.Type

func (GetGatewaysGatewayListArgs) ToGetGatewaysGatewayListOutput

func (i GetGatewaysGatewayListArgs) ToGetGatewaysGatewayListOutput() GetGatewaysGatewayListOutput

func (GetGatewaysGatewayListArgs) ToGetGatewaysGatewayListOutputWithContext

func (i GetGatewaysGatewayListArgs) ToGetGatewaysGatewayListOutputWithContext(ctx context.Context) GetGatewaysGatewayListOutput

type GetGatewaysGatewayListArray

type GetGatewaysGatewayListArray []GetGatewaysGatewayListInput

func (GetGatewaysGatewayListArray) ElementType

func (GetGatewaysGatewayListArray) ToGetGatewaysGatewayListArrayOutput

func (i GetGatewaysGatewayListArray) ToGetGatewaysGatewayListArrayOutput() GetGatewaysGatewayListArrayOutput

func (GetGatewaysGatewayListArray) ToGetGatewaysGatewayListArrayOutputWithContext

func (i GetGatewaysGatewayListArray) ToGetGatewaysGatewayListArrayOutputWithContext(ctx context.Context) GetGatewaysGatewayListArrayOutput

type GetGatewaysGatewayListArrayInput

type GetGatewaysGatewayListArrayInput interface {
	pulumi.Input

	ToGetGatewaysGatewayListArrayOutput() GetGatewaysGatewayListArrayOutput
	ToGetGatewaysGatewayListArrayOutputWithContext(context.Context) GetGatewaysGatewayListArrayOutput
}

GetGatewaysGatewayListArrayInput is an input type that accepts GetGatewaysGatewayListArray and GetGatewaysGatewayListArrayOutput values. You can construct a concrete instance of `GetGatewaysGatewayListArrayInput` via:

GetGatewaysGatewayListArray{ GetGatewaysGatewayListArgs{...} }

type GetGatewaysGatewayListArrayOutput

type GetGatewaysGatewayListArrayOutput struct{ *pulumi.OutputState }

func (GetGatewaysGatewayListArrayOutput) ElementType

func (GetGatewaysGatewayListArrayOutput) Index

func (GetGatewaysGatewayListArrayOutput) ToGetGatewaysGatewayListArrayOutput

func (o GetGatewaysGatewayListArrayOutput) ToGetGatewaysGatewayListArrayOutput() GetGatewaysGatewayListArrayOutput

func (GetGatewaysGatewayListArrayOutput) ToGetGatewaysGatewayListArrayOutputWithContext

func (o GetGatewaysGatewayListArrayOutput) ToGetGatewaysGatewayListArrayOutputWithContext(ctx context.Context) GetGatewaysGatewayListArrayOutput

type GetGatewaysGatewayListInput

type GetGatewaysGatewayListInput interface {
	pulumi.Input

	ToGetGatewaysGatewayListOutput() GetGatewaysGatewayListOutput
	ToGetGatewaysGatewayListOutputWithContext(context.Context) GetGatewaysGatewayListOutput
}

GetGatewaysGatewayListInput is an input type that accepts GetGatewaysGatewayListArgs and GetGatewaysGatewayListOutput values. You can construct a concrete instance of `GetGatewaysGatewayListInput` via:

GetGatewaysGatewayListArgs{...}

type GetGatewaysGatewayListOutput

type GetGatewaysGatewayListOutput struct{ *pulumi.OutputState }

func (GetGatewaysGatewayListOutput) Bandwidth

The maximum public network output bandwidth of VPN gateway (unit: Mbps).

func (GetGatewaysGatewayListOutput) ChargeType

Charge Type of the VPN gateway.

func (GetGatewaysGatewayListOutput) CreateTime

Create time of the VPN gateway.

func (GetGatewaysGatewayListOutput) ElementType

func (GetGatewaysGatewayListOutput) ExpiredTime

Expired time of the VPN gateway when charge type is `PREPAID`.

func (GetGatewaysGatewayListOutput) Id

ID of the VPN gateway.

func (GetGatewaysGatewayListOutput) IsAddressBlocked

func (o GetGatewaysGatewayListOutput) IsAddressBlocked() pulumi.BoolOutput

Indicates whether ip address is blocked.

func (GetGatewaysGatewayListOutput) Name

Name of the VPN gateway. The length of character is limited to 1-60.

func (GetGatewaysGatewayListOutput) NewPurchasePlan

func (o GetGatewaysGatewayListOutput) NewPurchasePlan() pulumi.StringOutput

The plan of new purchase.

func (GetGatewaysGatewayListOutput) PrepaidRenewFlag

func (o GetGatewaysGatewayListOutput) PrepaidRenewFlag() pulumi.StringOutput

Flag indicates whether to renew or not.

func (GetGatewaysGatewayListOutput) PublicIpAddress

func (o GetGatewaysGatewayListOutput) PublicIpAddress() pulumi.StringOutput

Public ip address of the VPN gateway.

func (GetGatewaysGatewayListOutput) RestrictState

Restrict state of VPN gateway.

func (GetGatewaysGatewayListOutput) State

State of the VPN gateway.

func (GetGatewaysGatewayListOutput) Tags

Tags of the VPN gateway to be queried.

func (GetGatewaysGatewayListOutput) ToGetGatewaysGatewayListOutput

func (o GetGatewaysGatewayListOutput) ToGetGatewaysGatewayListOutput() GetGatewaysGatewayListOutput

func (GetGatewaysGatewayListOutput) ToGetGatewaysGatewayListOutputWithContext

func (o GetGatewaysGatewayListOutput) ToGetGatewaysGatewayListOutputWithContext(ctx context.Context) GetGatewaysGatewayListOutput

func (GetGatewaysGatewayListOutput) Type

Type of gateway instance.

func (GetGatewaysGatewayListOutput) VpcId

ID of the VPC.

func (GetGatewaysGatewayListOutput) Zone

Zone of the VPN gateway.

type GetGatewaysOutputArgs

type GetGatewaysOutputArgs struct {
	// ID of the VPN gateway.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// Name of the VPN gateway. The length of character is limited to 1-60.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Public ip address of the VPN gateway.
	PublicIpAddress pulumi.StringPtrInput `pulumi:"publicIpAddress"`
	// Used to save results.
	ResultOutputFile pulumi.StringPtrInput `pulumi:"resultOutputFile"`
	// Tags of the VPN gateway to be queried.
	Tags pulumi.MapInput `pulumi:"tags"`
	// ID of the VPC.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// Zone of the VPN gateway.
	Zone pulumi.StringPtrInput `pulumi:"zone"`
}

A collection of arguments for invoking getGateways.

func (GetGatewaysOutputArgs) ElementType

func (GetGatewaysOutputArgs) ElementType() reflect.Type

type GetGatewaysResult

type GetGatewaysResult struct {
	// Information list of the dedicated gateways.
	GatewayLists []GetGatewaysGatewayList `pulumi:"gatewayLists"`
	// ID of the VPN gateway.
	Id *string `pulumi:"id"`
	// Name of the VPN gateway.
	Name *string `pulumi:"name"`
	// Public ip of the VPN gateway.
	PublicIpAddress  *string `pulumi:"publicIpAddress"`
	ResultOutputFile *string `pulumi:"resultOutputFile"`
	// A list of tags used to associate different resources.
	Tags map[string]interface{} `pulumi:"tags"`
	// ID of the VPC.
	VpcId *string `pulumi:"vpcId"`
	// Zone of the VPN gateway.
	Zone *string `pulumi:"zone"`
}

A collection of values returned by getGateways.

func GetGateways

func GetGateways(ctx *pulumi.Context, args *GetGatewaysArgs, opts ...pulumi.InvokeOption) (*GetGatewaysResult, error)

Use this data source to query detailed information of VPN gateways.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Vpn.GetGateways(ctx, &vpn.GetGatewaysArgs{
			Id:              pulumi.StringRef("vpngw-8ccsnclt"),
			Name:            pulumi.StringRef("main"),
			PublicIpAddress: pulumi.StringRef("1.1.1.1"),
			Tags: map[string]interface{}{
				"test": "tf",
			},
			VpcId: pulumi.StringRef("vpc-dk8zmwuf"),
			Zone:  pulumi.StringRef("ap-guangzhou-3"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetGatewaysResultOutput

type GetGatewaysResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getGateways.

func (GetGatewaysResultOutput) ElementType

func (GetGatewaysResultOutput) ElementType() reflect.Type

func (GetGatewaysResultOutput) GatewayLists

Information list of the dedicated gateways.

func (GetGatewaysResultOutput) Id

ID of the VPN gateway.

func (GetGatewaysResultOutput) Name

Name of the VPN gateway.

func (GetGatewaysResultOutput) PublicIpAddress

func (o GetGatewaysResultOutput) PublicIpAddress() pulumi.StringPtrOutput

Public ip of the VPN gateway.

func (GetGatewaysResultOutput) ResultOutputFile

func (o GetGatewaysResultOutput) ResultOutputFile() pulumi.StringPtrOutput

func (GetGatewaysResultOutput) Tags

A list of tags used to associate different resources.

func (GetGatewaysResultOutput) ToGetGatewaysResultOutput

func (o GetGatewaysResultOutput) ToGetGatewaysResultOutput() GetGatewaysResultOutput

func (GetGatewaysResultOutput) ToGetGatewaysResultOutputWithContext

func (o GetGatewaysResultOutput) ToGetGatewaysResultOutputWithContext(ctx context.Context) GetGatewaysResultOutput

func (GetGatewaysResultOutput) VpcId

ID of the VPC.

func (GetGatewaysResultOutput) Zone

Zone of the VPN gateway.

type SslClient

type SslClient struct {
	pulumi.CustomResourceState

	// The name of ssl vpn client to be created.
	SslVpnClientName pulumi.StringOutput `pulumi:"sslVpnClientName"`
	// VPN ssl server id.
	SslVpnServerId pulumi.StringOutput `pulumi:"sslVpnServerId"`
}

Provide a resource to create a VPN SSL Client.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Vpn.NewSslClient(ctx, "client", &Vpn.SslClientArgs{
			SslVpnClientName: pulumi.String("hello"),
			SslVpnServerId:   pulumi.String("vpns-aog5xcjj"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPN SSL Client can be imported, e.g.

```sh

$ pulumi import tencentcloud:Vpn/sslClient:SslClient client vpn-client-id

```

func GetSslClient

func GetSslClient(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SslClientState, opts ...pulumi.ResourceOption) (*SslClient, error)

GetSslClient gets an existing SslClient 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 NewSslClient

func NewSslClient(ctx *pulumi.Context,
	name string, args *SslClientArgs, opts ...pulumi.ResourceOption) (*SslClient, error)

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

func (*SslClient) ElementType

func (*SslClient) ElementType() reflect.Type

func (*SslClient) ToSslClientOutput

func (i *SslClient) ToSslClientOutput() SslClientOutput

func (*SslClient) ToSslClientOutputWithContext

func (i *SslClient) ToSslClientOutputWithContext(ctx context.Context) SslClientOutput

type SslClientArgs

type SslClientArgs struct {
	// The name of ssl vpn client to be created.
	SslVpnClientName pulumi.StringInput
	// VPN ssl server id.
	SslVpnServerId pulumi.StringInput
}

The set of arguments for constructing a SslClient resource.

func (SslClientArgs) ElementType

func (SslClientArgs) ElementType() reflect.Type

type SslClientArray

type SslClientArray []SslClientInput

func (SslClientArray) ElementType

func (SslClientArray) ElementType() reflect.Type

func (SslClientArray) ToSslClientArrayOutput

func (i SslClientArray) ToSslClientArrayOutput() SslClientArrayOutput

func (SslClientArray) ToSslClientArrayOutputWithContext

func (i SslClientArray) ToSslClientArrayOutputWithContext(ctx context.Context) SslClientArrayOutput

type SslClientArrayInput

type SslClientArrayInput interface {
	pulumi.Input

	ToSslClientArrayOutput() SslClientArrayOutput
	ToSslClientArrayOutputWithContext(context.Context) SslClientArrayOutput
}

SslClientArrayInput is an input type that accepts SslClientArray and SslClientArrayOutput values. You can construct a concrete instance of `SslClientArrayInput` via:

SslClientArray{ SslClientArgs{...} }

type SslClientArrayOutput

type SslClientArrayOutput struct{ *pulumi.OutputState }

func (SslClientArrayOutput) ElementType

func (SslClientArrayOutput) ElementType() reflect.Type

func (SslClientArrayOutput) Index

func (SslClientArrayOutput) ToSslClientArrayOutput

func (o SslClientArrayOutput) ToSslClientArrayOutput() SslClientArrayOutput

func (SslClientArrayOutput) ToSslClientArrayOutputWithContext

func (o SslClientArrayOutput) ToSslClientArrayOutputWithContext(ctx context.Context) SslClientArrayOutput

type SslClientInput

type SslClientInput interface {
	pulumi.Input

	ToSslClientOutput() SslClientOutput
	ToSslClientOutputWithContext(ctx context.Context) SslClientOutput
}

type SslClientMap

type SslClientMap map[string]SslClientInput

func (SslClientMap) ElementType

func (SslClientMap) ElementType() reflect.Type

func (SslClientMap) ToSslClientMapOutput

func (i SslClientMap) ToSslClientMapOutput() SslClientMapOutput

func (SslClientMap) ToSslClientMapOutputWithContext

func (i SslClientMap) ToSslClientMapOutputWithContext(ctx context.Context) SslClientMapOutput

type SslClientMapInput

type SslClientMapInput interface {
	pulumi.Input

	ToSslClientMapOutput() SslClientMapOutput
	ToSslClientMapOutputWithContext(context.Context) SslClientMapOutput
}

SslClientMapInput is an input type that accepts SslClientMap and SslClientMapOutput values. You can construct a concrete instance of `SslClientMapInput` via:

SslClientMap{ "key": SslClientArgs{...} }

type SslClientMapOutput

type SslClientMapOutput struct{ *pulumi.OutputState }

func (SslClientMapOutput) ElementType

func (SslClientMapOutput) ElementType() reflect.Type

func (SslClientMapOutput) MapIndex

func (SslClientMapOutput) ToSslClientMapOutput

func (o SslClientMapOutput) ToSslClientMapOutput() SslClientMapOutput

func (SslClientMapOutput) ToSslClientMapOutputWithContext

func (o SslClientMapOutput) ToSslClientMapOutputWithContext(ctx context.Context) SslClientMapOutput

type SslClientOutput

type SslClientOutput struct{ *pulumi.OutputState }

func (SslClientOutput) ElementType

func (SslClientOutput) ElementType() reflect.Type

func (SslClientOutput) SslVpnClientName

func (o SslClientOutput) SslVpnClientName() pulumi.StringOutput

The name of ssl vpn client to be created.

func (SslClientOutput) SslVpnServerId

func (o SslClientOutput) SslVpnServerId() pulumi.StringOutput

VPN ssl server id.

func (SslClientOutput) ToSslClientOutput

func (o SslClientOutput) ToSslClientOutput() SslClientOutput

func (SslClientOutput) ToSslClientOutputWithContext

func (o SslClientOutput) ToSslClientOutputWithContext(ctx context.Context) SslClientOutput

type SslClientState

type SslClientState struct {
	// The name of ssl vpn client to be created.
	SslVpnClientName pulumi.StringPtrInput
	// VPN ssl server id.
	SslVpnServerId pulumi.StringPtrInput
}

func (SslClientState) ElementType

func (SslClientState) ElementType() reflect.Type

type SslServer

type SslServer struct {
	pulumi.CustomResourceState

	// need compressed. Default value: False.
	Compress pulumi.BoolPtrOutput `pulumi:"compress"`
	// The encrypt algorithm. Valid values: AES-128-CBC, AES-192-CBC, AES-256-CBC, NONE.Default value: NONE.
	EncryptAlgorithm pulumi.StringPtrOutput `pulumi:"encryptAlgorithm"`
	// The integrity algorithm. Valid values: SHA1, MD5 and NONE. Default value: NONE.
	IntegrityAlgorithm pulumi.StringPtrOutput `pulumi:"integrityAlgorithm"`
	// List of local CIDR.
	LocalAddresses pulumi.StringArrayOutput `pulumi:"localAddresses"`
	// Remote CIDR for client.
	RemoteAddress pulumi.StringOutput `pulumi:"remoteAddress"`
	// The port of ssl vpn. Default value: 1194.
	SslVpnPort pulumi.IntPtrOutput `pulumi:"sslVpnPort"`
	// The protocol of ssl vpn. Default value: UDP.
	SslVpnProtocol pulumi.StringPtrOutput `pulumi:"sslVpnProtocol"`
	// The name of ssl vpn server to be created.
	SslVpnServerName pulumi.StringOutput `pulumi:"sslVpnServerName"`
	// VPN gateway ID.
	VpnGatewayId pulumi.StringOutput `pulumi:"vpnGatewayId"`
}

Provide a resource to create a VPN SSL Server.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Vpn.NewSslServer(ctx, "server", &Vpn.SslServerArgs{
			Compress:           pulumi.Bool(true),
			EncryptAlgorithm:   pulumi.String("AES-128-CBC"),
			IntegrityAlgorithm: pulumi.String("MD5"),
			LocalAddresses: pulumi.StringArray{
				pulumi.String("10.0.0.0/17"),
			},
			RemoteAddress:    pulumi.String("11.0.0.0/16"),
			SslVpnPort:       pulumi.Int(1194),
			SslVpnProtocol:   pulumi.String("UDP"),
			SslVpnServerName: pulumi.String("helloworld"),
			VpnGatewayId:     pulumi.String("vpngw-335lwf7d"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

VPN SSL Server can be imported, e.g.

```sh

$ pulumi import tencentcloud:Vpn/sslServer:SslServer server vpn-server-id

```

func GetSslServer

func GetSslServer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SslServerState, opts ...pulumi.ResourceOption) (*SslServer, error)

GetSslServer gets an existing SslServer 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 NewSslServer

func NewSslServer(ctx *pulumi.Context,
	name string, args *SslServerArgs, opts ...pulumi.ResourceOption) (*SslServer, error)

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

func (*SslServer) ElementType

func (*SslServer) ElementType() reflect.Type

func (*SslServer) ToSslServerOutput

func (i *SslServer) ToSslServerOutput() SslServerOutput

func (*SslServer) ToSslServerOutputWithContext

func (i *SslServer) ToSslServerOutputWithContext(ctx context.Context) SslServerOutput

type SslServerArgs

type SslServerArgs struct {
	// need compressed. Default value: False.
	Compress pulumi.BoolPtrInput
	// The encrypt algorithm. Valid values: AES-128-CBC, AES-192-CBC, AES-256-CBC, NONE.Default value: NONE.
	EncryptAlgorithm pulumi.StringPtrInput
	// The integrity algorithm. Valid values: SHA1, MD5 and NONE. Default value: NONE.
	IntegrityAlgorithm pulumi.StringPtrInput
	// List of local CIDR.
	LocalAddresses pulumi.StringArrayInput
	// Remote CIDR for client.
	RemoteAddress pulumi.StringInput
	// The port of ssl vpn. Default value: 1194.
	SslVpnPort pulumi.IntPtrInput
	// The protocol of ssl vpn. Default value: UDP.
	SslVpnProtocol pulumi.StringPtrInput
	// The name of ssl vpn server to be created.
	SslVpnServerName pulumi.StringInput
	// VPN gateway ID.
	VpnGatewayId pulumi.StringInput
}

The set of arguments for constructing a SslServer resource.

func (SslServerArgs) ElementType

func (SslServerArgs) ElementType() reflect.Type

type SslServerArray

type SslServerArray []SslServerInput

func (SslServerArray) ElementType

func (SslServerArray) ElementType() reflect.Type

func (SslServerArray) ToSslServerArrayOutput

func (i SslServerArray) ToSslServerArrayOutput() SslServerArrayOutput

func (SslServerArray) ToSslServerArrayOutputWithContext

func (i SslServerArray) ToSslServerArrayOutputWithContext(ctx context.Context) SslServerArrayOutput

type SslServerArrayInput

type SslServerArrayInput interface {
	pulumi.Input

	ToSslServerArrayOutput() SslServerArrayOutput
	ToSslServerArrayOutputWithContext(context.Context) SslServerArrayOutput
}

SslServerArrayInput is an input type that accepts SslServerArray and SslServerArrayOutput values. You can construct a concrete instance of `SslServerArrayInput` via:

SslServerArray{ SslServerArgs{...} }

type SslServerArrayOutput

type SslServerArrayOutput struct{ *pulumi.OutputState }

func (SslServerArrayOutput) ElementType

func (SslServerArrayOutput) ElementType() reflect.Type

func (SslServerArrayOutput) Index

func (SslServerArrayOutput) ToSslServerArrayOutput

func (o SslServerArrayOutput) ToSslServerArrayOutput() SslServerArrayOutput

func (SslServerArrayOutput) ToSslServerArrayOutputWithContext

func (o SslServerArrayOutput) ToSslServerArrayOutputWithContext(ctx context.Context) SslServerArrayOutput

type SslServerInput

type SslServerInput interface {
	pulumi.Input

	ToSslServerOutput() SslServerOutput
	ToSslServerOutputWithContext(ctx context.Context) SslServerOutput
}

type SslServerMap

type SslServerMap map[string]SslServerInput

func (SslServerMap) ElementType

func (SslServerMap) ElementType() reflect.Type

func (SslServerMap) ToSslServerMapOutput

func (i SslServerMap) ToSslServerMapOutput() SslServerMapOutput

func (SslServerMap) ToSslServerMapOutputWithContext

func (i SslServerMap) ToSslServerMapOutputWithContext(ctx context.Context) SslServerMapOutput

type SslServerMapInput

type SslServerMapInput interface {
	pulumi.Input

	ToSslServerMapOutput() SslServerMapOutput
	ToSslServerMapOutputWithContext(context.Context) SslServerMapOutput
}

SslServerMapInput is an input type that accepts SslServerMap and SslServerMapOutput values. You can construct a concrete instance of `SslServerMapInput` via:

SslServerMap{ "key": SslServerArgs{...} }

type SslServerMapOutput

type SslServerMapOutput struct{ *pulumi.OutputState }

func (SslServerMapOutput) ElementType

func (SslServerMapOutput) ElementType() reflect.Type

func (SslServerMapOutput) MapIndex

func (SslServerMapOutput) ToSslServerMapOutput

func (o SslServerMapOutput) ToSslServerMapOutput() SslServerMapOutput

func (SslServerMapOutput) ToSslServerMapOutputWithContext

func (o SslServerMapOutput) ToSslServerMapOutputWithContext(ctx context.Context) SslServerMapOutput

type SslServerOutput

type SslServerOutput struct{ *pulumi.OutputState }

func (SslServerOutput) Compress

func (o SslServerOutput) Compress() pulumi.BoolPtrOutput

need compressed. Default value: False.

func (SslServerOutput) ElementType

func (SslServerOutput) ElementType() reflect.Type

func (SslServerOutput) EncryptAlgorithm

func (o SslServerOutput) EncryptAlgorithm() pulumi.StringPtrOutput

The encrypt algorithm. Valid values: AES-128-CBC, AES-192-CBC, AES-256-CBC, NONE.Default value: NONE.

func (SslServerOutput) IntegrityAlgorithm

func (o SslServerOutput) IntegrityAlgorithm() pulumi.StringPtrOutput

The integrity algorithm. Valid values: SHA1, MD5 and NONE. Default value: NONE.

func (SslServerOutput) LocalAddresses

func (o SslServerOutput) LocalAddresses() pulumi.StringArrayOutput

List of local CIDR.

func (SslServerOutput) RemoteAddress

func (o SslServerOutput) RemoteAddress() pulumi.StringOutput

Remote CIDR for client.

func (SslServerOutput) SslVpnPort

func (o SslServerOutput) SslVpnPort() pulumi.IntPtrOutput

The port of ssl vpn. Default value: 1194.

func (SslServerOutput) SslVpnProtocol

func (o SslServerOutput) SslVpnProtocol() pulumi.StringPtrOutput

The protocol of ssl vpn. Default value: UDP.

func (SslServerOutput) SslVpnServerName

func (o SslServerOutput) SslVpnServerName() pulumi.StringOutput

The name of ssl vpn server to be created.

func (SslServerOutput) ToSslServerOutput

func (o SslServerOutput) ToSslServerOutput() SslServerOutput

func (SslServerOutput) ToSslServerOutputWithContext

func (o SslServerOutput) ToSslServerOutputWithContext(ctx context.Context) SslServerOutput

func (SslServerOutput) VpnGatewayId

func (o SslServerOutput) VpnGatewayId() pulumi.StringOutput

VPN gateway ID.

type SslServerState

type SslServerState struct {
	// need compressed. Default value: False.
	Compress pulumi.BoolPtrInput
	// The encrypt algorithm. Valid values: AES-128-CBC, AES-192-CBC, AES-256-CBC, NONE.Default value: NONE.
	EncryptAlgorithm pulumi.StringPtrInput
	// The integrity algorithm. Valid values: SHA1, MD5 and NONE. Default value: NONE.
	IntegrityAlgorithm pulumi.StringPtrInput
	// List of local CIDR.
	LocalAddresses pulumi.StringArrayInput
	// Remote CIDR for client.
	RemoteAddress pulumi.StringPtrInput
	// The port of ssl vpn. Default value: 1194.
	SslVpnPort pulumi.IntPtrInput
	// The protocol of ssl vpn. Default value: UDP.
	SslVpnProtocol pulumi.StringPtrInput
	// The name of ssl vpn server to be created.
	SslVpnServerName pulumi.StringPtrInput
	// VPN gateway ID.
	VpnGatewayId pulumi.StringPtrInput
}

func (SslServerState) ElementType

func (SslServerState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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