你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Virtual Network Rules - Create Or Update

创建或更新现有虚拟网络规则。

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

URI 参数

名称 必需 类型 说明
resourceGroupName
path True

string

包含该资源的资源组名称。 可以从 Azure 资源管理器 API 或门户获取此值。

serverName
path True

string

服务器的名称。

subscriptionId
path True

string

用于标识 Azure 订阅的订阅 ID。

virtualNetworkRuleName
path True

string

虚拟网络规则的名称。

api-version
query True

string

要用于请求的 API 版本。

请求正文

名称 必需 类型 说明
properties.virtualNetworkSubnetId True

string

虚拟网络子网的 ARM 资源 ID。

properties.ignoreMissingVnetServiceEndpoint

boolean

在虚拟网络启用 vnet 服务终结点之前创建防火墙规则。

响应

名称 类型 说明
200 OK

VirtualNetworkRule

已成功更新虚拟网络规则。

201 Created

VirtualNetworkRule

已成功创建虚拟网络规则。

202 Accepted

已接受

Other Status Codes

错误响应:***

  • 400 InvalidResourceId - 资源标识符无效。

  • 400 MismatchingSubscriptionWithUrl - 提供的订阅与 URL 中的订阅不匹配。

  • 400 MismatchingResourceGroupNameWithUrl - 提供的资源组名称与 URL 中的名称不匹配。

  • 400 MismatchingServerNameWithUrl - 提供的服务器名称与 URL 中的名称不匹配。

  • 400 NullVirtualNetworkRequest - 虚拟网络请求为 Null

  • 400 NullVirtualNetworkRequestParameters - 虚拟网络请求参数为 Null

  • 400 FirewallChangesDeniedBecausePublicEndpointDisabled - 禁用服务器的公用网络访问时,无法创建或修改防火墙规则。 (https://docs.microsoft.com/en-us/azure/azure-sql/database/connectivity-settings#deny-public-network-access)

  • 400 VirtualNetworkRuleBadRequest - Azure SQL Server 虚拟网络 规则遇到用户错误

  • 400 VirtualNetworkRuleWithFailoverGroupsNotSupported - 在配置了自动故障转移策略的故障转移组的服务器上,目前不支持虚拟网络防火墙规则。 请使用手动故障转移策略在服务器上配置故障转移组。

  • 400 NullVirtualNetworkSubnetId - 虚拟网络子网 ID 为 null

  • 403 VirtualNetworkRuleAccessDenied - Azure SQL Server 虚拟网络 规则遇到权限错误

  • 404 SubscriptionDoesNotHaveServer - 找不到请求的服务器

  • 404 ServerNotInSubscriptionResourceGroup - 指定的服务器不存在于指定的资源组和订阅中。

  • 404 VirtualNetworkRuleNotEnabled - 未启用Azure SQL服务器虚拟网络规则功能

  • 404 VirtualNetworkRuleResourceNotFound - Azure SQL 服务器虚拟网络规则遇到“找不到资源”错误

  • 404 VirtualNetworkRuleSubscriptionNotFound - Azure SQL服务器虚拟网络订阅 ID 未找到或处于禁用状态

  • 404 OperationIdNotFound - ID 为 的操作不存在。

  • 409 OperationCancelled - 用户已取消操作。

  • 409 操作中断 - 无法完成对资源的操作,因为同一资源上的另一个操作中断了该操作。

  • 429 SubscriptionTooManyCreateUpdateRequests - 请求数超出可用资源可以处理的最大请求数。

  • 429 SubscriptionTooManyRequests - 请求数超出可用资源可以处理的最大请求数。

  • 500 OperationTimedOut - 操作超时并自动回滚。 请重试该操作。

  • 503 TooManyRequests - 请求数超出可用资源可以处理的最大请求数。

  • 504 VirtualNetworkRuleTimedOut - Azure SQL服务器虚拟网络规则遇到超时

示例

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"
  }
}

定义

名称 说明
VirtualNetworkRule

虚拟网络规则。

VirtualNetworkRuleState

虚拟网络规则状态

VirtualNetworkRule

虚拟网络规则。

名称 类型 说明
id

string

资源 ID。

name

string

资源名称。

properties.ignoreMissingVnetServiceEndpoint

boolean

在虚拟网络启用 vnet 服务终结点之前创建防火墙规则。

properties.state

VirtualNetworkRuleState

虚拟网络规则状态

properties.virtualNetworkSubnetId

string

虚拟网络子网的 ARM 资源 ID。

type

string

资源类型。

VirtualNetworkRuleState

虚拟网络规则状态

名称 类型 说明
Deleting

string

Failed

string

InProgress

string

Initializing

string

Ready

string

Unknown

string