Microsoft.Network connections 2020-03-01

The connections resource type can be deployed to: Resource groups.

To learn about resource group deployments, see Bicep or ARM template.

Template format

To create a Microsoft.Network/connections resource, add the following Bicep or JSON to your template.

resource symbolicname 'Microsoft.Network/connections@2020-03-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  properties: {
    authorizationKey: 'string'
    connectionProtocol: 'string'
    connectionType: 'string'
    dpdTimeoutSeconds: int
    enableBgp: bool
    expressRouteGatewayBypass: bool
    ipsecPolicies: [
      {
        dhGroup: 'string'
        ikeEncryption: 'string'
        ikeIntegrity: 'string'
        ipsecEncryption: 'string'
        ipsecIntegrity: 'string'
        pfsGroup: 'string'
        saDataSizeKilobytes: int
        saLifeTimeSeconds: int
      }
    ]
    localNetworkGateway2: {
      id: 'string'
      location: 'string'
      properties: {
        bgpSettings: {
          asn: int
          bgpPeeringAddress: 'string'
          bgpPeeringAddresses: [
            {
              customBgpIpAddresses: [ 'string' ]
              ipconfigurationId: 'string'
            }
          ]
          peerWeight: int
        }
        fqdn: 'string'
        gatewayIpAddress: 'string'
        localNetworkAddressSpace: {
          addressPrefixes: [ 'string' ]
        }
      }
      tags: {
        tagName1: 'tagValue1'
        tagName2: 'tagValue2'
      }
    }
    peer: {
      id: 'string'
    }
    routingWeight: int
    sharedKey: 'string'
    trafficSelectorPolicies: [
      {
        localAddressRanges: [ 'string' ]
        remoteAddressRanges: [ 'string' ]
      }
    ]
    useLocalAzureIpAddress: bool
    usePolicyBasedTrafficSelectors: bool
    virtualNetworkGateway1: {
      id: 'string'
      location: 'string'
      properties: {
        activeActive: bool
        bgpSettings: {
          asn: int
          bgpPeeringAddress: 'string'
          bgpPeeringAddresses: [
            {
              customBgpIpAddresses: [ 'string' ]
              ipconfigurationId: 'string'
            }
          ]
          peerWeight: int
        }
        customRoutes: {
          addressPrefixes: [ 'string' ]
        }
        enableBgp: bool
        enableDnsForwarding: bool
        enablePrivateIpAddress: bool
        gatewayDefaultSite: {
          id: 'string'
        }
        gatewayType: 'string'
        ipConfigurations: [
          {
            id: 'string'
            name: 'string'
            properties: {
              privateIPAllocationMethod: 'string'
              publicIPAddress: {
                id: 'string'
              }
              subnet: {
                id: 'string'
              }
            }
          }
        ]
        sku: {
          name: 'string'
          tier: 'string'
        }
        vpnClientConfiguration: {
          aadAudience: 'string'
          aadIssuer: 'string'
          aadTenant: 'string'
          radiusServerAddress: 'string'
          radiusServers: [
            {
              radiusServerAddress: 'string'
              radiusServerScore: int
              radiusServerSecret: 'string'
            }
          ]
          radiusServerSecret: 'string'
          vpnClientAddressPool: {
            addressPrefixes: [ 'string' ]
          }
          vpnClientIpsecPolicies: [
            {
              dhGroup: 'string'
              ikeEncryption: 'string'
              ikeIntegrity: 'string'
              ipsecEncryption: 'string'
              ipsecIntegrity: 'string'
              pfsGroup: 'string'
              saDataSizeKilobytes: int
              saLifeTimeSeconds: int
            }
          ]
          vpnClientProtocols: [ 'string' ]
          vpnClientRevokedCertificates: [
            {
              id: 'string'
              name: 'string'
              properties: {
                thumbprint: 'string'
              }
            }
          ]
          vpnClientRootCertificates: [
            {
              id: 'string'
              name: 'string'
              properties: {
                publicCertData: 'string'
              }
            }
          ]
        }
        vpnGatewayGeneration: 'string'
        vpnType: 'string'
      }
      tags: {
        tagName1: 'tagValue1'
        tagName2: 'tagValue2'
      }
    }
    virtualNetworkGateway2: {
      id: 'string'
      location: 'string'
      properties: {
        activeActive: bool
        bgpSettings: {
          asn: int
          bgpPeeringAddress: 'string'
          bgpPeeringAddresses: [
            {
              customBgpIpAddresses: [ 'string' ]
              ipconfigurationId: 'string'
            }
          ]
          peerWeight: int
        }
        customRoutes: {
          addressPrefixes: [ 'string' ]
        }
        enableBgp: bool
        enableDnsForwarding: bool
        enablePrivateIpAddress: bool
        gatewayDefaultSite: {
          id: 'string'
        }
        gatewayType: 'string'
        ipConfigurations: [
          {
            id: 'string'
            name: 'string'
            properties: {
              privateIPAllocationMethod: 'string'
              publicIPAddress: {
                id: 'string'
              }
              subnet: {
                id: 'string'
              }
            }
          }
        ]
        sku: {
          name: 'string'
          tier: 'string'
        }
        vpnClientConfiguration: {
          aadAudience: 'string'
          aadIssuer: 'string'
          aadTenant: 'string'
          radiusServerAddress: 'string'
          radiusServers: [
            {
              radiusServerAddress: 'string'
              radiusServerScore: int
              radiusServerSecret: 'string'
            }
          ]
          radiusServerSecret: 'string'
          vpnClientAddressPool: {
            addressPrefixes: [ 'string' ]
          }
          vpnClientIpsecPolicies: [
            {
              dhGroup: 'string'
              ikeEncryption: 'string'
              ikeIntegrity: 'string'
              ipsecEncryption: 'string'
              ipsecIntegrity: 'string'
              pfsGroup: 'string'
              saDataSizeKilobytes: int
              saLifeTimeSeconds: int
            }
          ]
          vpnClientProtocols: [ 'string' ]
          vpnClientRevokedCertificates: [
            {
              id: 'string'
              name: 'string'
              properties: {
                thumbprint: 'string'
              }
            }
          ]
          vpnClientRootCertificates: [
            {
              id: 'string'
              name: 'string'
              properties: {
                publicCertData: 'string'
              }
            }
          ]
        }
        vpnGatewayGeneration: 'string'
        vpnType: 'string'
      }
      tags: {
        tagName1: 'tagValue1'
        tagName2: 'tagValue2'
      }
    }
  }
}

