1. Packages
  2. Alibaba Cloud Provider
  3. API Docs
  4. vpn
  5. getGateways
Alibaba Cloud v3.85.0 published on Tuesday, Sep 9, 2025 by Pulumi

alicloud.vpn.getGateways

Explore with Pulumi AI

alicloud logo
Alibaba Cloud v3.85.0 published on Tuesday, Sep 9, 2025 by Pulumi

    The VPNs data source lists a number of VPNs resource information owned by an Alicloud account.

    NOTE: Available since v1.18.0.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as alicloud from "@pulumi/alicloud";
    import * as std from "@pulumi/std";
    
    const config = new pulumi.Config();
    const name = config.get("name") || "terraform-example";
    const spec = config.get("spec") || "20";
    const _default = alicloud.getZones({
        availableResourceCreation: "VSwitch",
    });
    const defaultGetNetworks = alicloud.vpc.getNetworks({
        nameRegex: "^default-NODELETING$",
    });
    const defaultGetSwitches = defaultGetNetworks.then(defaultGetNetworks => alicloud.vpc.getSwitches({
        vpcId: defaultGetNetworks.ids?.[0],
        zoneId: "me-east-1a",
    }));
    const vswitch: alicloud.vpc.Switch[] = [];
    defaultGetSwitches.then(defaultGetSwitches => defaultGetSwitches.ids).length.apply(length => {
        for (const range = {value: 0}; range.value < (length > 0 ? 0 : 1); range.value++) {
            vswitch.push(new alicloud.vpc.Switch(`vswitch-${range.value}`, {
                vpcId: defaultGetNetworks.then(defaultGetNetworks => defaultGetNetworks.ids?.[0]),
                cidrBlock: defaultGetNetworks.then(defaultGetNetworks => std.cidrsubnet({
                    input: defaultGetNetworks.vpcs?.[0]?.cidrBlock,
                    newbits: 8,
                    netnum: 8,
                })).then(invoke => invoke.result),
                zoneId: "me-east-1a",
                vswitchName: name,
            }));
        }
    });
    const vswitchId = pulumi.all([defaultGetSwitches.then(defaultGetSwitches => defaultGetSwitches.ids).length, defaultGetSwitches, std.concat({
        input: [
            vswitch.map(__item => __item.id),
            [""],
        ],
    })]).apply(([length, defaultGetSwitches, invoke]) => length > 0 ? defaultGetSwitches.ids?.[0] : invoke.result?.[0]);
    const defaultGateway = new alicloud.vpn.Gateway("default", {
        vpnType: "Normal",
        vpnGatewayName: name,
        vswitchId: vswitchId,
        autoPay: true,
        vpcId: defaultGetNetworks.then(defaultGetNetworks => defaultGetNetworks.ids?.[0]),
        networkType: "public",
        paymentType: "Subscription",
        enableIpsec: true,
        bandwidth: spec,
    });
    const vpnGateways = alicloud.vpn.getGatewaysOutput({
        ids: [defaultGateway.id],
        includeReservationData: true,
        outputFile: "/tmp/vpns",
    });
    
    import pulumi
    import pulumi_alicloud as alicloud
    import pulumi_std as std
    
    config = pulumi.Config()
    name = config.get("name")
    if name is None:
        name = "terraform-example"
    spec = config.get("spec")
    if spec is None:
        spec = "20"
    default = alicloud.get_zones(available_resource_creation="VSwitch")
    default_get_networks = alicloud.vpc.get_networks(name_regex="^default-NODELETING$")
    default_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
        zone_id="me-east-1a")
    vswitch = []
    def create_vswitch(range_body):
        for range in [{"value": i} for i in range(0, range_body)]:
            vswitch.append(alicloud.vpc.Switch(f"vswitch-{range['value']}",
                vpc_id=default_get_networks.ids[0],
                cidr_block=std.cidrsubnet(input=default_get_networks.vpcs[0].cidr_block,
                    newbits=8,
                    netnum=8).result,
                zone_id="me-east-1a",
                vswitch_name=name))
    
    len(default_get_switches.ids).apply(lambda resolved_outputs: create_vswitch(0 if resolved_outputs['length'] > 0 else 1))
    vswitch_id = len(default_get_switches.ids).apply(lambda length: default_get_switches.ids[0] if length > 0 else std.concat(input=[
        [__item.id for __item in vswitch],
        [""],
    ]).result[0])
    default_gateway = alicloud.vpn.Gateway("default",
        vpn_type="Normal",
        vpn_gateway_name=name,
        vswitch_id=vswitch_id,
        auto_pay=True,
        vpc_id=default_get_networks.ids[0],
        network_type="public",
        payment_type="Subscription",
        enable_ipsec=True,
        bandwidth=spec)
    vpn_gateways = alicloud.vpn.get_gateways_output(ids=[default_gateway.id],
        include_reservation_data=True,
        output_file="/tmp/vpns")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpn"
    	"github.com/pulumi/pulumi-std/sdk/go/std"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
    cfg := config.New(ctx, "")
    name := "terraform-example";
    if param := cfg.Get("name"); param != ""{
    name = param
    }
    spec := "20";
    if param := cfg.Get("spec"); param != ""{
    spec = param
    }
    _, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
    AvailableResourceCreation: pulumi.StringRef("VSwitch"),
    }, nil);
    if err != nil {
    return err
    }
    defaultGetNetworks, err := vpc.GetNetworks(ctx, &vpc.GetNetworksArgs{
    NameRegex: pulumi.StringRef("^default-NODELETING$"),
    }, nil);
    if err != nil {
    return err
    }
    defaultGetSwitches, err := vpc.GetSwitches(ctx, &vpc.GetSwitchesArgs{
    VpcId: pulumi.StringRef(defaultGetNetworks.Ids[0]),
    ZoneId: pulumi.StringRef("me-east-1a"),
    }, nil);
    if err != nil {
    return err
    }
    invokeCidrsubnet, err := std.Cidrsubnet(ctx, &std.CidrsubnetArgs{
    Input: defaultGetNetworks.Vpcs[0].CidrBlock,
    Newbits: 8,
    Netnum: 8,
    }, nil)
    if err != nil {
    return err
    }
    var tmp0 float64
    if length > 0 {
    tmp0 = 0
    } else {
    tmp0 = 1
    }
    var vswitch []*vpc.Switch
    for index := 0; index < float64(len(defaultGetSwitches.Ids).ApplyT(func(length int) (float64, error) {
    return tmp0, nil
    }).(pulumi.Float64Output)); index++ {
        key0 := index
        _ := index
    __res, err := vpc.NewSwitch(ctx, fmt.Sprintf("vswitch-%v", key0), &vpc.SwitchArgs{
    VpcId: pulumi.String(defaultGetNetworks.Ids[0]),
    CidrBlock: pulumi.String(invokeCidrsubnet.Result),
    ZoneId: pulumi.String("me-east-1a"),
    VswitchName: pulumi.String(name),
    })
    if err != nil {
    return err
    }
    vswitch = append(vswitch, __res)
    }
    var tmp1 *interface{}
    if length > 0 {
    tmp1 = defaultGetSwitches.Ids[0]
    } else {
    tmp1 = std.Concat(ctx, &std.ConcatArgs{
    Input: pulumi.StringArrayArray{
    %!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:35,12-25),
    []string{
    "",
    },
    },
    }, nil).Result[0]
    }
    vswitchId := len(defaultGetSwitches.Ids).ApplyT(func(length int) (*interface{}, error) {
    return &tmp1, nil
    }).(pulumi.Interface{}PtrOutput)
    defaultGateway, err := vpn.NewGateway(ctx, "default", &vpn.GatewayArgs{
    VpnType: pulumi.String("Normal"),
    VpnGatewayName: pulumi.String(name),
    VswitchId: pulumi.Any(vswitchId),
    AutoPay: pulumi.Bool(true),
    VpcId: pulumi.String(defaultGetNetworks.Ids[0]),
    NetworkType: pulumi.String("public"),
    PaymentType: pulumi.String("Subscription"),
    EnableIpsec: pulumi.Bool(true),
    Bandwidth: pulumi.String(spec),
    })
    if err != nil {
    return err
    }
    _ = vpn.GetGatewaysOutput(ctx, vpn.GetGatewaysOutputArgs{
    Ids: pulumi.StringArray{
    defaultGateway.ID(),
    },
    IncludeReservationData: pulumi.Bool(true),
    OutputFile: pulumi.String("/tmp/vpns"),
    }, nil);
    return nil
    })
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AliCloud = Pulumi.AliCloud;
    using Std = Pulumi.Std;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var name = config.Get("name") ?? "terraform-example";
        var spec = config.Get("spec") ?? "20";
        var @default = AliCloud.GetZones.Invoke(new()
        {
            AvailableResourceCreation = "VSwitch",
        });
    
        var defaultGetNetworks = AliCloud.Vpc.GetNetworks.Invoke(new()
        {
            NameRegex = "^default-NODELETING$",
        });
    
        var defaultGetSwitches = AliCloud.Vpc.GetSwitches.Invoke(new()
        {
            VpcId = defaultGetNetworks.Apply(getNetworksResult => getNetworksResult.Ids[0]),
            ZoneId = "me-east-1a",
        });
    
        var vswitch = new List<AliCloud.Vpc.Switch>();
        for (var rangeIndex = 0; rangeIndex < defaultGetSwitches.Apply(getSwitchesResult => getSwitchesResult.Ids).Length.Apply(length => length > 0 ? 0 : 1); rangeIndex++)
        {
            var range = new { Value = rangeIndex };
            vswitch.Add(new AliCloud.Vpc.Switch($"vswitch-{range.Value}", new()
            {
                VpcId = defaultGetNetworks.Apply(getNetworksResult => getNetworksResult.Ids[0]),
                CidrBlock = Std.Cidrsubnet.Invoke(new()
                {
                    Input = defaultGetNetworks.Apply(getNetworksResult => getNetworksResult.Vpcs[0]?.CidrBlock),
                    Newbits = 8,
                    Netnum = 8,
                }).Apply(invoke => invoke.Result),
                ZoneId = "me-east-1a",
                VswitchName = name,
            }));
        }
        var vswitchId = Output.Tuple(defaultGetSwitches.Apply(getSwitchesResult => getSwitchesResult.Ids).Length, defaultGetSwitches, Std.Concat.Invoke(new()
        {
            Input = new[]
            {
                vswitch.Select(__item => __item.Id).ToList(),
                new[]
                {
                    "",
                },
            },
        })).Apply(values =>
        {
            var length = values.Item1;
            var defaultGetSwitches = values.Item2;
            var invoke = values.Item3;
            return length > 0 ? defaultGetSwitches.Apply(getSwitchesResult => getSwitchesResult.Ids[0]) : invoke.Result[0];
        });
    
        var defaultGateway = new AliCloud.Vpn.Gateway("default", new()
        {
            VpnType = "Normal",
            VpnGatewayName = name,
            VswitchId = vswitchId,
            AutoPay = true,
            VpcId = defaultGetNetworks.Apply(getNetworksResult => getNetworksResult.Ids[0]),
            NetworkType = "public",
            PaymentType = "Subscription",
            EnableIpsec = true,
            Bandwidth = spec,
        });
    
        var vpnGateways = AliCloud.Vpn.GetGateways.Invoke(new()
        {
            Ids = new[]
            {
                defaultGateway.Id,
            },
            IncludeReservationData = true,
            OutputFile = "/tmp/vpns",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.alicloud.AlicloudFunctions;
    import com.pulumi.alicloud.inputs.GetZonesArgs;
    import com.pulumi.alicloud.vpc.VpcFunctions;
    import com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;
    import com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;
    import com.pulumi.alicloud.vpc.Switch;
    import com.pulumi.alicloud.vpc.SwitchArgs;
    import com.pulumi.std.StdFunctions;
    import com.pulumi.std.inputs.CidrsubnetArgs;
    import com.pulumi.std.inputs.ConcatArgs;
    import com.pulumi.alicloud.vpn.Gateway;
    import com.pulumi.alicloud.vpn.GatewayArgs;
    import com.pulumi.alicloud.vpn.VpnFunctions;
    import com.pulumi.alicloud.vpn.inputs.GetGatewaysArgs;
    import com.pulumi.codegen.internal.KeyedValue;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var config = ctx.config();
            final var name = config.get("name").orElse("terraform-example");
            final var spec = config.get("spec").orElse("20");
            final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()
                .availableResourceCreation("VSwitch")
                .build());
    
            final var defaultGetNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()
                .nameRegex("^default-NODELETING$")
                .build());
    
            final var defaultGetSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()
                .vpcId(defaultGetNetworks.ids()[0])
                .zoneId("me-east-1a")
                .build());
    
            for (var i = 0; i < defaultGetSwitches.ids().length().applyValue(_length -> _length > 0 ? 0 : 1); i++) {
                new Switch("vswitch-" + i, SwitchArgs.builder()
                    .vpcId(defaultGetNetworks.ids()[0])
                    .cidrBlock(StdFunctions.cidrsubnet(CidrsubnetArgs.builder()
                        .input(defaultGetNetworks.vpcs()[0].cidrBlock())
                        .newbits(8)
                        .netnum(8)
                        .build()).result())
                    .zoneId("me-east-1a")
                    .vswitchName(name)
                    .build());
    
            
    }
            final var vswitchId = defaultGetSwitches.ids().length().applyValue(_length -> _length > 0 ? defaultGetSwitches.ids()[0] : StdFunctions.concat(ConcatArgs.builder()
                .input(            
                    vswitch.stream().map(element -> element.id()).collect(toList()),
                    "")
                .build()).result()[0]);
    
            var defaultGateway = new Gateway("defaultGateway", GatewayArgs.builder()
                .vpnType("Normal")
                .vpnGatewayName(name)
                .vswitchId(vswitchId)
                .autoPay(true)
                .vpcId(defaultGetNetworks.ids()[0])
                .networkType("public")
                .paymentType("Subscription")
                .enableIpsec(true)
                .bandwidth(spec)
                .build());
    
            final var vpnGateways = VpnFunctions.getGateways(GetGatewaysArgs.builder()
                .ids(defaultGateway.id())
                .includeReservationData(true)
                .outputFile("/tmp/vpns")
                .build());
    
        }
    }
    
    Example coming soon!
    

    Using getGateways

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getGateways(args: GetGatewaysArgs, opts?: InvokeOptions): Promise<GetGatewaysResult>
    function getGatewaysOutput(args: GetGatewaysOutputArgs, opts?: InvokeOptions): Output<GetGatewaysResult>
    def get_gateways(business_status: Optional[str] = None,
                     enable_ipsec: Optional[bool] = None,
                     ids: Optional[Sequence[str]] = None,
                     include_reservation_data: Optional[bool] = None,
                     name_regex: Optional[str] = None,
                     output_file: Optional[str] = None,
                     ssl_vpn: Optional[str] = None,
                     status: Optional[str] = None,
                     vpc_id: Optional[str] = None,
                     opts: Optional[InvokeOptions] = None) -> GetGatewaysResult
    def get_gateways_output(business_status: Optional[pulumi.Input[str]] = None,
                     enable_ipsec: Optional[pulumi.Input[bool]] = None,
                     ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                     include_reservation_data: Optional[pulumi.Input[bool]] = None,
                     name_regex: Optional[pulumi.Input[str]] = None,
                     output_file: Optional[pulumi.Input[str]] = None,
                     ssl_vpn: Optional[pulumi.Input[str]] = None,
                     status: Optional[pulumi.Input[str]] = None,
                     vpc_id: Optional[pulumi.Input[str]] = None,
                     opts: Optional[InvokeOptions] = None) -> Output[GetGatewaysResult]
    func GetGateways(ctx *Context, args *GetGatewaysArgs, opts ...InvokeOption) (*GetGatewaysResult, error)
    func GetGatewaysOutput(ctx *Context, args *GetGatewaysOutputArgs, opts ...InvokeOption) GetGatewaysResultOutput

    > Note: This function is named GetGateways in the Go SDK.

    public static class GetGateways 
    {
        public static Task<GetGatewaysResult> InvokeAsync(GetGatewaysArgs args, InvokeOptions? opts = null)
        public static Output<GetGatewaysResult> Invoke(GetGatewaysInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetGatewaysResult> getGateways(GetGatewaysArgs args, InvokeOptions options)
    public static Output<GetGatewaysResult> getGateways(GetGatewaysArgs args, InvokeOptions options)
    
    fn::invoke:
      function: alicloud:vpn/getGateways:getGateways
      arguments:
        # arguments dictionary

    The following arguments are supported:

    BusinessStatus string
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    EnableIpsec bool
    Indicates whether the IPsec-VPN feature is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    Ids List<string>
    IDs of the VPN.
    IncludeReservationData bool
    Include ineffective ordering data.
    NameRegex string
    A regex string of VPN name.
    OutputFile string
    Save the result to the file.
    SslVpn string
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    Status string
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    VpcId string
    Use the VPC ID as the search key.
    BusinessStatus string
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    EnableIpsec bool
    Indicates whether the IPsec-VPN feature is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    Ids []string
    IDs of the VPN.
    IncludeReservationData bool
    Include ineffective ordering data.
    NameRegex string
    A regex string of VPN name.
    OutputFile string
    Save the result to the file.
    SslVpn string
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    Status string
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    VpcId string
    Use the VPC ID as the search key.
    businessStatus String
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    enableIpsec Boolean
    Indicates whether the IPsec-VPN feature is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    ids List<String>
    IDs of the VPN.
    includeReservationData Boolean
    Include ineffective ordering data.
    nameRegex String
    A regex string of VPN name.
    outputFile String
    Save the result to the file.
    sslVpn String
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    status String
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    vpcId String
    Use the VPC ID as the search key.
    businessStatus string
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    enableIpsec boolean
    Indicates whether the IPsec-VPN feature is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    ids string[]
    IDs of the VPN.
    includeReservationData boolean
    Include ineffective ordering data.
    nameRegex string
    A regex string of VPN name.
    outputFile string
    Save the result to the file.
    sslVpn string
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    status string
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    vpcId string
    Use the VPC ID as the search key.
    business_status str
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    enable_ipsec bool
    Indicates whether the IPsec-VPN feature is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    ids Sequence[str]
    IDs of the VPN.
    include_reservation_data bool
    Include ineffective ordering data.
    name_regex str
    A regex string of VPN name.
    output_file str
    Save the result to the file.
    ssl_vpn str
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    status str
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    vpc_id str
    Use the VPC ID as the search key.
    businessStatus String
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    enableIpsec Boolean
    Indicates whether the IPsec-VPN feature is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    ids List<String>
    IDs of the VPN.
    includeReservationData Boolean
    Include ineffective ordering data.
    nameRegex String
    A regex string of VPN name.
    outputFile String
    Save the result to the file.
    sslVpn String
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    status String
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    vpcId String
    Use the VPC ID as the search key.

    getGateways Result

    The following output properties are available:

    Gateways List<Pulumi.AliCloud.Vpn.Outputs.GetGatewaysGateway>
    A list of VPN gateways. Each element contains the following attributes:
    Id string
    The provider-assigned unique ID for this managed resource.
    Ids List<string>
    IDs of the VPN.
    Names List<string>
    names of the VPN.
    BusinessStatus string
    The business status of the VPN gateway.
    EnableIpsec bool
    Whether the ipsec function is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    IncludeReservationData bool
    NameRegex string
    OutputFile string
    SslVpn string
    Whether the ssl function is enabled.
    Status string
    The status of the VPN
    VpcId string
    ID of the VPC that the VPN belongs.
    Gateways []GetGatewaysGateway
    A list of VPN gateways. Each element contains the following attributes:
    Id string
    The provider-assigned unique ID for this managed resource.
    Ids []string
    IDs of the VPN.
    Names []string
    names of the VPN.
    BusinessStatus string
    The business status of the VPN gateway.
    EnableIpsec bool
    Whether the ipsec function is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    IncludeReservationData bool
    NameRegex string
    OutputFile string
    SslVpn string
    Whether the ssl function is enabled.
    Status string
    The status of the VPN
    VpcId string
    ID of the VPC that the VPN belongs.
    gateways List<GetGatewaysGateway>
    A list of VPN gateways. Each element contains the following attributes:
    id String
    The provider-assigned unique ID for this managed resource.
    ids List<String>
    IDs of the VPN.
    names List<String>
    names of the VPN.
    businessStatus String
    The business status of the VPN gateway.
    enableIpsec Boolean
    Whether the ipsec function is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    includeReservationData Boolean
    nameRegex String
    outputFile String
    sslVpn String
    Whether the ssl function is enabled.
    status String
    The status of the VPN
    vpcId String
    ID of the VPC that the VPN belongs.
    gateways GetGatewaysGateway[]
    A list of VPN gateways. Each element contains the following attributes:
    id string
    The provider-assigned unique ID for this managed resource.
    ids string[]
    IDs of the VPN.
    names string[]
    names of the VPN.
    businessStatus string
    The business status of the VPN gateway.
    enableIpsec boolean
    Whether the ipsec function is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    includeReservationData boolean
    nameRegex string
    outputFile string
    sslVpn string
    Whether the ssl function is enabled.
    status string
    The status of the VPN
    vpcId string
    ID of the VPC that the VPN belongs.
    gateways Sequence[GetGatewaysGateway]
    A list of VPN gateways. Each element contains the following attributes:
    id str
    The provider-assigned unique ID for this managed resource.
    ids Sequence[str]
    IDs of the VPN.
    names Sequence[str]
    names of the VPN.
    business_status str
    The business status of the VPN gateway.
    enable_ipsec bool
    Whether the ipsec function is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    include_reservation_data bool
    name_regex str
    output_file str
    ssl_vpn str
    Whether the ssl function is enabled.
    status str
    The status of the VPN
    vpc_id str
    ID of the VPC that the VPN belongs.
    gateways List<Property Map>
    A list of VPN gateways. Each element contains the following attributes:
    id String
    The provider-assigned unique ID for this managed resource.
    ids List<String>
    IDs of the VPN.
    names List<String>
    names of the VPN.
    businessStatus String
    The business status of the VPN gateway.
    enableIpsec Boolean
    Whether the ipsec function is enabled.

    Deprecated: Field 'enable_ipsec' has been deprecated from provider version 1.193.0 and it will be removed in the future version.

    includeReservationData Boolean
    nameRegex String
    outputFile String
    sslVpn String
    Whether the ssl function is enabled.
    status String
    The status of the VPN
    vpcId String
    ID of the VPC that the VPN belongs.

    Supporting Types

    GetGatewaysGateway

    AutoPropagate string
    Whether to automatically propagate BGP routes to the VPC. Valid values: true, false.
    BusinessStatus string
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    CreateTime string
    The creation time of the VPN gateway.
    Description string
    The description of the VPN
    DisasterRecoveryInternetIp string
    The backup public IP address of the VPN gateway. The second IP address assigned by the system to create an IPsec-VPN connection. This parameter is returned only when the VPN gateway supports the dual-tunnel mode.
    DisasterRecoveryVswitchId string
    • The ID of the backup vSwitch to which the VPN gateway is attached.
    EnableIpsec string
    Indicates whether the IPsec-VPN feature is enabled.
    EnableSsl string
    Whether the ssl function is enabled. It has been deprecated from provider version 1.243.0, and using ssl_vpn instead.
    EndTime string
    The expiration time of the VPN gateway.
    Id string
    ID of the VPN.
    InstanceChargeType string
    The charge type of the VPN gateway.
    InternetIp string
    The internet ip of the VPN.
    Name string
    The name of the VPN.
    NetworkType string
    The network type of the VPN gateway.
    ResourceGroupId string
    The ID of the resource group.
    Specification string
    The Specification of the VPN
    SslConnections int
    Total count of ssl vpn connections.
    SslVpn string
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    SslVpnInternetIp string
    The IP address of the SSL-VPN connection. This parameter is returned only when the VPN gateway is a public VPN gateway and supports only the single-tunnel mode. In addition, the VPN gateway must have the SSL-VPN feature enabled.
    Status string
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    Tags Dictionary<string, string>
    The Tag of.
    VpcId string
    Use the VPC ID as the search key.
    VpnType string
    • The VPN gateway type. Value: Normal (default): Normal type. NationalStandard: National Secret type.
    VswitchId string
    • The ID of the vSwitch to which the VPN gateway is attached.
    AutoPropagate string
    Whether to automatically propagate BGP routes to the VPC. Valid values: true, false.
    BusinessStatus string
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    CreateTime string
    The creation time of the VPN gateway.
    Description string
    The description of the VPN
    DisasterRecoveryInternetIp string
    The backup public IP address of the VPN gateway. The second IP address assigned by the system to create an IPsec-VPN connection. This parameter is returned only when the VPN gateway supports the dual-tunnel mode.
    DisasterRecoveryVswitchId string
    • The ID of the backup vSwitch to which the VPN gateway is attached.
    EnableIpsec string
    Indicates whether the IPsec-VPN feature is enabled.
    EnableSsl string
    Whether the ssl function is enabled. It has been deprecated from provider version 1.243.0, and using ssl_vpn instead.
    EndTime string
    The expiration time of the VPN gateway.
    Id string
    ID of the VPN.
    InstanceChargeType string
    The charge type of the VPN gateway.
    InternetIp string
    The internet ip of the VPN.
    Name string
    The name of the VPN.
    NetworkType string
    The network type of the VPN gateway.
    ResourceGroupId string
    The ID of the resource group.
    Specification string
    The Specification of the VPN
    SslConnections int
    Total count of ssl vpn connections.
    SslVpn string
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    SslVpnInternetIp string
    The IP address of the SSL-VPN connection. This parameter is returned only when the VPN gateway is a public VPN gateway and supports only the single-tunnel mode. In addition, the VPN gateway must have the SSL-VPN feature enabled.
    Status string
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    Tags map[string]string
    The Tag of.
    VpcId string
    Use the VPC ID as the search key.
    VpnType string
    • The VPN gateway type. Value: Normal (default): Normal type. NationalStandard: National Secret type.
    VswitchId string
    • The ID of the vSwitch to which the VPN gateway is attached.
    autoPropagate String
    Whether to automatically propagate BGP routes to the VPC. Valid values: true, false.
    businessStatus String
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    createTime String
    The creation time of the VPN gateway.
    description String
    The description of the VPN
    disasterRecoveryInternetIp String
    The backup public IP address of the VPN gateway. The second IP address assigned by the system to create an IPsec-VPN connection. This parameter is returned only when the VPN gateway supports the dual-tunnel mode.
    disasterRecoveryVswitchId String
    • The ID of the backup vSwitch to which the VPN gateway is attached.
    enableIpsec String
    Indicates whether the IPsec-VPN feature is enabled.
    enableSsl String
    Whether the ssl function is enabled. It has been deprecated from provider version 1.243.0, and using ssl_vpn instead.
    endTime String
    The expiration time of the VPN gateway.
    id String
    ID of the VPN.
    instanceChargeType String
    The charge type of the VPN gateway.
    internetIp String
    The internet ip of the VPN.
    name String
    The name of the VPN.
    networkType String
    The network type of the VPN gateway.
    resourceGroupId String
    The ID of the resource group.
    specification String
    The Specification of the VPN
    sslConnections Integer
    Total count of ssl vpn connections.
    sslVpn String
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    sslVpnInternetIp String
    The IP address of the SSL-VPN connection. This parameter is returned only when the VPN gateway is a public VPN gateway and supports only the single-tunnel mode. In addition, the VPN gateway must have the SSL-VPN feature enabled.
    status String
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    tags Map<String,String>
    The Tag of.
    vpcId String
    Use the VPC ID as the search key.
    vpnType String
    • The VPN gateway type. Value: Normal (default): Normal type. NationalStandard: National Secret type.
    vswitchId String
    • The ID of the vSwitch to which the VPN gateway is attached.
    autoPropagate string
    Whether to automatically propagate BGP routes to the VPC. Valid values: true, false.
    businessStatus string
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    createTime string
    The creation time of the VPN gateway.
    description string
    The description of the VPN
    disasterRecoveryInternetIp string
    The backup public IP address of the VPN gateway. The second IP address assigned by the system to create an IPsec-VPN connection. This parameter is returned only when the VPN gateway supports the dual-tunnel mode.
    disasterRecoveryVswitchId string
    • The ID of the backup vSwitch to which the VPN gateway is attached.
    enableIpsec string
    Indicates whether the IPsec-VPN feature is enabled.
    enableSsl string
    Whether the ssl function is enabled. It has been deprecated from provider version 1.243.0, and using ssl_vpn instead.
    endTime string
    The expiration time of the VPN gateway.
    id string
    ID of the VPN.
    instanceChargeType string
    The charge type of the VPN gateway.
    internetIp string
    The internet ip of the VPN.
    name string
    The name of the VPN.
    networkType string
    The network type of the VPN gateway.
    resourceGroupId string
    The ID of the resource group.
    specification string
    The Specification of the VPN
    sslConnections number
    Total count of ssl vpn connections.
    sslVpn string
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    sslVpnInternetIp string
    The IP address of the SSL-VPN connection. This parameter is returned only when the VPN gateway is a public VPN gateway and supports only the single-tunnel mode. In addition, the VPN gateway must have the SSL-VPN feature enabled.
    status string
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    tags {[key: string]: string}
    The Tag of.
    vpcId string
    Use the VPC ID as the search key.
    vpnType string
    • The VPN gateway type. Value: Normal (default): Normal type. NationalStandard: National Secret type.
    vswitchId string
    • The ID of the vSwitch to which the VPN gateway is attached.
    auto_propagate str
    Whether to automatically propagate BGP routes to the VPC. Valid values: true, false.
    business_status str
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    create_time str
    The creation time of the VPN gateway.
    description str
    The description of the VPN
    disaster_recovery_internet_ip str
    The backup public IP address of the VPN gateway. The second IP address assigned by the system to create an IPsec-VPN connection. This parameter is returned only when the VPN gateway supports the dual-tunnel mode.
    disaster_recovery_vswitch_id str
    • The ID of the backup vSwitch to which the VPN gateway is attached.
    enable_ipsec str
    Indicates whether the IPsec-VPN feature is enabled.
    enable_ssl str
    Whether the ssl function is enabled. It has been deprecated from provider version 1.243.0, and using ssl_vpn instead.
    end_time str
    The expiration time of the VPN gateway.
    id str
    ID of the VPN.
    instance_charge_type str
    The charge type of the VPN gateway.
    internet_ip str
    The internet ip of the VPN.
    name str
    The name of the VPN.
    network_type str
    The network type of the VPN gateway.
    resource_group_id str
    The ID of the resource group.
    specification str
    The Specification of the VPN
    ssl_connections int
    Total count of ssl vpn connections.
    ssl_vpn str
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    ssl_vpn_internet_ip str
    The IP address of the SSL-VPN connection. This parameter is returned only when the VPN gateway is a public VPN gateway and supports only the single-tunnel mode. In addition, the VPN gateway must have the SSL-VPN feature enabled.
    status str
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    tags Mapping[str, str]
    The Tag of.
    vpc_id str
    Use the VPC ID as the search key.
    vpn_type str
    • The VPN gateway type. Value: Normal (default): Normal type. NationalStandard: National Secret type.
    vswitch_id str
    • The ID of the vSwitch to which the VPN gateway is attached.
    autoPropagate String
    Whether to automatically propagate BGP routes to the VPC. Valid values: true, false.
    businessStatus String
    Limit search to specific business status - valid value is "Normal", "FinancialLocked".
    createTime String
    The creation time of the VPN gateway.
    description String
    The description of the VPN
    disasterRecoveryInternetIp String
    The backup public IP address of the VPN gateway. The second IP address assigned by the system to create an IPsec-VPN connection. This parameter is returned only when the VPN gateway supports the dual-tunnel mode.
    disasterRecoveryVswitchId String
    • The ID of the backup vSwitch to which the VPN gateway is attached.
    enableIpsec String
    Indicates whether the IPsec-VPN feature is enabled.
    enableSsl String
    Whether the ssl function is enabled. It has been deprecated from provider version 1.243.0, and using ssl_vpn instead.
    endTime String
    The expiration time of the VPN gateway.
    id String
    ID of the VPN.
    instanceChargeType String
    The charge type of the VPN gateway.
    internetIp String
    The internet ip of the VPN.
    name String
    The name of the VPN.
    networkType String
    The network type of the VPN gateway.
    resourceGroupId String
    The ID of the resource group.
    specification String
    The Specification of the VPN
    sslConnections Number
    Total count of ssl vpn connections.
    sslVpn String
    Indicates whether the SSL-VPN feature is enabled. Valid value is enable, disable.
    sslVpnInternetIp String
    The IP address of the SSL-VPN connection. This parameter is returned only when the VPN gateway is a public VPN gateway and supports only the single-tunnel mode. In addition, the VPN gateway must have the SSL-VPN feature enabled.
    status String
    Limit search to specific status - valid value is "Init", "Provisioning", "Active", "Updating", "Deleting".
    tags Map<String>
    The Tag of.
    vpcId String
    Use the VPC ID as the search key.
    vpnType String
    • The VPN gateway type. Value: Normal (default): Normal type. NationalStandard: National Secret type.
    vswitchId String
    • The ID of the vSwitch to which the VPN gateway is attached.

    Package Details

    Repository
    Alibaba Cloud pulumi/pulumi-alicloud
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the alicloud Terraform Provider.
    alicloud logo
    Alibaba Cloud v3.85.0 published on Tuesday, Sep 9, 2025 by Pulumi