Bicep Module Documentation
| Property | Value | Description |
|---|---|---|
| general (required) | general | |
| activeActive | bool | ActiveActive flag. (default: false) |
| publicIPAddressNaming | naming | Naming of the public IP. |
| ddosProtectionMode | 'Disabled' 'Enabled' 'VirtualNetworkInherited' |
DDoS Protection plan for public IP, Enabled = configure per IP. (default = VirtualNetworkInherited) |
| adminState | 'Disabled' 'Enabled' |
Property to indicate if the Express Route Gateway serves traffic when there are multiple Express Route Gateways in the vnet. |
| allowRemoteVnetTraffic | bool | Configure this gateway to accept traffic from other Azure Virtual Networks. This configuration does not support connectivity to Azure Virtual WAN. (default: false) |
| allowVirtualWanTraffic | bool | Configures this gateway to accept traffic from remote Virtual WAN networks. (default: false) |
| bgpSettings | bgpSettings | Virtual network gateway BGP speaker settings. |
| customRoutesAddressPrefixes | string[] | The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient. |
| disableIPSecReplayProtection | bool | A way to disable IPSec replay protection. |
| enableBgp | bool | Whether BGP is enabled for this virtual network gateway or not. |
| enableBgpRouteTranslationForNat | bool | Enable BGP route translation for NAT. |
| enableDnsForwarding | bool | Whether dns forwarding is enabled or not. |
| enablePrivateIpAddress | bool | Whether private IP needs to be enabled on this gateway for connections or not. |
| gatewayDefaultSiteId | string | The id of the local network gateway which represents the local network [ResourceId]. |
| gatewayType | 'ExpressRoute' 'LocalGateway' 'Vpn' |
The type of the virtual network gateway. (default: Vpn) |
| sku (required) | 'Basic' 'ErGw1AZ' 'ErGw2AZ' 'ErGw3AZ' 'HighPerformance' 'Standard' 'UltraPerformance' 'VpnGw1' 'VpnGw1AZ' 'VpnGw2' 'VpnGw2AZ' 'VpnGw3' 'VpnGw3AZ' 'VpnGw4' 'VpnGw4AZ' 'VpnGw5' 'VpnGw5AZ' |
The sku of the virtual network gateway. |
| vpnGatewayGeneration | 'Generation1' 'Generation2' 'None' |
The generation for this VirtualNetworkGateway, must be None if gatewayType is not VPN. |
| vpnType | 'PolicyBased' 'RouteBased' |
The type of this virtual network gateway (default: RouteBased) |
| vpnClientConfiguration | vpnClientConfiguration | The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations. |
| subnetId (required) | string | Subnet to associate with the virtual network gateway must be called GatewaySubnet which is atleast a /27 or bigger and can only be defined once! [ResourceId] |
| privateIPAllocationMethod | 'Dynamic' 'Static' |
Determine how IP addresses are assigned in the GatewaySubnet. (default: Dynamic) |
| connections | connection[] | List of connections to be made from this gateway. |
| keyVaultId | string | Insert the resource ID of the key vault in which the PSK of connections are located. |
| Property | Value | Description |
|---|---|---|
| asn (required) | int | The BGP speaker ASN. |
| bgpPeeringAddress (required) | string | The BGP peering address and BGP identifier of this BGP speaker. |
| bgpPeeringAddresses (required) | virtualNetworkGatewayBGPPeeringAddress[] | BGP peering address with IP configuration ID for virtual network gateway. |
| peerWeight (required) | int | The weight added to routes learned from this BGP speaker. |
| Property | Value | Description |
|---|---|---|
| aadAudience | string | The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication. |
| aadIssuer | string | The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication. |
| aadTenant | string | The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication. |
| radiusServerAddress | string | The radius server address property of the VirtualNetworkGateway resource for vpn client connection. |
| radiusServers | radiusServers[] | The radiusServers property for multiple radius server configuration. |
| radiusServerSecret | string | The radius secret property of the VirtualNetworkGateway resource for vpn client connection. |
| vngClientConnectionConfigurations | vngClientConnectionConfigurations[] | Per IP address pool connection policy for virtual network gateway P2S client. |
| vpnAuthenticationTypes (required) | Array containing any of: 'AAD' 'Certificate' 'Radius' |
VPN authentication types for the virtual network gateway. |
| vpnClientAddressPool | vpnClientAddressPool | The reference to the address space resource which represents Address space for P2S VpnClient. |
| vpnClientIpsecPolicies | ipsecPolicy[] | IPsecPolicies for virtual network gateway P2S client. |
| vpnClientProtocols (required) | Array containing any of: 'IkeV2' 'OpenVPN' 'SSTP' |
Client protocols for Virtual network gateway. |
| vpnClientRevokedCertificates | vpnClientRevokedCertificates[] | Revoked certificates. |
| vpnClientRootCertificates | vpnClientRootCertificates[] | Root certificates. |
| Property | Value | Description |
|---|---|---|
| radiusServerAddress (required) | string | The address of this radius server. |
| radiusServerScore | int | The initial score assigned to this radius server. |
| radiusServerSecret | string | The secret used for this radius server. |
| Property | Value | Description |
|---|---|---|
| id (required) | string | Resource ID. |
| Property | Value | Description |
|---|---|---|
| addressPrefixes (required) | string[] | A list of address blocks reserved for this virtual network in CIDR notation. |
| Property | Value | Description |
|---|---|---|
| publicCertData (required) | string | The certificate public data. |
| Property | Value | Description |
|---|---|---|
| id | string | Resource ID. |
| name | string | The name of the resource that is unique within a resource group. This name can be used to access the resource. |
| properties (required) | properties | Properties of the vpn client root certificate. |
| Property | Value | Description |
|---|---|---|
| id | string | Resource ID. |
| name | string | The name of the resource that is unique within a resource group. This name can be used to access the resource. |
| properties (required) | properties |
| Property | Value | Description |
|---|---|---|
| id | string | Resource ID. |
| name | string | The name of the resource that is unique within a resource group. This name can be used to access the resource. |
| properties (required) | properties |
| Property | Value | Description |
|---|---|---|
| customBgpIpAddresses (required) | string[] | The list of custom BGP peering addresses which belong to IP configuration. |
| ipconfigurationId (required) | string | The ID of IP configuration which belongs to gateway. |
| Property | Value | Description |
|---|---|---|
| naming (required) | naming | |
| authorizationKey | string | The authorization key. |
| connectionMode | 'Default' 'InitiatorOnly' 'ResponderOnly' |
The connection mode for this connection. |
| connectionProtocol | 'IKEv1' 'IKEv2' |
Connection protocol used for this connection. |
| connectionType (required) | 'ExpressRoute' 'IPsec' 'VPNClient' 'Vnet2Vnet' |
Gateway connection type. |
| dpdTimeoutSeconds | int | The dead peer detection timeout of this connection in seconds. |
| ingressNatRulesIds | string[] | List of ingress NatRules. |
| egressNatRulesIds | string[] | List of egress NatRules. |
| ipsecPolicies | ipsecPolicy[] | The IPSec Policies to be considered by this connection. |
| trafficSelectorPolicies | trafficSelectorPolicy[] | The Traffic Selector Policies to be considered by this connection. |
| enableBgp | bool | Whether BGP is enabled for this virtual network gateway or not. |
| enablePrivateLinkFastPath | bool | Bypass the ExpressRoute gateway when accessing private-links. ExpressRoute FastPath (expressRouteGatewayBypass) must be enabled. |
| expressRouteGatewayBypass | bool | Bypass ExpressRoute Gateway for data forwarding. |
| gatewayCustomBgpIpAddresses | customBGPIPAddressConfiguration[] | GatewayCustomBgpIpAddresses to be used for virtual network gateway Connection. |
| localNetworkGatewayId | string | The reference to the local network gateway or on premises network. |
| virtualNetworkGateway2Id | string | For S2S you can fill in the ID of the second Virtual Network Gateway. |
| peer | string | The reference to peerings resource. |
| routingWeight | int | The routing weight. |
| useLocalAzureIpAddress | bool | Use private local Azure IP for the connection. |
| usePolicyBasedTrafficSelectors | bool | Enable policy-based traffic selectors. |
| keyVaultSecretName | string | Name of the key vault secret in the key vault. Mandatory for VPN, optional for ExpressRoute connection. |
| Property | Value | Description |
|---|---|---|
| dhGroup (required) | 'DHGroup1' 'DHGroup14' 'DHGroup2' 'DHGroup2048' 'DHGroup24' 'ECP256' 'ECP384' 'None' |
The DH Group used in IKE Phase 1 for initial SA. |
| ikeEncryption (required) | 'AES128' 'AES192' 'AES256' 'DES' 'DES3' 'GCMAES128' 'GCMAES256' |
The IKE encryption algorithm (IKE phase 2). |
| ikeIntegrity (required) | 'GCMAES128' 'GCMAES256' 'MD5' 'SHA1' 'SHA256' 'SHA384' |
The IKE integrity algorithm (IKE phase 2). |
| ipsecEncryption (required) | 'AES128' 'AES192' 'AES256' 'DES' 'DES3' 'GCMAES128' 'GCMAES192' 'GCMAES256' 'None' |
The IPSec encryption algorithm (IKE phase 1). |
| ipsecIntegrity (required) | 'GCMAES128' 'GCMAES192' 'GCMAES256' 'MD5' 'SHA1' 'SHA256' |
The IPSec integrity algorithm (IKE phase 1). |
| pfsGroup (required) | 'ECP256' 'ECP384' 'None' 'PFS1' 'PFS14' 'PFS2' 'PFS2048' 'PFS24' 'PFSMM' |
The Pfs Group used in IKE Phase 2 for new child SA. |
| saDataSizeKilobytes (required) | int | The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel. |
| saLifeTimeSeconds (required) | int | The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel. |
| Property | Value | Description |
|---|---|---|
| localAddressRanges (required) | string[] | A collection of local address spaces in CIDR format. |
| remoteAddressRanges (required) | string[] | A collection of remote address spaces in CIDR format. |
| Property | Value | Description |
|---|---|---|
| customBgpIpAddress (required) | string | The custom BgpPeeringAddress which belongs to IpconfigurationId. |
| ipConfigurationId (required) | string | The IpconfigurationId of ipconfiguration which belongs to gateway. |
| Property | Value | Description |
|---|---|---|
| name | string | Character limit: 1-90. Valid characters: Alphanumerics, periods, underscores, hyphens, and parenthesis. Can't end in period. |
| level (required) | 'CanNotDelete' 'ReadOnly' |
The level of the lock. Possible values are: CanNotDelete and ReadOnly. CanNotDelete means authorized users are able to read and modify the resources, but not delete. ReadOnly means authorized users can only read from a resource, but they can't modify or delete it. Read-Only locks must be commented to be able to deploy again |
| notes | string | Notes about the lock. Maximum of 512 characters. |
| owners | resourceLockOwner[] | The owners of the lock |
| Property | Value | Description |
|---|---|---|
| applicationId (required) | string | The application ID of the lock owner. |
| Property | Value | Description |
|---|---|---|
| principalId (required) | string | The principal ID |
| roleDefinitionId (required) | string | The role definition ID, data file can be used for this |
| condition | string | Condition on the role assignment |
| conditionVersion | string | Version of the condition. Currently the only accepted value is "2.0" |
| delegatedManagedIdentityResourceId | string | Id of the delegated managed identity resource |
| description | string | Description of role assignment |
| Property | Value | Description |
|---|---|---|
| tags | object | Tags of the resource [hashtable] |
| location (required) | string | Location of the resource |
| naming (required) | naming | Naming module of the resource |
| resourceGroupName (required) | string | Name of the resource group where the resource should be located |
| sharedNaming (required) | naming | Reference to the default naming |
| roleAssignments | roleAssignment[] | Role assignments on the resource |
| resourceLocks | resourceLock[] | Resource Locks on the resource |
| Property | Value | Description |
|---|---|---|
| forceFunctionAsFullName | bool | Use the function value as the full name of the resource |
| abbreviation | string | Override the abbreviation of this resource with this parameter |
| environment | string | The resource environment (for example: dev, tst, acc, prd) |
| location | string | The resource location (for example: weu, we, westeurope) |
| customer | string | The name of the customer |
| delimiter | string | The delimiter between resources (default: -) |
| nameFormat | Array containing any of: 'abbreviation' 'customer' 'environment' 'function' 'location' 'param1' 'param2' 'param3' 'useCaseName' |
The order of the array defines the order of elements in the naming scheme |
| param1 | string | Extra parameter self defined |
| param2 | string | Extra parameter self defined |
| param3 | string | Extra parameter self defined |
| function (required) | string | Function of the resource [can be app, db, security,...] |
| useCaseName | string | Name of the use case [can be hub, spoke,...] |
| suffix | string | Suffix for the resource, if empty non will be appended, otherwise will be added to the end [can be index, ...] |
| forceDefaultNaming | bool | Force the CAF naming instead of default company naming |