Property values

connections

Name Description Value
type The resource type

For Bicep, set this value in the resource declaration.
'Microsoft.Network/connections'
apiVersion The resource api version

For Bicep, set this value in the resource declaration.
'2020-03-01'
name The resource name string (required)
location Resource location. string
tags Resource tags. Dictionary of tag names and values. See Tags in templates
properties VirtualNetworkGatewayConnection properties. VirtualNetworkGatewayConnectionPropertiesFormat (required)

VirtualNetworkGatewayConnectionPropertiesFormat

Name Description Value
authorizationKey The authorizationKey. string
connectionProtocol Gateway connection protocol. 'IKEv1'
'IKEv2'
connectionType Gateway connection type. 'ExpressRoute'
'IPsec'
'VPNClient'
'Vnet2Vnet'
dpdTimeoutSeconds The dead peer detection timeout of this connection in seconds. int
enableBgp EnableBgp flag. bool
expressRouteGatewayBypass Bypass ExpressRoute Gateway for data forwarding. bool
ipsecPolicies The IPSec Policies to be considered by this connection. IpsecPolicy[]
localNetworkGateway2 A common class for general resource information. LocalNetworkGateway
peer Reference to another subresource. SubResource
routingWeight The routing weight. int
sharedKey The IPSec shared key. string
trafficSelectorPolicies The Traffic Selector Policies to be considered by this connection. TrafficSelectorPolicy[]
useLocalAzureIpAddress Use private local Azure IP for the connection. bool
usePolicyBasedTrafficSelectors Enable policy-based traffic selectors. bool
virtualNetworkGateway1 A common class for general resource information. VirtualNetworkGateway (required)
virtualNetworkGateway2 A common class for general resource information. VirtualNetworkGateway

IpsecPolicy

Name Description Value
dhGroup The DH Groups used in IKE Phase 1 for initial SA. 'DHGroup1'
'DHGroup14'
'DHGroup2'
'DHGroup2048'
'DHGroup24'
'ECP256'
'ECP384'
'None'
ikeEncryption The IKE encryption algorithm (IKE phase 2). 'AES128'
'AES192'
'AES256'
'DES'
'DES3'
'GCMAES128'
'GCMAES256'
ikeIntegrity The IKE integrity algorithm (IKE phase 2). 'GCMAES128'
'GCMAES256'
'MD5'
'SHA1'
'SHA256'
'SHA384'
ipsecEncryption The IPSec encryption algorithm (IKE phase 1). 'AES128'
'AES192'
'AES256'
'DES'
'DES3'
'GCMAES128'
'GCMAES192'
'GCMAES256'
'None'
ipsecIntegrity The IPSec integrity algorithm (IKE phase 1). 'GCMAES128'
'GCMAES192'
'GCMAES256'
'MD5'
'SHA1'
'SHA256'
pfsGroup The Pfs Groups used in IKE Phase 2 for new child SA. 'ECP256'
'ECP384'
'None'
'PFS1'
'PFS14'
'PFS2'
'PFS2048'
'PFS24'
'PFSMM'
saDataSizeKilobytes The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel. int (required)
saLifeTimeSeconds The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel. int (required)

