共用方式為


Virtual Network Rules - Create Or Update

建立或更新現有的虛擬網路規則。

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

URI 參數

名稱 位於 必要 類型 Description
resourceGroupName
path True

string

包含資源的資源群組名稱。 您可以從 Azure Resource Manager API 或入口網站取得此值。

serverName
path True

string

伺服器的名稱。

subscriptionId
path True

string

識別 Azure 訂用帳戶的訂用帳戶標識碼。

virtualNetworkRuleName
path True

string

虛擬網路規則的名稱。

api-version
query True

string

要用於要求的 API 版本。

要求本文

名稱 必要 類型 Description
properties.virtualNetworkSubnetId True

string

虛擬網路子網的 ARM 資源識別碼。

properties.ignoreMissingVnetServiceEndpoint

boolean

在虛擬網路啟用 vnet 服務端點之前建立防火牆規則。

回應

名稱 類型 Description
200 OK

VirtualNetworkRule

已成功更新虛擬網路規則。

201 Created

VirtualNetworkRule

已成功建立虛擬網路規則。

202 Accepted

接受

標題

Location: string

Other Status Codes

ErrorResponse

錯誤回應: ***

  • 400 ManagedInstanceStoppingOrStopped - 實例處於停止/停止狀態時提交的衝突作業

  • 400 ManagedInstanceStarting - 實例處於啟動狀態時提交的衝突作業

  • 400 InvalidResourceId - 無效的資源識別碼。

  • 400 MismatchingSubscriptionWithUrl - 提供的訂用帳戶不符合 Url 中的訂用帳戶。

  • 400 不符ResourceGroupNameWithUrl - 提供的資源組名不符合 Url 中的名稱。

  • 400 不相符ServerNameWithUrl - 提供的伺服器名稱不符合 Url 中的名稱。

  • 400 NullVirtualNetworkRequest - 虛擬網路要求為 Null

  • 400 NullVirtualNetworkRequestParameters - 虛擬網路要求參數為 Null

  • 400 VirtualNetworkRuleBadRequest - Azure SQL Server 虛擬網路規則發生用戶錯誤

  • 400 VirtualNetworkRuleWithFailoverGroupsNotSupported - 虛擬網路防火牆規則目前不支援在設定自動故障轉移原則的故障轉移群組的伺服器上。 請使用手動故障轉移原則在伺服器上設定故障轉移群組。

  • 400 FirewallChangesDeniedBecausePublicEndpointDisabled - 停用伺服器的公用網路存取時,無法建立或修改防火牆規則。 (https://docs.microsoft.com/en-us/azure/azure-sql/database/connectivity-settings#deny-public-network-access

  • 400 FirewallChangesDeniedBecauseOperationInProgress - 伺服器 {0}上的虛擬網路防火牆規則 {1} 進行另一項作業。

  • 400 NullVirtualNetworkSubnetId - 虛擬網路子網標識符為 null

  • 403 VirtualNetworkRuleAccessDenied - Azure SQL Server 虛擬網路規則發生許可權錯誤

  • 404 ServerNotInSubscriptionResourceGroup - 指定的伺服器不存在於指定的資源群組和訂用帳戶中。

  • 404 SubscriptionDoesNotHaveServer - 找不到要求的伺服器

  • 404 VirtualNetworkRuleResourceNotFound - Azure SQL Server 虛擬網路規則遇到找不到資源錯誤

  • 404 VirtualNetworkRuleSubscriptionNotFound - 找不到 Azure SQL Server 虛擬網路訂用帳戶標識碼或處於停用狀態

  • 404 VirtualNetworkRuleNotEnabled - 未啟用 Azure SQL Server 虛擬網路規則功能

  • 404 OperationIdNotFound - 標識符為 的作業不存在。

  • 409 CannotCancelOperation - 管理作業處於無法取消的狀態。

  • 409 OperationCancelled - 使用者已取消作業。

  • 409 OperationInterrupted - 無法完成資源上的作業,因為相同資源上的另一個作業中斷。

  • 429 SubscriptionTooManyCreateUpdateRequests - 超出可用資源可處理之最大要求的要求。

  • 429 SubscriptionTooManyRequests - 超出可用資源可處理之最大要求的要求。

  • 500 OperationTimedOut - 作業逾時並自動回復。 請重試作業。

  • 503 TooManyRequests - 超出可用資源可處理之最大要求的要求。

  • 504 VirtualNetworkRuleTimedOut - Azure SQL Server 虛擬網路規則發生逾時

範例

Create or update a virtual network rule

範例要求

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=2023-08-01

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

定義

名稱 Description
ErrorAdditionalInfo

資源管理錯誤其他資訊。

ErrorDetail

錯誤詳細數據。

ErrorResponse

錯誤回應

VirtualNetworkRule

虛擬網路規則。

VirtualNetworkRuleState

虛擬網路規則狀態

ErrorAdditionalInfo

資源管理錯誤其他資訊。

名稱 類型 Description
info

object

其他資訊。

type

string

其他信息類型。

ErrorDetail

錯誤詳細數據。

名稱 類型 Description
additionalInfo

ErrorAdditionalInfo[]

錯誤其他資訊。

code

string

錯誤碼。

details

ErrorDetail[]

錯誤詳細數據。

message

string

錯誤訊息。

target

string

錯誤目標。

ErrorResponse

錯誤回應

名稱 類型 Description
error

ErrorDetail

error 物件。

VirtualNetworkRule

虛擬網路規則。

名稱 類型 Description
id

string

資源標識碼。

name

string

資源名稱。

properties.ignoreMissingVnetServiceEndpoint

boolean

在虛擬網路啟用 vnet 服務端點之前建立防火牆規則。

properties.state

VirtualNetworkRuleState

虛擬網路規則狀態

properties.virtualNetworkSubnetId

string

虛擬網路子網的 ARM 資源識別碼。

type

string

資源類型。

VirtualNetworkRuleState

虛擬網路規則狀態

Description
Initializing
InProgress
Ready
Failed
Deleting
Unknown