Azure 虛擬網路對 Power Platform 的支援可讓您將 Power Platform 和 Dataverse 元件與雲端服務或託管在您的私人企業網路內的服務整合,而無需將它們暴露給公用網際網路。 本文說明如何在你的 Power Platform 環境中設定虛擬網路支援。
先決條件
備註
若要啟用 Power Platform 的虛擬網路支援,環境必須是受控環境。
檢查您的 Power Platform 資源:檢查您的應用程式、流程和外掛程式程式碼,以確保它們透過您的虛擬網路連接。 他們不應該透過公共網際網路呼叫端點。 如果您的元件需要連接到公共端點,請確保您的防火牆或網路設定允許此類呼叫。 在為 Power Platform 環境啟用虛擬網路支援的考量和常見問題中深入瞭解。
準備您的租用戶並設定權限:
- Azure 訂閱:確保您擁有一個 Azure 訂閱,其中建立了虛擬網路、子網路和企業原則資源。
-
指派角色:確保您擁有建立資源和企業原則所需的角色。
- 在 Azure 入口網站中,指派 Azure 網路管理員角色,例如網路參與者角色或等效的自訂角色。
- 在 Microsoft Entra 系統管理中心,指派 Power Platform 管理員角色。
準備使用 PowerShell:
- 使用 Windows PowerShell 或安裝 PowerShell Core。
- 複製 GitHub 存放庫以取得企業原則的 PowerShell 指令碼。
- 執行「安裝模組和設定訂閱」指令碼。
下圖顯示了 Power Platform 環境中虛擬網路支援的設定過程中角色的功能。
設定虛擬網路支援
設定虛擬網路和子網路
備註
美國中部地區不支援 Power Platform。 查看受支援區域的清單。
在與您的 Power Platform 環境關聯的 Azure 區域中建立虛擬網路。 例如,如果你的 Power Platform 環境區域位於美國,則你的虛擬網路應建立在 Azure 的 eastus 和 westus 區域中。 有關環境區域到 Azure 區域的對應,請查看支援的區域清單。
重要
- 如果地理位置有兩個或多個受支援的區域 (例如具有 eastus 和 westus 的美國),則需要位於不同區域的兩個虛擬網路來建立業務連續性和災害復原或容錯移轉情境的企業原則。
- 確保您建立的子網路已根據估算 Power Platform 環境的子網路大小進行了適當調整。
如果需要,您可以重複使用現有的虛擬網路。 子網路不能在多個企業原則中重複使用。
在每個虛擬網路中建立一個子網路。 查看分配給每個子網路的 IP 位址數量並考慮環境的負載。 兩個子網路必須具有相同數量的可用 IP 位址。
重要
- 如果您打算對多個 Power Platform 環境使用相同的委派子網,則可能需要比 /24 更大的 IP 位址區塊。 在估計 Power Platform 環境的子網路大小中查看子網路大小指引。
- 若要允許 Power Platform 元件存取公共網際網路,請為子網路建立 Azure NAT 閘道。
透過執行 SetupSubscriptionForPowerPlatform.ps1 指令碼,確保您的 Azure 訂閱已為 Microsoft.PowerPlatform 資源提供者註冊。
確保您的子網路沒有任何資源與其連接。 透過為每個子網路執行 SetupVnetForSubnetDelegation.ps1 指令碼將每個子網路委託給 Microsoft.PowerPlatform/enterprisePolicies。 如果您不想使用 PowerShell,則可以在 Azure 入口網站中建立虛擬網路時將子網路委託給服務 Microsoft.PowerPlatform/enterprisePolicies。
如需詳細資訊,請參閱新增或移除子網路委派。
建立配對虛擬網路後,您可以在 Azure 資源群組中查看它們,如下圖所示。
建立企業原則
選項 1:使用 Azure ARM 範本
確保您已從已建立的虛擬網路中擷取必要的詳細資訊,例如以下資訊。
- VnetOneSubnetName
- VnetOneResourceId
- VnetTwoSubnetName
- VnetTwoResourceId
在 Azure 入口網站中部署自訂範本。 選取在編輯器中建立您自己的範本連結,然後複製並貼上以下 JSON 指令碼。
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "policyName": { "type": "string", "metadata": { "description": "The name of the Enterprise Policy." } }, "powerplatformEnvironmentRegion": { "type": "string", "metadata": { "description": "Geo of the PowerPlatform environment." } }, "vNetOneSubnetName": { "type": "string" }, "vNetOneResourceId": { "type": "string", "metadata": { "description": "Fully qualified name, such as /subscription/{subscriptionid}/..." } }, "vNetTwoSubnetName": { "defaultValue": "", "type": "string" }, "vNetTwoResourceId": { "defaultValue": "", "type": "string", "metadata": { "description": "Fully qualified name, such as /subscription/{subscriptionid}/..." } } }, "variables": { "vNetOne": { "id": "[parameters('vNetOneResourceId')]", "subnet": { "name": "[parameters('vNetOneSubnetName')]" } }, "vNetTwo": { "id": "[parameters('vNetTwoResourceId')]", "subnet": { "name": "[parameters('vNetTwoSubnetName')]" } }, "vNetTwoSupplied": "[and(not(empty(parameters('vNetTwoSubnetName'))), not(empty(parameters('vNetTwoResourceId'))))]" }, "resources": [ { "type": "Microsoft.PowerPlatform/enterprisePolicies", "apiVersion": "2020-10-30-preview", "name": "[parameters('policyName')]", "location": "[parameters('powerplatformEnvironmentRegion')]", "kind": "NetworkInjection", "properties": { "networkInjection": { "virtualNetworks": "[if(variables('vNetTwoSupplied'), concat(array(variables('vNetOne')), array(variables('vNetTwo'))), array(variables('vNetOne')))]" } } } ] }儲存範本並填寫詳細資料以建立企業原則,其中包含下列資訊:
- 原則名稱:出現在 Power Platform 系統管理中心的名稱。
-
位置:這是企業原則的位置,其必須與 Dataverse 環境的區域相對應:
- unitedstates
- 南非
- uk
- 日本
- 印度
- 法國
- 歐洲
- 德國
- 瑞士
- 加拿大
- 巴西
- 澳洲
- 亞洲
- 阿聯酋
- 韓國
- 挪威
- 新加坡
- 瑞典
- usgov
- VnetOneSubnetName:輸入第一個虛擬網路中子網路的名稱。
- VnetOneResourceId:輸入第一個虛擬網路的資源 ID。
- VnetTwoSubnetName:輸入第二個虛擬網路的子網路名稱。
- VnetTwoResourceId:輸入第二個虛擬網路的資源 ID。 它應該與 Json 指令碼中的字串相符,例如:vNetOneResourceId、vNetOneSubnetName
選取審閱 + 建立以完成企業原則。
選項 2:使用 PowerShell
使用您委託的虛擬網路和子網路執行 CreateSubnetInjectionEnterprisePolicy.ps1 指令碼。 請記住,支援兩個或更多區域的地理位置需要位於不同區域的兩個虛擬網路。
重要
如果您希望刪除虛擬網路或子網路,或收到諸如
InUseSubnetCannotBeDeleted和SubnetMissingRequiredDelegation之類的錯誤,則必須刪除企業原則 (如果存在)。 您可以使用以下命令刪除企業原則。Remove-AzResource -ResourceId $policyArmId -Force可以使用各種 PowerShell 指令碼來取得 ARM 資源 ID 的企業原則。
向具有 Power Platform 管理員角色的使用者授予企業原則的讀取權限。
設定 Power Platform 環境
先決條件
在以下過程中,您將您的環境指派給企業原則。 您的環境必須是受控環境才能為其指派企業原則。
選項 1:使用 Power Platform 系統管理中心
- 登入 Power Platform 系統管理中心。
- 在導覽窗格中,選擇安全性。
- 在安全性窗格中,選取資料和隱私權。
- 在資料保護與隱私權頁面中,選取Azure 虛擬網路原則。 顯示虛擬網路原則窗格。
- 選取要指派給企業原則的環境,選取原則,然後選取儲存。 現在企業原則是和環境掛鉤的。
選項 2:使用 PowerShell
- 執行 NewSubnetInjection.ps1 指令碼將企業原則套用到您的環境。
- 如果您想要從環境中移除企業原則,可以執行 RevertSubnetInjection.ps1 指令碼。
驗證連線
- 登入 Power Platform 系統管理中心。
- 在導覽窗格中,選擇管理。
- 在管理窗格中,選擇環境。
- 在環境頁面上,選取一個環境。
- 在命令列中,選取歷史記錄。
- 驗證狀態是否顯示成功。
最佳做法
確保根據您的要求選擇子網路大小。 將子網路委託給 Power Platform 後 (如果稍後需要變更子網路範圍),則需要 Microsoft 支援來反映更新的子網路變更。