LocalNetworkGateway

Name Description Value
id Resource ID. string
location Resource location. string
properties LocalNetworkGateway properties. LocalNetworkGatewayPropertiesFormat (required)
tags Resource tags. Dictionary of tag names and values. See Tags in templates

LocalNetworkGatewayPropertiesFormat

Name Description Value
bgpSettings BGP settings details. BgpSettings
fqdn FQDN of local network gateway. string
gatewayIpAddress IP address of local network gateway. string
localNetworkAddressSpace AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network. AddressSpace

BgpSettings

Name Description Value
asn The BGP speaker's ASN. int
bgpPeeringAddress The BGP peering address and BGP identifier of this BGP speaker. string
bgpPeeringAddresses BGP peering address with IP configuration ID for virtual network gateway. IPConfigurationBgpPeeringAddress[]
peerWeight The weight added to routes learned from this BGP speaker. int

IPConfigurationBgpPeeringAddress

Name Description Value
customBgpIpAddresses The list of custom BGP peering addresses which belong to IP configuration. string[]
ipconfigurationId The ID of IP configuration which belongs to gateway. string

AddressSpace

Name Description Value
addressPrefixes A list of address blocks reserved for this virtual network in CIDR notation. string[]

SubResource

Name Description Value
id Resource ID. string

TrafficSelectorPolicy

Name Description Value
localAddressRanges A collection of local address spaces in CIDR format. string[] (required)
remoteAddressRanges A collection of remote address spaces in CIDR format. string[] (required)

VirtualNetworkGateway

Name Description Value
id Resource ID. string
location Resource location. string
properties VirtualNetworkGateway properties. VirtualNetworkGatewayPropertiesFormat (required)
tags Resource tags. Dictionary of tag names and values. See Tags in templates

VirtualNetworkGatewayPropertiesFormat

Name Description Value
activeActive ActiveActive flag. bool
bgpSettings BGP settings details. BgpSettings
customRoutes AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network. AddressSpace
enableBgp Whether BGP is enabled for this virtual network gateway or not. bool
enableDnsForwarding Whether dns forwarding is enabled or not. bool
enablePrivateIpAddress Whether private IP needs to be enabled on this gateway for connections or not. bool
gatewayDefaultSite Reference to another subresource. SubResource
gatewayType The type of this virtual network gateway. 'ExpressRoute'
'Vpn'
ipConfigurations IP configurations for virtual network gateway. VirtualNetworkGatewayIPConfiguration[]
sku VirtualNetworkGatewaySku details. VirtualNetworkGatewaySku
vpnClientConfiguration VpnClientConfiguration for P2S client. VpnClientConfiguration
vpnGatewayGeneration The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN. 'Generation1'
'Generation2'
'None'
vpnType The type of this virtual network gateway. 'PolicyBased'
'RouteBased'

VirtualNetworkGatewayIPConfiguration

Name Description Value
id Resource ID. string
name The name of the resource that is unique within a resource group. This name can be used to access the resource. string
properties Properties of VirtualNetworkGatewayIPConfiguration. VirtualNetworkGatewayIPConfigurationPropertiesFormat

VirtualNetworkGatewayIPConfigurationPropertiesFormat

Name Description Value
privateIPAllocationMethod IP address allocation method. 'Dynamic'
'Static'
publicIPAddress Reference to another subresource. SubResource
subnet Reference to another subresource. SubResource

VirtualNetworkGatewaySku

Name Description Value
name Gateway SKU name. 'Basic'
'ErGw1AZ'
'ErGw2AZ'
'ErGw3AZ'
'HighPerformance'
'Standard'
'UltraPerformance'
'VpnGw1'
'VpnGw1AZ'
'VpnGw2'
'VpnGw2AZ'
'VpnGw3'
'VpnGw3AZ'
'VpnGw4'
'VpnGw4AZ'
'VpnGw5'
'VpnGw5AZ'
tier Gateway SKU tier. 'Basic'
'ErGw1AZ'
'ErGw2AZ'
'ErGw3AZ'
'HighPerformance'
'Standard'
'UltraPerformance'
'VpnGw1'
'VpnGw1AZ'
'VpnGw2'
'VpnGw2AZ'
'VpnGw3'
'VpnGw3AZ'
'VpnGw4'
'VpnGw4AZ'
'VpnGw5'
'VpnGw5AZ'

VpnClientConfiguration

Name Description Value
aadAudience The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication. string
aadIssuer The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication. string
aadTenant The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication. string
radiusServerAddress The radius server address property of the VirtualNetworkGateway resource for vpn client connection. string
radiusServers The radiusServers property for multiple radius server configuration. RadiusServer[]
radiusServerSecret The radius secret property of the VirtualNetworkGateway resource for vpn client connection. string
vpnClientAddressPool AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network. AddressSpace
vpnClientIpsecPolicies VpnClientIpsecPolicies for virtual network gateway P2S client. IpsecPolicy[]
vpnClientProtocols VpnClientProtocols for Virtual network gateway. String array containing any of:
'IkeV2'
'OpenVPN'
'SSTP'
vpnClientRevokedCertificates VpnClientRevokedCertificate for Virtual network gateway. VpnClientRevokedCertificate[]
vpnClientRootCertificates VpnClientRootCertificate for virtual network gateway. VpnClientRootCertificate[]

RadiusServer

Name Description Value
radiusServerAddress The address of this radius server. string (required)
radiusServerScore The initial score assigned to this radius server. int
radiusServerSecret The secret used for this radius server. string

VpnClientRevokedCertificate

Name Description Value
id Resource ID. string
name The name of the resource that is unique within a resource group. This name can be used to access the resource. string
properties Properties of the revoked VPN client certificate of virtual network gateway. VpnClientRevokedCertificatePropertiesFormat

VpnClientRevokedCertificatePropertiesFormat

Name Description Value
thumbprint The revoked VPN client certificate thumbprint. string

VpnClientRootCertificate

Name Description Value
id Resource ID. string
name The name of the resource that is unique within a resource group. This name can be used to access the resource. string
properties Properties of SSL certificates of application gateway. VpnClientRootCertificatePropertiesFormat (required)

VpnClientRootCertificatePropertiesFormat

Name Description Value
publicCertData The certificate public data. string (required)

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
BOSH CF Cross Region

Deploy to Azure
This template helps you setup the resources needed to deploy BOSH and Cloud Foundry across two regions on Azure.
Deploy HBase geo replication

Deploy to Azure
This template allows you to configure an Azure environment for HBase replication across two different regions with VPN vnet-to-vnet connection.
Connect an ExpressRoute circuit to a VNET

Deploy to Azure
This template creates a VNET, an ExpresRoute Gateway and a connection to a provisioned and enabled ExpressRoute circuit with AzurePrivatePeering configured.
Extend an existing Azure VNET to a Multi-VNET Configuration

Deploy to Azure
This template allows you to extend an existing single VNET environment to a Multi-VNET environment that extends across two datacenter regions using VNET-to-VNET gateways
Create a Site-to-Site VPN Connection

Deploy to Azure
This template allows you to create a Site-to-Site VPN Connection using Virtual Network Gateways
Create a Site-to-Site VPN Connection

Deploy to Azure
This template allows you to create a Site-to-Site VPN Connection using Virtual Network Gateways
Site-to-Site VPN with active-active VPN Gateways with BGP

Deploy to Azure
This template allows you to deploy a site-to-site VPN between two VNets with VPN Gateways in configuration active-active with BGP. Each Azure VPN Gateway resolves the FQDN of the remote peers to determine the public IP of the remote VPN Gateway. Template runs as expected in Azure regions with availability zones.
Create a VNET to VNET connection across two regions

Deploy to Azure
This template allows you to connect two VNETs in different regions using Virtual Network Gateways
Create a BGP VNET to VNET connection

Deploy to Azure
This template allows you to connect two VNETs using Virtual Network Gateways and BGP
Create three vNets to demonstrate transitive BGP connections

Deploy to Azure
This template deploys three vNets connected using Virtual Network Gateways and BGP-enabled connections
VPN Custom IPSec Policy

Deploy to Azure
This custom IPSec Policy allows more granular configuration of the IKE Parameters. This allows you to deploy a site-to-site VPN Policy to support specific settings on your VPN Endpoit Device.