Virtual Network Rules - Create Or Update

Creates or updates an existing virtual network rule.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/virtualNetworkRules/{virtualNetworkRuleName}?api-version=2021-11-01

URI Parameters

Name In Required Type Description
resourceGroupName
path True

string

The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.

serverName
path True

string

The name of the server.

subscriptionId
path True

string

The subscription ID that identifies an Azure subscription.

virtualNetworkRuleName
path True

string

The name of the virtual network rule.

api-version
query True

string

The API version to use for the request.

Request Body

Name Required Type Description
properties.virtualNetworkSubnetId True

string

The ARM resource id of the virtual network subnet.

properties.ignoreMissingVnetServiceEndpoint

boolean

Create firewall rule before the virtual network has vnet service endpoint enabled.

Responses

Name Type Description
200 OK

VirtualNetworkRule

Successfully updated a virtual network rule.

201 Created

VirtualNetworkRule

Successfully created a virtual network rule.

202 Accepted

Accepted

Other Status Codes

*** Error Responses: ***

  • 400 InvalidResourceId - Invalid resource identifier.

  • 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.

  • 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.

  • 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.

  • 400 NullVirtualNetworkRequest - Virtual Network Request is Null

  • 400 NullVirtualNetworkRequestParameters - Virtual Network Request Parameters are Null

  • 400 FirewallChangesDeniedBecausePublicEndpointDisabled - Unable to create or modify firewall rules when public network access for the server is disabled. (https://docs.microsoft.com/en-us/azure/azure-sql/database/connectivity-settings#deny-public-network-access)

  • 400 VirtualNetworkRuleBadRequest - Azure SQL Server Virtual Network Rule encountered an user error

  • 400 VirtualNetworkRuleWithFailoverGroupsNotSupported - Virtual network firewall rules are not currently supported on servers with failover groups configured with automatic failover policy. Please configure the failover groups on the server with manual failover policy.

  • 400 NullVirtualNetworkSubnetId - The Virtual Network Subnet Id is null

  • 403 VirtualNetworkRuleAccessDenied - Azure SQL Server Virtual Network Rule encountered permissions error

  • 404 SubscriptionDoesNotHaveServer - The requested server was not found

  • 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.

  • 404 VirtualNetworkRuleNotEnabled - Azure SQL Server Virtual Network Rule feature is not enabled

  • 404 VirtualNetworkRuleResourceNotFound - Azure SQL Server Virtual Network Rule encountered a resource not found error

  • 404 VirtualNetworkRuleSubscriptionNotFound - Azure SQL Server Virtual Network Subscription id not found or is in disabled state

  • 404 OperationIdNotFound - The operation with Id does not exist.

  • 409 OperationCancelled - The operation has been cancelled by user.

  • 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.

  • 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.

  • 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.

  • 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.

  • 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.

  • 504 VirtualNetworkRuleTimedOut - Azure SQL Server Virtual Network Rule encountered a timeout

Examples

Create or update a virtual network rule

Sample Request

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/vnet-test-svr/virtualNetworkRules/vnet-firewall-rule?api-version=2021-11-01

{
  "properties": {
    "ignoreMissingVnetServiceEndpoint": false,
    "virtualNetworkSubnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Network/virtualNetworks/testvnet/subnets/testsubnet"
  }
}

Sample Response

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/vnet-test-svr/virtualNetworkRules/vnet-firewall-rule",
  "name": "vnet-firewall-rule",
  "type": "Microsoft.Sql/servers/virtualNetworkRules",
  "properties": {
    "ignoreMissingVnetServiceEndpoint": false,
    "virtualNetworkSubnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Network/virtualNetworks/testvnet/subnets/testsubnet"
  }
}
{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/vnet-test-svr/virtualNetworkRules/vnet-firewall-rule",
  "name": "vnet-firewall-rule",
  "type": "Microsoft.Sql/servers/virtualNetworkRules",
  "properties": {
    "ignoreMissingVnetServiceEndpoint": false,
    "virtualNetworkSubnetId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Network/virtualNetworks/testvnet/subnets/testsubnet"
  }
}

Definitions

Name Description
VirtualNetworkRule

A virtual network rule.

VirtualNetworkRuleState

Virtual Network Rule State

VirtualNetworkRule

A virtual network rule.

Name Type Description
id

string

Resource ID.

name

string

Resource name.

properties.ignoreMissingVnetServiceEndpoint

boolean

Create firewall rule before the virtual network has vnet service endpoint enabled.

properties.state

VirtualNetworkRuleState

Virtual Network Rule State

properties.virtualNetworkSubnetId

string

The ARM resource id of the virtual network subnet.

type

string

Resource type.

VirtualNetworkRuleState

Virtual Network Rule State

Name Type Description
Deleting

string

Failed

string

InProgress

string

Initializing

string

Ready

string

Unknown

string