1. Packages
  2. Azure Classic
  3. API Docs
  4. network
  5. VpnGatewayConnection

We recommend using Azure Native.

Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi

azure.network.VpnGatewayConnection

Explore with Pulumi AI

azure logo

We recommend using Azure Native.

Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi

    Manages a VPN Gateway Connection.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const example = new azure.core.ResourceGroup("example", {
        name: "example-resources",
        location: "West Europe",
    });
    const exampleVirtualWan = new azure.network.VirtualWan("example", {
        name: "example-vwan",
        resourceGroupName: example.name,
        location: example.location,
    });
    const exampleVirtualHub = new azure.network.VirtualHub("example", {
        name: "example-hub",
        resourceGroupName: example.name,
        location: example.location,
        virtualWanId: exampleVirtualWan.id,
        addressPrefix: "10.0.0.0/24",
    });
    const exampleVpnGateway = new azure.network.VpnGateway("example", {
        name: "example-vpng",
        location: example.location,
        resourceGroupName: example.name,
        virtualHubId: exampleVirtualHub.id,
    });
    const exampleVpnSite = new azure.network.VpnSite("example", {
        name: "example-vpn-site",
        location: example.location,
        resourceGroupName: example.name,
        virtualWanId: exampleVirtualWan.id,
        links: [
            {
                name: "link1",
                ipAddress: "10.1.0.0",
            },
            {
                name: "link2",
                ipAddress: "10.2.0.0",
            },
        ],
    });
    const exampleVpnGatewayConnection = new azure.network.VpnGatewayConnection("example", {
        name: "example",
        vpnGatewayId: exampleVpnGateway.id,
        remoteVpnSiteId: exampleVpnSite.id,
        vpnLinks: [
            {
                name: "link1",
                vpnSiteLinkId: exampleVpnSite.links.apply(links => links?.[0]?.id),
            },
            {
                name: "link2",
                vpnSiteLinkId: exampleVpnSite.links.apply(links => links?.[1]?.id),
            },
        ],
    });
    
    import pulumi
    import pulumi_azure as azure
    
    example = azure.core.ResourceGroup("example",
        name="example-resources",
        location="West Europe")
    example_virtual_wan = azure.network.VirtualWan("example",
        name="example-vwan",
        resource_group_name=example.name,
        location=example.location)
    example_virtual_hub = azure.network.VirtualHub("example",
        name="example-hub",
        resource_group_name=example.name,
        location=example.location,
        virtual_wan_id=example_virtual_wan.id,
        address_prefix="10.0.0.0/24")
    example_vpn_gateway = azure.network.VpnGateway("example",
        name="example-vpng",
        location=example.location,
        resource_group_name=example.name,
        virtual_hub_id=example_virtual_hub.id)
    example_vpn_site = azure.network.VpnSite("example",
        name="example-vpn-site",
        location=example.location,
        resource_group_name=example.name,
        virtual_wan_id=example_virtual_wan.id,
        links=[
            azure.network.VpnSiteLinkArgs(
                name="link1",
                ip_address="10.1.0.0",
            ),
            azure.network.VpnSiteLinkArgs(
                name="link2",
                ip_address="10.2.0.0",
            ),
        ])
    example_vpn_gateway_connection = azure.network.VpnGatewayConnection("example",
        name="example",
        vpn_gateway_id=example_vpn_gateway.id,
        remote_vpn_site_id=example_vpn_site.id,
        vpn_links=[
            azure.network.VpnGatewayConnectionVpnLinkArgs(
                name="link1",
                vpn_site_link_id=example_vpn_site.links[0].id,
            ),
            azure.network.VpnGatewayConnectionVpnLinkArgs(
                name="link2",
                vpn_site_link_id=example_vpn_site.links[1].id,
            ),
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
    			Name:     pulumi.String("example-resources"),
    			Location: pulumi.String("West Europe"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleVirtualWan, err := network.NewVirtualWan(ctx, "example", &network.VirtualWanArgs{
    			Name:              pulumi.String("example-vwan"),
    			ResourceGroupName: example.Name,
    			Location:          example.Location,
    		})
    		if err != nil {
    			return err
    		}
    		exampleVirtualHub, err := network.NewVirtualHub(ctx, "example", &network.VirtualHubArgs{
    			Name:              pulumi.String("example-hub"),
    			ResourceGroupName: example.Name,
    			Location:          example.Location,
    			VirtualWanId:      exampleVirtualWan.ID(),
    			AddressPrefix:     pulumi.String("10.0.0.0/24"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleVpnGateway, err := network.NewVpnGateway(ctx, "example", &network.VpnGatewayArgs{
    			Name:              pulumi.String("example-vpng"),
    			Location:          example.Location,
    			ResourceGroupName: example.Name,
    			VirtualHubId:      exampleVirtualHub.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		exampleVpnSite, err := network.NewVpnSite(ctx, "example", &network.VpnSiteArgs{
    			Name:              pulumi.String("example-vpn-site"),
    			Location:          example.Location,
    			ResourceGroupName: example.Name,
    			VirtualWanId:      exampleVirtualWan.ID(),
    			Links: network.VpnSiteLinkArray{
    				&network.VpnSiteLinkArgs{
    					Name:      pulumi.String("link1"),
    					IpAddress: pulumi.String("10.1.0.0"),
    				},
    				&network.VpnSiteLinkArgs{
    					Name:      pulumi.String("link2"),
    					IpAddress: pulumi.String("10.2.0.0"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = network.NewVpnGatewayConnection(ctx, "example", &network.VpnGatewayConnectionArgs{
    			Name:            pulumi.String("example"),
    			VpnGatewayId:    exampleVpnGateway.ID(),
    			RemoteVpnSiteId: exampleVpnSite.ID(),
    			VpnLinks: network.VpnGatewayConnectionVpnLinkArray{
    				&network.VpnGatewayConnectionVpnLinkArgs{
    					Name: pulumi.String("link1"),
    					VpnSiteLinkId: exampleVpnSite.Links.ApplyT(func(links []network.VpnSiteLink) (*string, error) {
    						return &links[0].Id, nil
    					}).(pulumi.StringPtrOutput),
    				},
    				&network.VpnGatewayConnectionVpnLinkArgs{
    					Name: pulumi.String("link2"),
    					VpnSiteLinkId: exampleVpnSite.Links.ApplyT(func(links []network.VpnSiteLink) (*string, error) {
    						return &links[1].Id, nil
    					}).(pulumi.StringPtrOutput),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Azure.Core.ResourceGroup("example", new()
        {
            Name = "example-resources",
            Location = "West Europe",
        });
    
        var exampleVirtualWan = new Azure.Network.VirtualWan("example", new()
        {
            Name = "example-vwan",
            ResourceGroupName = example.Name,
            Location = example.Location,
        });
    
        var exampleVirtualHub = new Azure.Network.VirtualHub("example", new()
        {
            Name = "example-hub",
            ResourceGroupName = example.Name,
            Location = example.Location,
            VirtualWanId = exampleVirtualWan.Id,
            AddressPrefix = "10.0.0.0/24",
        });
    
        var exampleVpnGateway = new Azure.Network.VpnGateway("example", new()
        {
            Name = "example-vpng",
            Location = example.Location,
            ResourceGroupName = example.Name,
            VirtualHubId = exampleVirtualHub.Id,
        });
    
        var exampleVpnSite = new Azure.Network.VpnSite("example", new()
        {
            Name = "example-vpn-site",
            Location = example.Location,
            ResourceGroupName = example.Name,
            VirtualWanId = exampleVirtualWan.Id,
            Links = new[]
            {
                new Azure.Network.Inputs.VpnSiteLinkArgs
                {
                    Name = "link1",
                    IpAddress = "10.1.0.0",
                },
                new Azure.Network.Inputs.VpnSiteLinkArgs
                {
                    Name = "link2",
                    IpAddress = "10.2.0.0",
                },
            },
        });
    
        var exampleVpnGatewayConnection = new Azure.Network.VpnGatewayConnection("example", new()
        {
            Name = "example",
            VpnGatewayId = exampleVpnGateway.Id,
            RemoteVpnSiteId = exampleVpnSite.Id,
            VpnLinks = new[]
            {
                new Azure.Network.Inputs.VpnGatewayConnectionVpnLinkArgs
                {
                    Name = "link1",
                    VpnSiteLinkId = exampleVpnSite.Links.Apply(links => links[0]?.Id),
                },
                new Azure.Network.Inputs.VpnGatewayConnectionVpnLinkArgs
                {
                    Name = "link2",
                    VpnSiteLinkId = exampleVpnSite.Links.Apply(links => links[1]?.Id),
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azure.core.ResourceGroup;
    import com.pulumi.azure.core.ResourceGroupArgs;
    import com.pulumi.azure.network.VirtualWan;
    import com.pulumi.azure.network.VirtualWanArgs;
    import com.pulumi.azure.network.VirtualHub;
    import com.pulumi.azure.network.VirtualHubArgs;
    import com.pulumi.azure.network.VpnGateway;
    import com.pulumi.azure.network.VpnGatewayArgs;
    import com.pulumi.azure.network.VpnSite;
    import com.pulumi.azure.network.VpnSiteArgs;
    import com.pulumi.azure.network.inputs.VpnSiteLinkArgs;
    import com.pulumi.azure.network.VpnGatewayConnection;
    import com.pulumi.azure.network.VpnGatewayConnectionArgs;
    import com.pulumi.azure.network.inputs.VpnGatewayConnectionVpnLinkArgs;
    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) {
            var example = new ResourceGroup("example", ResourceGroupArgs.builder()
                .name("example-resources")
                .location("West Europe")
                .build());
    
            var exampleVirtualWan = new VirtualWan("exampleVirtualWan", VirtualWanArgs.builder()
                .name("example-vwan")
                .resourceGroupName(example.name())
                .location(example.location())
                .build());
    
            var exampleVirtualHub = new VirtualHub("exampleVirtualHub", VirtualHubArgs.builder()
                .name("example-hub")
                .resourceGroupName(example.name())
                .location(example.location())
                .virtualWanId(exampleVirtualWan.id())
                .addressPrefix("10.0.0.0/24")
                .build());
    
            var exampleVpnGateway = new VpnGateway("exampleVpnGateway", VpnGatewayArgs.builder()
                .name("example-vpng")
                .location(example.location())
                .resourceGroupName(example.name())
                .virtualHubId(exampleVirtualHub.id())
                .build());
    
            var exampleVpnSite = new VpnSite("exampleVpnSite", VpnSiteArgs.builder()
                .name("example-vpn-site")
                .location(example.location())
                .resourceGroupName(example.name())
                .virtualWanId(exampleVirtualWan.id())
                .links(            
                    VpnSiteLinkArgs.builder()
                        .name("link1")
                        .ipAddress("10.1.0.0")
                        .build(),
                    VpnSiteLinkArgs.builder()
                        .name("link2")
                        .ipAddress("10.2.0.0")
                        .build())
                .build());
    
            var exampleVpnGatewayConnection = new VpnGatewayConnection("exampleVpnGatewayConnection", VpnGatewayConnectionArgs.builder()
                .name("example")
                .vpnGatewayId(exampleVpnGateway.id())
                .remoteVpnSiteId(exampleVpnSite.id())
                .vpnLinks(            
                    VpnGatewayConnectionVpnLinkArgs.builder()
                        .name("link1")
                        .vpnSiteLinkId(exampleVpnSite.links().applyValue(links -> links[0].id()))
                        .build(),
                    VpnGatewayConnectionVpnLinkArgs.builder()
                        .name("link2")
                        .vpnSiteLinkId(exampleVpnSite.links().applyValue(links -> links[1].id()))
                        .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: azure:core:ResourceGroup
        properties:
          name: example-resources
          location: West Europe
      exampleVirtualWan:
        type: azure:network:VirtualWan
        name: example
        properties:
          name: example-vwan
          resourceGroupName: ${example.name}
          location: ${example.location}
      exampleVirtualHub:
        type: azure:network:VirtualHub
        name: example
        properties:
          name: example-hub
          resourceGroupName: ${example.name}
          location: ${example.location}
          virtualWanId: ${exampleVirtualWan.id}
          addressPrefix: 10.0.0.0/24
      exampleVpnGateway:
        type: azure:network:VpnGateway
        name: example
        properties:
          name: example-vpng
          location: ${example.location}
          resourceGroupName: ${example.name}
          virtualHubId: ${exampleVirtualHub.id}
      exampleVpnSite:
        type: azure:network:VpnSite
        name: example
        properties:
          name: example-vpn-site
          location: ${example.location}
          resourceGroupName: ${example.name}
          virtualWanId: ${exampleVirtualWan.id}
          links:
            - name: link1
              ipAddress: 10.1.0.0
            - name: link2
              ipAddress: 10.2.0.0
      exampleVpnGatewayConnection:
        type: azure:network:VpnGatewayConnection
        name: example
        properties:
          name: example
          vpnGatewayId: ${exampleVpnGateway.id}
          remoteVpnSiteId: ${exampleVpnSite.id}
          vpnLinks:
            - name: link1
              vpnSiteLinkId: ${exampleVpnSite.links[0].id}
            - name: link2
              vpnSiteLinkId: ${exampleVpnSite.links[1].id}
    

    Create VpnGatewayConnection Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new VpnGatewayConnection(name: string, args: VpnGatewayConnectionArgs, opts?: CustomResourceOptions);
    @overload
    def VpnGatewayConnection(resource_name: str,
                             args: VpnGatewayConnectionArgs,
                             opts: Optional[ResourceOptions] = None)
    
    @overload
    def VpnGatewayConnection(resource_name: str,
                             opts: Optional[ResourceOptions] = None,
                             remote_vpn_site_id: Optional[str] = None,
                             vpn_gateway_id: Optional[str] = None,
                             vpn_links: Optional[Sequence[VpnGatewayConnectionVpnLinkArgs]] = None,
                             internet_security_enabled: Optional[bool] = None,
                             name: Optional[str] = None,
                             routing: Optional[VpnGatewayConnectionRoutingArgs] = None,
                             traffic_selector_policies: Optional[Sequence[VpnGatewayConnectionTrafficSelectorPolicyArgs]] = None)
    func NewVpnGatewayConnection(ctx *Context, name string, args VpnGatewayConnectionArgs, opts ...ResourceOption) (*VpnGatewayConnection, error)
    public VpnGatewayConnection(string name, VpnGatewayConnectionArgs args, CustomResourceOptions? opts = null)
    public VpnGatewayConnection(String name, VpnGatewayConnectionArgs args)
    public VpnGatewayConnection(String name, VpnGatewayConnectionArgs args, CustomResourceOptions options)
    
    type: azure:network:VpnGatewayConnection
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args VpnGatewayConnectionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args VpnGatewayConnectionArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args VpnGatewayConnectionArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args VpnGatewayConnectionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args VpnGatewayConnectionArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var vpnGatewayConnectionResource = new Azure.Network.VpnGatewayConnection("vpnGatewayConnectionResource", new()
    {
        RemoteVpnSiteId = "string",
        VpnGatewayId = "string",
        VpnLinks = new[]
        {
            new Azure.Network.Inputs.VpnGatewayConnectionVpnLinkArgs
            {
                Name = "string",
                VpnSiteLinkId = "string",
                IpsecPolicies = new[]
                {
                    new Azure.Network.Inputs.VpnGatewayConnectionVpnLinkIpsecPolicyArgs
                    {
                        DhGroup = "string",
                        EncryptionAlgorithm = "string",
                        IkeEncryptionAlgorithm = "string",
                        IkeIntegrityAlgorithm = "string",
                        IntegrityAlgorithm = "string",
                        PfsGroup = "string",
                        SaDataSizeKb = 0,
                        SaLifetimeSec = 0,
                    },
                },
                CustomBgpAddresses = new[]
                {
                    new Azure.Network.Inputs.VpnGatewayConnectionVpnLinkCustomBgpAddressArgs
                    {
                        IpAddress = "string",
                        IpConfigurationId = "string",
                    },
                },
                EgressNatRuleIds = new[]
                {
                    "string",
                },
                IngressNatRuleIds = new[]
                {
                    "string",
                },
                BandwidthMbps = 0,
                LocalAzureIpAddressEnabled = false,
                ConnectionMode = "string",
                PolicyBasedTrafficSelectorEnabled = false,
                Protocol = "string",
                RatelimitEnabled = false,
                RouteWeight = 0,
                SharedKey = "string",
                BgpEnabled = false,
            },
        },
        InternetSecurityEnabled = false,
        Name = "string",
        Routing = new Azure.Network.Inputs.VpnGatewayConnectionRoutingArgs
        {
            AssociatedRouteTable = "string",
            InboundRouteMapId = "string",
            OutboundRouteMapId = "string",
            PropagatedRouteTable = new Azure.Network.Inputs.VpnGatewayConnectionRoutingPropagatedRouteTableArgs
            {
                RouteTableIds = new[]
                {
                    "string",
                },
                Labels = new[]
                {
                    "string",
                },
            },
        },
        TrafficSelectorPolicies = new[]
        {
            new Azure.Network.Inputs.VpnGatewayConnectionTrafficSelectorPolicyArgs
            {
                LocalAddressRanges = new[]
                {
                    "string",
                },
                RemoteAddressRanges = new[]
                {
                    "string",
                },
            },
        },
    });
    
    example, err := network.NewVpnGatewayConnection(ctx, "vpnGatewayConnectionResource", &network.VpnGatewayConnectionArgs{
    	RemoteVpnSiteId: pulumi.String("string"),
    	VpnGatewayId:    pulumi.String("string"),
    	VpnLinks: network.VpnGatewayConnectionVpnLinkArray{
    		&network.VpnGatewayConnectionVpnLinkArgs{
    			Name:          pulumi.String("string"),
    			VpnSiteLinkId: pulumi.String("string"),
    			IpsecPolicies: network.VpnGatewayConnectionVpnLinkIpsecPolicyArray{
    				&network.VpnGatewayConnectionVpnLinkIpsecPolicyArgs{
    					DhGroup:                pulumi.String("string"),
    					EncryptionAlgorithm:    pulumi.String("string"),
    					IkeEncryptionAlgorithm: pulumi.String("string"),
    					IkeIntegrityAlgorithm:  pulumi.String("string"),
    					IntegrityAlgorithm:     pulumi.String("string"),
    					PfsGroup:               pulumi.String("string"),
    					SaDataSizeKb:           pulumi.Int(0),
    					SaLifetimeSec:          pulumi.Int(0),
    				},
    			},
    			CustomBgpAddresses: network.VpnGatewayConnectionVpnLinkCustomBgpAddressArray{
    				&network.VpnGatewayConnectionVpnLinkCustomBgpAddressArgs{
    					IpAddress:         pulumi.String("string"),
    					IpConfigurationId: pulumi.String("string"),
    				},
    			},
    			EgressNatRuleIds: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			IngressNatRuleIds: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			BandwidthMbps:                     pulumi.Int(0),
    			LocalAzureIpAddressEnabled:        pulumi.Bool(false),
    			ConnectionMode:                    pulumi.String("string"),
    			PolicyBasedTrafficSelectorEnabled: pulumi.Bool(false),
    			Protocol:                          pulumi.String("string"),
    			RatelimitEnabled:                  pulumi.Bool(false),
    			RouteWeight:                       pulumi.Int(0),
    			SharedKey:                         pulumi.String("string"),
    			BgpEnabled:                        pulumi.Bool(false),
    		},
    	},
    	InternetSecurityEnabled: pulumi.Bool(false),
    	Name:                    pulumi.String("string"),
    	Routing: &network.VpnGatewayConnectionRoutingArgs{
    		AssociatedRouteTable: pulumi.String("string"),
    		InboundRouteMapId:    pulumi.String("string"),
    		OutboundRouteMapId:   pulumi.String("string"),
    		PropagatedRouteTable: &network.VpnGatewayConnectionRoutingPropagatedRouteTableArgs{
    			RouteTableIds: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Labels: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    	},
    	TrafficSelectorPolicies: network.VpnGatewayConnectionTrafficSelectorPolicyArray{
    		&network.VpnGatewayConnectionTrafficSelectorPolicyArgs{
    			LocalAddressRanges: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			RemoteAddressRanges: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    	},
    })
    
    var vpnGatewayConnectionResource = new VpnGatewayConnection("vpnGatewayConnectionResource", VpnGatewayConnectionArgs.builder()
        .remoteVpnSiteId("string")
        .vpnGatewayId("string")
        .vpnLinks(VpnGatewayConnectionVpnLinkArgs.builder()
            .name("string")
            .vpnSiteLinkId("string")
            .ipsecPolicies(VpnGatewayConnectionVpnLinkIpsecPolicyArgs.builder()
                .dhGroup("string")
                .encryptionAlgorithm("string")
                .ikeEncryptionAlgorithm("string")
                .ikeIntegrityAlgorithm("string")
                .integrityAlgorithm("string")
                .pfsGroup("string")
                .saDataSizeKb(0)
                .saLifetimeSec(0)
                .build())
            .customBgpAddresses(VpnGatewayConnectionVpnLinkCustomBgpAddressArgs.builder()
                .ipAddress("string")
                .ipConfigurationId("string")
                .build())
            .egressNatRuleIds("string")
            .ingressNatRuleIds("string")
            .bandwidthMbps(0)
            .localAzureIpAddressEnabled(false)
            .connectionMode("string")
            .policyBasedTrafficSelectorEnabled(false)
            .protocol("string")
            .ratelimitEnabled(false)
            .routeWeight(0)
            .sharedKey("string")
            .bgpEnabled(false)
            .build())
        .internetSecurityEnabled(false)
        .name("string")
        .routing(VpnGatewayConnectionRoutingArgs.builder()
            .associatedRouteTable("string")
            .inboundRouteMapId("string")
            .outboundRouteMapId("string")
            .propagatedRouteTable(VpnGatewayConnectionRoutingPropagatedRouteTableArgs.builder()
                .routeTableIds("string")
                .labels("string")
                .build())
            .build())
        .trafficSelectorPolicies(VpnGatewayConnectionTrafficSelectorPolicyArgs.builder()
            .localAddressRanges("string")
            .remoteAddressRanges("string")
            .build())
        .build());
    
    vpn_gateway_connection_resource = azure.network.VpnGatewayConnection("vpnGatewayConnectionResource",
        remote_vpn_site_id="string",
        vpn_gateway_id="string",
        vpn_links=[azure.network.VpnGatewayConnectionVpnLinkArgs(
            name="string",
            vpn_site_link_id="string",
            ipsec_policies=[azure.network.VpnGatewayConnectionVpnLinkIpsecPolicyArgs(
                dh_group="string",
                encryption_algorithm="string",
                ike_encryption_algorithm="string",
                ike_integrity_algorithm="string",
                integrity_algorithm="string",
                pfs_group="string",
                sa_data_size_kb=0,
                sa_lifetime_sec=0,
            )],
            custom_bgp_addresses=[azure.network.VpnGatewayConnectionVpnLinkCustomBgpAddressArgs(
                ip_address="string",
                ip_configuration_id="string",
            )],
            egress_nat_rule_ids=["string"],
            ingress_nat_rule_ids=["string"],
            bandwidth_mbps=0,
            local_azure_ip_address_enabled=False,
            connection_mode="string",
            policy_based_traffic_selector_enabled=False,
            protocol="string",
            ratelimit_enabled=False,
            route_weight=0,
            shared_key="string",
            bgp_enabled=False,
        )],
        internet_security_enabled=False,
        name="string",
        routing=azure.network.VpnGatewayConnectionRoutingArgs(
            associated_route_table="string",
            inbound_route_map_id="string",
            outbound_route_map_id="string",
            propagated_route_table=azure.network.VpnGatewayConnectionRoutingPropagatedRouteTableArgs(
                route_table_ids=["string"],
                labels=["string"],
            ),
        ),
        traffic_selector_policies=[azure.network.VpnGatewayConnectionTrafficSelectorPolicyArgs(
            local_address_ranges=["string"],
            remote_address_ranges=["string"],
        )])
    
    const vpnGatewayConnectionResource = new azure.network.VpnGatewayConnection("vpnGatewayConnectionResource", {
        remoteVpnSiteId: "string",
        vpnGatewayId: "string",
        vpnLinks: [{
            name: "string",
            vpnSiteLinkId: "string",
            ipsecPolicies: [{
                dhGroup: "string",
                encryptionAlgorithm: "string",
                ikeEncryptionAlgorithm: "string",
                ikeIntegrityAlgorithm: "string",
                integrityAlgorithm: "string",
                pfsGroup: "string",
                saDataSizeKb: 0,
                saLifetimeSec: 0,
            }],
            customBgpAddresses: [{
                ipAddress: "string",
                ipConfigurationId: "string",
            }],
            egressNatRuleIds: ["string"],
            ingressNatRuleIds: ["string"],
            bandwidthMbps: 0,
            localAzureIpAddressEnabled: false,
            connectionMode: "string",
            policyBasedTrafficSelectorEnabled: false,
            protocol: "string",
            ratelimitEnabled: false,
            routeWeight: 0,
            sharedKey: "string",
            bgpEnabled: false,
        }],
        internetSecurityEnabled: false,
        name: "string",
        routing: {
            associatedRouteTable: "string",
            inboundRouteMapId: "string",
            outboundRouteMapId: "string",
            propagatedRouteTable: {
                routeTableIds: ["string"],
                labels: ["string"],
            },
        },
        trafficSelectorPolicies: [{
            localAddressRanges: ["string"],
            remoteAddressRanges: ["string"],
        }],
    });
    
    type: azure:network:VpnGatewayConnection
    properties:
        internetSecurityEnabled: false
        name: string
        remoteVpnSiteId: string
        routing:
            associatedRouteTable: string
            inboundRouteMapId: string
            outboundRouteMapId: string
            propagatedRouteTable:
                labels:
                    - string
                routeTableIds:
                    - string
        trafficSelectorPolicies:
            - localAddressRanges:
                - string
              remoteAddressRanges:
                - string
        vpnGatewayId: string
        vpnLinks:
            - bandwidthMbps: 0
              bgpEnabled: false
              connectionMode: string
              customBgpAddresses:
                - ipAddress: string
                  ipConfigurationId: string
              egressNatRuleIds:
                - string
              ingressNatRuleIds:
                - string
              ipsecPolicies:
                - dhGroup: string
                  encryptionAlgorithm: string
                  ikeEncryptionAlgorithm: string
                  ikeIntegrityAlgorithm: string
                  integrityAlgorithm: string
                  pfsGroup: string
                  saDataSizeKb: 0
                  saLifetimeSec: 0
              localAzureIpAddressEnabled: false
              name: string
              policyBasedTrafficSelectorEnabled: false
              protocol: string
              ratelimitEnabled: false
              routeWeight: 0
              sharedKey: string
              vpnSiteLinkId: string
    

    VpnGatewayConnection Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The VpnGatewayConnection resource accepts the following input properties:

    RemoteVpnSiteId string
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    VpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    VpnLinks List<VpnGatewayConnectionVpnLink>
    One or more vpn_link blocks as defined below.
    InternetSecurityEnabled bool
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    Name string
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    Routing VpnGatewayConnectionRouting
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    TrafficSelectorPolicies List<VpnGatewayConnectionTrafficSelectorPolicy>
    One or more traffic_selector_policy blocks as defined below.
    RemoteVpnSiteId string
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    VpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    VpnLinks []VpnGatewayConnectionVpnLinkArgs
    One or more vpn_link blocks as defined below.
    InternetSecurityEnabled bool
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    Name string
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    Routing VpnGatewayConnectionRoutingArgs
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    TrafficSelectorPolicies []VpnGatewayConnectionTrafficSelectorPolicyArgs
    One or more traffic_selector_policy blocks as defined below.
    remoteVpnSiteId String
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    vpnGatewayId String
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    vpnLinks List<VpnGatewayConnectionVpnLink>
    One or more vpn_link blocks as defined below.
    internetSecurityEnabled Boolean
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    name String
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    routing VpnGatewayConnectionRouting
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    trafficSelectorPolicies List<VpnGatewayConnectionTrafficSelectorPolicy>
    One or more traffic_selector_policy blocks as defined below.
    remoteVpnSiteId string
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    vpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    vpnLinks VpnGatewayConnectionVpnLink[]
    One or more vpn_link blocks as defined below.
    internetSecurityEnabled boolean
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    name string
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    routing VpnGatewayConnectionRouting
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    trafficSelectorPolicies VpnGatewayConnectionTrafficSelectorPolicy[]
    One or more traffic_selector_policy blocks as defined below.
    remote_vpn_site_id str
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    vpn_gateway_id str
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    vpn_links Sequence[VpnGatewayConnectionVpnLinkArgs]
    One or more vpn_link blocks as defined below.
    internet_security_enabled bool
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    name str
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    routing VpnGatewayConnectionRoutingArgs
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    traffic_selector_policies Sequence[VpnGatewayConnectionTrafficSelectorPolicyArgs]
    One or more traffic_selector_policy blocks as defined below.
    remoteVpnSiteId String
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    vpnGatewayId String
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    vpnLinks List<Property Map>
    One or more vpn_link blocks as defined below.
    internetSecurityEnabled Boolean
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    name String
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    routing Property Map
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    trafficSelectorPolicies List<Property Map>
    One or more traffic_selector_policy blocks as defined below.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the VpnGatewayConnection resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing VpnGatewayConnection Resource

    Get an existing VpnGatewayConnection resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: VpnGatewayConnectionState, opts?: CustomResourceOptions): VpnGatewayConnection
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            internet_security_enabled: Optional[bool] = None,
            name: Optional[str] = None,
            remote_vpn_site_id: Optional[str] = None,
            routing: Optional[VpnGatewayConnectionRoutingArgs] = None,
            traffic_selector_policies: Optional[Sequence[VpnGatewayConnectionTrafficSelectorPolicyArgs]] = None,
            vpn_gateway_id: Optional[str] = None,
            vpn_links: Optional[Sequence[VpnGatewayConnectionVpnLinkArgs]] = None) -> VpnGatewayConnection
    func GetVpnGatewayConnection(ctx *Context, name string, id IDInput, state *VpnGatewayConnectionState, opts ...ResourceOption) (*VpnGatewayConnection, error)
    public static VpnGatewayConnection Get(string name, Input<string> id, VpnGatewayConnectionState? state, CustomResourceOptions? opts = null)
    public static VpnGatewayConnection get(String name, Output<String> id, VpnGatewayConnectionState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    InternetSecurityEnabled bool
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    Name string
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    RemoteVpnSiteId string
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    Routing VpnGatewayConnectionRouting
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    TrafficSelectorPolicies List<VpnGatewayConnectionTrafficSelectorPolicy>
    One or more traffic_selector_policy blocks as defined below.
    VpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    VpnLinks List<VpnGatewayConnectionVpnLink>
    One or more vpn_link blocks as defined below.
    InternetSecurityEnabled bool
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    Name string
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    RemoteVpnSiteId string
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    Routing VpnGatewayConnectionRoutingArgs
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    TrafficSelectorPolicies []VpnGatewayConnectionTrafficSelectorPolicyArgs
    One or more traffic_selector_policy blocks as defined below.
    VpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    VpnLinks []VpnGatewayConnectionVpnLinkArgs
    One or more vpn_link blocks as defined below.
    internetSecurityEnabled Boolean
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    name String
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    remoteVpnSiteId String
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    routing VpnGatewayConnectionRouting
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    trafficSelectorPolicies List<VpnGatewayConnectionTrafficSelectorPolicy>
    One or more traffic_selector_policy blocks as defined below.
    vpnGatewayId String
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    vpnLinks List<VpnGatewayConnectionVpnLink>
    One or more vpn_link blocks as defined below.
    internetSecurityEnabled boolean
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    name string
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    remoteVpnSiteId string
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    routing VpnGatewayConnectionRouting
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    trafficSelectorPolicies VpnGatewayConnectionTrafficSelectorPolicy[]
    One or more traffic_selector_policy blocks as defined below.
    vpnGatewayId string
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    vpnLinks VpnGatewayConnectionVpnLink[]
    One or more vpn_link blocks as defined below.
    internet_security_enabled bool
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    name str
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    remote_vpn_site_id str
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    routing VpnGatewayConnectionRoutingArgs
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    traffic_selector_policies Sequence[VpnGatewayConnectionTrafficSelectorPolicyArgs]
    One or more traffic_selector_policy blocks as defined below.
    vpn_gateway_id str
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    vpn_links Sequence[VpnGatewayConnectionVpnLinkArgs]
    One or more vpn_link blocks as defined below.
    internetSecurityEnabled Boolean
    Whether Internet Security is enabled for this VPN Connection. Defaults to false.
    name String
    The name which should be used for this VPN Gateway Connection. Changing this forces a new VPN Gateway Connection to be created.
    remoteVpnSiteId String
    The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created.
    routing Property Map
    A routing block as defined below. If this is not specified, there will be a default route table created implicitly.
    trafficSelectorPolicies List<Property Map>
    One or more traffic_selector_policy blocks as defined below.
    vpnGatewayId String
    The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created.
    vpnLinks List<Property Map>
    One or more vpn_link blocks as defined below.

    Supporting Types

    VpnGatewayConnectionRouting, VpnGatewayConnectionRoutingArgs

    AssociatedRouteTable string
    The ID of the Route Table associated with this VPN Connection.
    InboundRouteMapId string
    The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes.
    OutboundRouteMapId string
    The resource ID of the Route Map associated with this Routing Configuration for outbound advertised routes.
    PropagatedRouteTable VpnGatewayConnectionRoutingPropagatedRouteTable
    A propagated_route_table block as defined below.
    AssociatedRouteTable string
    The ID of the Route Table associated with this VPN Connection.
    InboundRouteMapId string
    The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes.
    OutboundRouteMapId string
    The resource ID of the Route Map associated with this Routing Configuration for outbound advertised routes.
    PropagatedRouteTable VpnGatewayConnectionRoutingPropagatedRouteTable
    A propagated_route_table block as defined below.
    associatedRouteTable String
    The ID of the Route Table associated with this VPN Connection.
    inboundRouteMapId String
    The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes.
    outboundRouteMapId String
    The resource ID of the Route Map associated with this Routing Configuration for outbound advertised routes.
    propagatedRouteTable VpnGatewayConnectionRoutingPropagatedRouteTable
    A propagated_route_table block as defined below.
    associatedRouteTable string
    The ID of the Route Table associated with this VPN Connection.
    inboundRouteMapId string
    The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes.
    outboundRouteMapId string
    The resource ID of the Route Map associated with this Routing Configuration for outbound advertised routes.
    propagatedRouteTable VpnGatewayConnectionRoutingPropagatedRouteTable
    A propagated_route_table block as defined below.
    associated_route_table str
    The ID of the Route Table associated with this VPN Connection.
    inbound_route_map_id str
    The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes.
    outbound_route_map_id str
    The resource ID of the Route Map associated with this Routing Configuration for outbound advertised routes.
    propagated_route_table VpnGatewayConnectionRoutingPropagatedRouteTable
    A propagated_route_table block as defined below.
    associatedRouteTable String
    The ID of the Route Table associated with this VPN Connection.
    inboundRouteMapId String
    The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes.
    outboundRouteMapId String
    The resource ID of the Route Map associated with this Routing Configuration for outbound advertised routes.
    propagatedRouteTable Property Map
    A propagated_route_table block as defined below.

    VpnGatewayConnectionRoutingPropagatedRouteTable, VpnGatewayConnectionRoutingPropagatedRouteTableArgs

    RouteTableIds List<string>
    A list of Route Table IDs to associated with this VPN Gateway Connection.
    Labels List<string>
    A list of labels to assign to this route table.
    RouteTableIds []string
    A list of Route Table IDs to associated with this VPN Gateway Connection.
    Labels []string
    A list of labels to assign to this route table.
    routeTableIds List<String>
    A list of Route Table IDs to associated with this VPN Gateway Connection.
    labels List<String>
    A list of labels to assign to this route table.
    routeTableIds string[]
    A list of Route Table IDs to associated with this VPN Gateway Connection.
    labels string[]
    A list of labels to assign to this route table.
    route_table_ids Sequence[str]
    A list of Route Table IDs to associated with this VPN Gateway Connection.
    labels Sequence[str]
    A list of labels to assign to this route table.
    routeTableIds List<String>
    A list of Route Table IDs to associated with this VPN Gateway Connection.
    labels List<String>
    A list of labels to assign to this route table.

    VpnGatewayConnectionTrafficSelectorPolicy, VpnGatewayConnectionTrafficSelectorPolicyArgs

    LocalAddressRanges List<string>
    A list of local address spaces in CIDR format for this VPN Gateway Connection.
    RemoteAddressRanges List<string>
    A list of remote address spaces in CIDR format for this VPN Gateway Connection.
    LocalAddressRanges []string
    A list of local address spaces in CIDR format for this VPN Gateway Connection.
    RemoteAddressRanges []string
    A list of remote address spaces in CIDR format for this VPN Gateway Connection.
    localAddressRanges List<String>
    A list of local address spaces in CIDR format for this VPN Gateway Connection.
    remoteAddressRanges List<String>
    A list of remote address spaces in CIDR format for this VPN Gateway Connection.
    localAddressRanges string[]
    A list of local address spaces in CIDR format for this VPN Gateway Connection.
    remoteAddressRanges string[]
    A list of remote address spaces in CIDR format for this VPN Gateway Connection.
    local_address_ranges Sequence[str]
    A list of local address spaces in CIDR format for this VPN Gateway Connection.
    remote_address_ranges Sequence[str]
    A list of remote address spaces in CIDR format for this VPN Gateway Connection.
    localAddressRanges List<String>
    A list of local address spaces in CIDR format for this VPN Gateway Connection.
    remoteAddressRanges List<String>
    A list of remote address spaces in CIDR format for this VPN Gateway Connection.
    Name string
    The name which should be used for this VPN Link Connection.
    VpnSiteLinkId string
    The ID of the connected VPN Site Link. Changing this forces a new VPN Gateway Connection to be created.
    BandwidthMbps int
    The expected connection bandwidth in MBPS. Defaults to 10.
    BgpEnabled bool
    Should the BGP be enabled? Defaults to false. Changing this forces a new VPN Gateway Connection to be created.
    ConnectionMode string
    The connection mode of this VPN Link. Possible values are Default, InitiatorOnly and ResponderOnly. Defaults to Default.
    CustomBgpAddresses List<VpnGatewayConnectionVpnLinkCustomBgpAddress>
    One or more custom_bgp_address blocks as defined below.
    EgressNatRuleIds List<string>
    A list of the egress NAT Rule Ids.
    IngressNatRuleIds List<string>
    A list of the ingress NAT Rule Ids.
    IpsecPolicies List<VpnGatewayConnectionVpnLinkIpsecPolicy>
    One or more ipsec_policy blocks as defined above.
    LocalAzureIpAddressEnabled bool
    Whether to use local Azure IP to initiate connection? Defaults to false.
    PolicyBasedTrafficSelectorEnabled bool
    Whether to enable policy-based traffic selectors? Defaults to false.
    Protocol string
    The protocol used for this VPN Link Connection. Possible values are IKEv1 and IKEv2. Defaults to IKEv2.
    RatelimitEnabled bool
    Should the rate limit be enabled? Defaults to false.
    RouteWeight int
    Routing weight for this VPN Link Connection. Defaults to 0.
    SharedKey string
    SharedKey for this VPN Link Connection.
    Name string
    The name which should be used for this VPN Link Connection.
    VpnSiteLinkId string
    The ID of the connected VPN Site Link. Changing this forces a new VPN Gateway Connection to be created.
    BandwidthMbps int
    The expected connection bandwidth in MBPS. Defaults to 10.
    BgpEnabled bool
    Should the BGP be enabled? Defaults to false. Changing this forces a new VPN Gateway Connection to be created.
    ConnectionMode string
    The connection mode of this VPN Link. Possible values are Default, InitiatorOnly and ResponderOnly. Defaults to Default.
    CustomBgpAddresses []VpnGatewayConnectionVpnLinkCustomBgpAddress
    One or more custom_bgp_address blocks as defined below.
    EgressNatRuleIds []string
    A list of the egress NAT Rule Ids.
    IngressNatRuleIds []string
    A list of the ingress NAT Rule Ids.
    IpsecPolicies []VpnGatewayConnectionVpnLinkIpsecPolicy
    One or more ipsec_policy blocks as defined above.
    LocalAzureIpAddressEnabled bool
    Whether to use local Azure IP to initiate connection? Defaults to false.
    PolicyBasedTrafficSelectorEnabled bool
    Whether to enable policy-based traffic selectors? Defaults to false.
    Protocol string
    The protocol used for this VPN Link Connection. Possible values are IKEv1 and IKEv2. Defaults to IKEv2.
    RatelimitEnabled bool
    Should the rate limit be enabled? Defaults to false.
    RouteWeight int
    Routing weight for this VPN Link Connection. Defaults to 0.
    SharedKey string
    SharedKey for this VPN Link Connection.
    name String
    The name which should be used for this VPN Link Connection.
    vpnSiteLinkId String
    The ID of the connected VPN Site Link. Changing this forces a new VPN Gateway Connection to be created.
    bandwidthMbps Integer
    The expected connection bandwidth in MBPS. Defaults to 10.
    bgpEnabled Boolean
    Should the BGP be enabled? Defaults to false. Changing this forces a new VPN Gateway Connection to be created.
    connectionMode String
    The connection mode of this VPN Link. Possible values are Default, InitiatorOnly and ResponderOnly. Defaults to Default.
    customBgpAddresses List<VpnGatewayConnectionVpnLinkCustomBgpAddress>
    One or more custom_bgp_address blocks as defined below.
    egressNatRuleIds List<String>
    A list of the egress NAT Rule Ids.
    ingressNatRuleIds List<String>
    A list of the ingress NAT Rule Ids.
    ipsecPolicies List<VpnGatewayConnectionVpnLinkIpsecPolicy>
    One or more ipsec_policy blocks as defined above.
    localAzureIpAddressEnabled Boolean
    Whether to use local Azure IP to initiate connection? Defaults to false.
    policyBasedTrafficSelectorEnabled Boolean
    Whether to enable policy-based traffic selectors? Defaults to false.
    protocol String
    The protocol used for this VPN Link Connection. Possible values are IKEv1 and IKEv2. Defaults to IKEv2.
    ratelimitEnabled Boolean
    Should the rate limit be enabled? Defaults to false.
    routeWeight Integer
    Routing weight for this VPN Link Connection. Defaults to 0.
    sharedKey String
    SharedKey for this VPN Link Connection.
    name string
    The name which should be used for this VPN Link Connection.
    vpnSiteLinkId string
    The ID of the connected VPN Site Link. Changing this forces a new VPN Gateway Connection to be created.
    bandwidthMbps number
    The expected connection bandwidth in MBPS. Defaults to 10.
    bgpEnabled boolean
    Should the BGP be enabled? Defaults to false. Changing this forces a new VPN Gateway Connection to be created.
    connectionMode string
    The connection mode of this VPN Link. Possible values are Default, InitiatorOnly and ResponderOnly. Defaults to Default.
    customBgpAddresses VpnGatewayConnectionVpnLinkCustomBgpAddress[]
    One or more custom_bgp_address blocks as defined below.
    egressNatRuleIds string[]
    A list of the egress NAT Rule Ids.
    ingressNatRuleIds string[]
    A list of the ingress NAT Rule Ids.
    ipsecPolicies VpnGatewayConnectionVpnLinkIpsecPolicy[]
    One or more ipsec_policy blocks as defined above.
    localAzureIpAddressEnabled boolean
    Whether to use local Azure IP to initiate connection? Defaults to false.
    policyBasedTrafficSelectorEnabled boolean
    Whether to enable policy-based traffic selectors? Defaults to false.
    protocol string
    The protocol used for this VPN Link Connection. Possible values are IKEv1 and IKEv2. Defaults to IKEv2.
    ratelimitEnabled boolean
    Should the rate limit be enabled? Defaults to false.
    routeWeight number
    Routing weight for this VPN Link Connection. Defaults to 0.
    sharedKey string
    SharedKey for this VPN Link Connection.
    name str
    The name which should be used for this VPN Link Connection.
    vpn_site_link_id str
    The ID of the connected VPN Site Link. Changing this forces a new VPN Gateway Connection to be created.
    bandwidth_mbps int
    The expected connection bandwidth in MBPS. Defaults to 10.
    bgp_enabled bool
    Should the BGP be enabled? Defaults to false. Changing this forces a new VPN Gateway Connection to be created.
    connection_mode str
    The connection mode of this VPN Link. Possible values are Default, InitiatorOnly and ResponderOnly. Defaults to Default.
    custom_bgp_addresses Sequence[VpnGatewayConnectionVpnLinkCustomBgpAddress]
    One or more custom_bgp_address blocks as defined below.
    egress_nat_rule_ids Sequence[str]
    A list of the egress NAT Rule Ids.
    ingress_nat_rule_ids Sequence[str]
    A list of the ingress NAT Rule Ids.
    ipsec_policies Sequence[VpnGatewayConnectionVpnLinkIpsecPolicy]
    One or more ipsec_policy blocks as defined above.
    local_azure_ip_address_enabled bool
    Whether to use local Azure IP to initiate connection? Defaults to false.
    policy_based_traffic_selector_enabled bool
    Whether to enable policy-based traffic selectors? Defaults to false.
    protocol str
    The protocol used for this VPN Link Connection. Possible values are IKEv1 and IKEv2. Defaults to IKEv2.
    ratelimit_enabled bool
    Should the rate limit be enabled? Defaults to false.
    route_weight int
    Routing weight for this VPN Link Connection. Defaults to 0.
    shared_key str
    SharedKey for this VPN Link Connection.
    name String
    The name which should be used for this VPN Link Connection.
    vpnSiteLinkId String
    The ID of the connected VPN Site Link. Changing this forces a new VPN Gateway Connection to be created.
    bandwidthMbps Number
    The expected connection bandwidth in MBPS. Defaults to 10.
    bgpEnabled Boolean
    Should the BGP be enabled? Defaults to false. Changing this forces a new VPN Gateway Connection to be created.
    connectionMode String
    The connection mode of this VPN Link. Possible values are Default, InitiatorOnly and ResponderOnly. Defaults to Default.
    customBgpAddresses List<Property Map>
    One or more custom_bgp_address blocks as defined below.
    egressNatRuleIds List<String>
    A list of the egress NAT Rule Ids.
    ingressNatRuleIds List<String>
    A list of the ingress NAT Rule Ids.
    ipsecPolicies List<Property Map>
    One or more ipsec_policy blocks as defined above.
    localAzureIpAddressEnabled Boolean
    Whether to use local Azure IP to initiate connection? Defaults to false.
    policyBasedTrafficSelectorEnabled Boolean
    Whether to enable policy-based traffic selectors? Defaults to false.
    protocol String
    The protocol used for this VPN Link Connection. Possible values are IKEv1 and IKEv2. Defaults to IKEv2.
    ratelimitEnabled Boolean
    Should the rate limit be enabled? Defaults to false.
    routeWeight Number
    Routing weight for this VPN Link Connection. Defaults to 0.
    sharedKey String
    SharedKey for this VPN Link Connection.

    VpnGatewayConnectionVpnLinkCustomBgpAddress, VpnGatewayConnectionVpnLinkCustomBgpAddressArgs

    IpAddress string
    The custom bgp ip address which belongs to the IP Configuration.
    IpConfigurationId string
    The ID of the IP Configuration which belongs to the VPN Gateway.
    IpAddress string
    The custom bgp ip address which belongs to the IP Configuration.
    IpConfigurationId string
    The ID of the IP Configuration which belongs to the VPN Gateway.
    ipAddress String
    The custom bgp ip address which belongs to the IP Configuration.
    ipConfigurationId String
    The ID of the IP Configuration which belongs to the VPN Gateway.
    ipAddress string
    The custom bgp ip address which belongs to the IP Configuration.
    ipConfigurationId string
    The ID of the IP Configuration which belongs to the VPN Gateway.
    ip_address str
    The custom bgp ip address which belongs to the IP Configuration.
    ip_configuration_id str
    The ID of the IP Configuration which belongs to the VPN Gateway.
    ipAddress String
    The custom bgp ip address which belongs to the IP Configuration.
    ipConfigurationId String
    The ID of the IP Configuration which belongs to the VPN Gateway.

    VpnGatewayConnectionVpnLinkIpsecPolicy, VpnGatewayConnectionVpnLinkIpsecPolicyArgs

    DhGroup string
    The DH Group used in IKE Phase 1 for initial SA. Possible values are None, DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384.
    EncryptionAlgorithm string
    The IPSec encryption algorithm (IKE phase 1). Possible values are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, None.
    IkeEncryptionAlgorithm string
    The IKE encryption algorithm (IKE phase 2). Possible values are DES, DES3, AES128, AES192, AES256, GCMAES128, GCMAES256.
    IkeIntegrityAlgorithm string
    The IKE integrity algorithm (IKE phase 2). Possible values are MD5, SHA1, SHA256, SHA384, GCMAES128, GCMAES256.
    IntegrityAlgorithm string
    The IPSec integrity algorithm (IKE phase 1). Possible values are MD5, SHA1, SHA256, GCMAES128, GCMAES192, GCMAES256.
    PfsGroup string
    The Pfs Group used in IKE Phase 2 for the new child SA. Possible values are None, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM, ECP256, ECP384.
    SaDataSizeKb int
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for the site to site VPN tunnel.
    SaLifetimeSec int
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for the site to site VPN tunnel.
    DhGroup string
    The DH Group used in IKE Phase 1 for initial SA. Possible values are None, DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384.
    EncryptionAlgorithm string
    The IPSec encryption algorithm (IKE phase 1). Possible values are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, None.
    IkeEncryptionAlgorithm string
    The IKE encryption algorithm (IKE phase 2). Possible values are DES, DES3, AES128, AES192, AES256, GCMAES128, GCMAES256.
    IkeIntegrityAlgorithm string
    The IKE integrity algorithm (IKE phase 2). Possible values are MD5, SHA1, SHA256, SHA384, GCMAES128, GCMAES256.
    IntegrityAlgorithm string
    The IPSec integrity algorithm (IKE phase 1). Possible values are MD5, SHA1, SHA256, GCMAES128, GCMAES192, GCMAES256.
    PfsGroup string
    The Pfs Group used in IKE Phase 2 for the new child SA. Possible values are None, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM, ECP256, ECP384.
    SaDataSizeKb int
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for the site to site VPN tunnel.
    SaLifetimeSec int
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for the site to site VPN tunnel.
    dhGroup String
    The DH Group used in IKE Phase 1 for initial SA. Possible values are None, DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384.
    encryptionAlgorithm String
    The IPSec encryption algorithm (IKE phase 1). Possible values are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, None.
    ikeEncryptionAlgorithm String
    The IKE encryption algorithm (IKE phase 2). Possible values are DES, DES3, AES128, AES192, AES256, GCMAES128, GCMAES256.
    ikeIntegrityAlgorithm String
    The IKE integrity algorithm (IKE phase 2). Possible values are MD5, SHA1, SHA256, SHA384, GCMAES128, GCMAES256.
    integrityAlgorithm String
    The IPSec integrity algorithm (IKE phase 1). Possible values are MD5, SHA1, SHA256, GCMAES128, GCMAES192, GCMAES256.
    pfsGroup String
    The Pfs Group used in IKE Phase 2 for the new child SA. Possible values are None, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM, ECP256, ECP384.
    saDataSizeKb Integer
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for the site to site VPN tunnel.
    saLifetimeSec Integer
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for the site to site VPN tunnel.
    dhGroup string
    The DH Group used in IKE Phase 1 for initial SA. Possible values are None, DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384.
    encryptionAlgorithm string
    The IPSec encryption algorithm (IKE phase 1). Possible values are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, None.
    ikeEncryptionAlgorithm string
    The IKE encryption algorithm (IKE phase 2). Possible values are DES, DES3, AES128, AES192, AES256, GCMAES128, GCMAES256.
    ikeIntegrityAlgorithm string
    The IKE integrity algorithm (IKE phase 2). Possible values are MD5, SHA1, SHA256, SHA384, GCMAES128, GCMAES256.
    integrityAlgorithm string
    The IPSec integrity algorithm (IKE phase 1). Possible values are MD5, SHA1, SHA256, GCMAES128, GCMAES192, GCMAES256.
    pfsGroup string
    The Pfs Group used in IKE Phase 2 for the new child SA. Possible values are None, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM, ECP256, ECP384.
    saDataSizeKb number
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for the site to site VPN tunnel.
    saLifetimeSec number
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for the site to site VPN tunnel.
    dh_group str
    The DH Group used in IKE Phase 1 for initial SA. Possible values are None, DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384.
    encryption_algorithm str
    The IPSec encryption algorithm (IKE phase 1). Possible values are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, None.
    ike_encryption_algorithm str
    The IKE encryption algorithm (IKE phase 2). Possible values are DES, DES3, AES128, AES192, AES256, GCMAES128, GCMAES256.
    ike_integrity_algorithm str
    The IKE integrity algorithm (IKE phase 2). Possible values are MD5, SHA1, SHA256, SHA384, GCMAES128, GCMAES256.
    integrity_algorithm str
    The IPSec integrity algorithm (IKE phase 1). Possible values are MD5, SHA1, SHA256, GCMAES128, GCMAES192, GCMAES256.
    pfs_group str
    The Pfs Group used in IKE Phase 2 for the new child SA. Possible values are None, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM, ECP256, ECP384.
    sa_data_size_kb int
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for the site to site VPN tunnel.
    sa_lifetime_sec int
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for the site to site VPN tunnel.
    dhGroup String
    The DH Group used in IKE Phase 1 for initial SA. Possible values are None, DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384.
    encryptionAlgorithm String
    The IPSec encryption algorithm (IKE phase 1). Possible values are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, None.
    ikeEncryptionAlgorithm String
    The IKE encryption algorithm (IKE phase 2). Possible values are DES, DES3, AES128, AES192, AES256, GCMAES128, GCMAES256.
    ikeIntegrityAlgorithm String
    The IKE integrity algorithm (IKE phase 2). Possible values are MD5, SHA1, SHA256, SHA384, GCMAES128, GCMAES256.
    integrityAlgorithm String
    The IPSec integrity algorithm (IKE phase 1). Possible values are MD5, SHA1, SHA256, GCMAES128, GCMAES192, GCMAES256.
    pfsGroup String
    The Pfs Group used in IKE Phase 2 for the new child SA. Possible values are None, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM, ECP256, ECP384.
    saDataSizeKb Number
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for the site to site VPN tunnel.
    saLifetimeSec Number
    The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for the site to site VPN tunnel.

    Import

    VPN Gateway Connections can be imported using the resource id, e.g.

    $ pulumi import azure:network/vpnGatewayConnection:VpnGatewayConnection example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/conn1
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azurerm Terraform Provider.
    azure logo

    We recommend using Azure Native.

    Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi