Share via


使用 API 來建立用於管理 Azure 資源的私人連結

本文說明如何使用 Azure Private Link 來限制用於管理您的訂用帳戶中資源的存取。

私人連結可讓您透過虛擬網路中的私人端點來存取 Azure 服務。 結合私人連結與 Azure Resource Manager 的作業後,您便可封鎖不在特定端點上的使用者,使其無法管理資源。 即使惡意使用者取得了您訂閱中帳戶的認證,但該使用者若未在特定端點上就無法管理資源。

私人連結提供下列安全性優點:

  • 私人存取 - 使用者可以透過私人端點管理來自私人網路的資源。

注意

Azure Kubernetes Service (AKS) 目前不支援 ARM 私人端點實作。

Azure Bastion 不支援私人連結。 建議您針對資源管理私人連結的私人端點設定使用私人 DNS 區域,但由於與 management.azure.com 名稱重疊,因此您的 Bastion 執行個體將會停止運作。 如需詳細資訊,請參閱 Azure Bastion 常見問題

了解架構

重要

在此版本中,您只能在根管理群組層級套用私人連結管理存取。 此限制表示私人連結存取會套用到您的租用戶。

透過私人連結實作管理時,您將使用兩個資源類型。

  • 資源管理私人連結 (Microsoft.Authorization/resourceManagementPrivateLinks)
  • 私人連結關聯 (Microsoft.Authorization/privateLinkAssociations)

下圖顯示如何建構可限制用於管理資源存取的解決方案。

資源管理私人連結圖表

私人連結關聯會延伸根管理群組。 私人連結關聯和私人端點會參考資源管理私人連結。

重要

目前不支援透過私人連結管理資源的多租用戶帳戶。 您無法將不同租用戶上的私人連結關聯連線到單一資源管理私人連結。

如果您的帳戶存取多個租用戶,請僅定義其中一個租用戶的私人連結。

工作流程

若要設定資源的私人連結,請使用下列步驟。 本文稍後會更詳細地描述這些步驟。

  1. 建立資源管理私人連結。
  2. 建立私人連結關聯。 私人連結關聯會延伸根管理群組。 其也會參考資源管理私人連結的資源識別碼。
  3. 新增參考資源管理私人連結的私人端點。

完成這些步驟之後,您就可以管理範圍階層內的 Azure 資源。 您可以使用連線至子網路的私人端點。

您可以監視私人連結的存取。 如需詳細資訊,請參閱記錄和監視

所需的權限

重要

在此版本中,您只能在根管理群組層級套用私人連結管理存取。 此限制表示私人連結存取會套用到您的租用戶。

若要設定資源管理的私人連結,您需要下列存取:

  • 訂用帳戶的擁有者。 需要此存取,才能建立資源管理私人連結資源。
  • 根管理群組的擁有者或參與者。 需要此存取,才能建立私人連結關聯資源。
  • Microsoft Entra ID 的全域管理員不會自動具備在根管理群組指派角色的權限。 若要啟用資源管理私人連結的建立,全域管理員必須擁有讀取根管理群組的權限,並提高存取權,以擁有租用戶中所有訂用帳戶和管理群組的使用者存取系統管理員權限。 取得使用者存取系統管理員權限之後,全域管理員必須將根管理群組的擁有者或參與者權限授與要建立私人連結關聯的使用者。

若要建立資源管理私人連結,請傳送下列要求:

範例

# Login first with az login if not using Cloud Shell
az resourcemanagement private-link create --location WestUS --resource-group PrivateLinkTestRG --name NewRMPL

請記下針對新資源管理私人連結傳回的識別碼。 您將使用其來建立私人連結關聯。

私人連結關聯資源的資源名稱必須是 GUID,而且尚未支援停用 publicNetworkAccess 欄位。

若要建立私人連結關聯,請使用:

範例

# Login first with az login if not using Cloud Shell
az private-link association create --management-group-id fc096d27-0434-4460-a3ea-110df0422a2d --name 1d7942d1-288b-48de-8d0f-2d2aa8e03ad4 --privatelink "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/PrivateLinkTestRG/providers/Microsoft.Authorization/resourceManagementPrivateLinks/newRMPL"

新增私人端點

本文假設您已經有虛擬網路。 在將用於私人端點的子網路中,您必須關閉私人端點網路原則。 如果您尚未關閉私人端點網路原則,請參閱停用私人端點的網路原則

若要建立私人端點,請參閱「私人端點」文件,以透過入口網站PowerShellCLIBicep範本建立。

在要求本文中,將 privateServiceLinkId 設定為來自資源管理私人連結的識別碼。 groupIds 必須包含 ResourceManagement。 私人端點的位置必須與子網路的位置相同。

{
  "location": "westus2",
  "properties": {
    "privateLinkServiceConnections": [
      {
        "name": "{connection-name}",
        "properties": {
           "privateLinkServiceId": "/subscriptions/{subID}/resourceGroups/{rgName}/providers/Microsoft.Authorization/resourceManagementPrivateLinks/{name}",
           "groupIds": [
              "ResourceManagement"
           ]
         }
      }
    ],
    "subnet": {
      "id": "/subscriptions/{subID}/resourceGroups/{rgName}/providers/Microsoft.Network/virtualNetworks/{vnet-name}/subnets/{subnet-name}"
    }
  }
}

下一個步驟會依您使用的是自動或手動核准而有所不同。 如需核准的詳細資訊,請參閱使用核准工作流程存取私人連結資源

回應包括核准狀態。

"privateLinkServiceConnectionState": {
    "actionsRequired": "None",
    "description": "",
    "status": "Approved"
},

如果您的要求已自動核准,您可以繼續進行下一節。 如果您的要求需要手動核准,請等候網路管理員核准您的私人端點連線。

下一步

若要深入了解私人連結,請參閱 Azure Private Link