在 Azure SQL 受控執行個體中設定公用端點

適用於:Azure SQL 受控執行個體

Azure SQL 受控執行個體的公用端點可讓您從虛擬網路外部存取受控執行個體的資料。 您可以從多租用戶 Azure 服務 (例如 Power BI、Azure App Service 或內部部署網路) 存取受控執行個體。 使用受控執行個體上的公用端點,您就不需要使用 VPN,這可能有助於避免 VPN 輸送量問題。

在本文中,您將學會如何:

  • 啟用或停用受控執行個體的公用端點
  • 設定受控執行個體網路安全性群組 (NSG),以允許受控執行個體公用端點的輸入流量
  • 取得受控執行個體公用端點連接字串

權限

由於受控執行個體中的資料敏感度,啟用受控執行個體公用端點的設定需要透過兩個步驟程序來進行。 此安全性措施遵守職責區分 (SoD):

  • 受控執行個體系統管理員必須在受控執行個體上啟用公用端點。 您可以在受控執行個體資源的 [概觀] 頁面上找到受控執行個體系統管理員。
  • 網路系統管理員必須使用網路安全性群組 (NSG) 來允許流量流向 SQL 受控執行個體。 如需詳細資訊,請檢閱網路安全性群組權限

啟用公用端點

您可以使用 Azure 入口網站、Azure PowerShell 或 Azure CLI 來啟用您的 SQL 受控執行個體的公用端點。

請依照下列步驟在 Azure 入口網站中啟用 SQL 受控執行個體的公用端點:

  1. 前往 Azure 入口網站
  2. 開啟具有受控執行個體的資源群組,然後選取您要設定公用端點的 SQL 受控執行個體
  3. [安全性] 設定中,選取 [網路] 索引標籤。
  4. 在虛擬網路設定頁面中,選取 [啟用],然後選取儲存圖示以更新設定。

Screenshot shows the Virtual network page of SQL Managed Instance with the Public endpoint enabled.

停用公用端點

您可以使用 Azure 入口網站、Azure PowerShell 和 Azure CLI 來停用您的 SQL 受控執行個體的公用端點。

若要使用 Azure 入口網站停用公用端點,請遵循下列步驟:

  1. 前往 Azure 入口網站
  2. 開啟具有受控執行個體的資源群組,然後選取您要設定公用端點的 SQL 受控執行個體
  3. [安全性] 設定中,選取 [網路] 索引標籤。
  4. 在虛擬網路設定頁面中,選取 [停用],然後選取[儲存]圖示以更新設定。

允許網路安全性群組中的公用端點流量

使用 Azure 入口網站來允許網路安全性群組內的公用流量。 執行下列步驟:

  1. Azure 入口網站中移至您的 SQL 受控執行個體的 [概觀] 頁面。

  2. 選取 [虛擬網路/子網路] 連結,這會帶您前往虛擬網路設定頁面。

    Screenshot shows the Virtual network configuration page where you can find your Virtual network/subnet value.

  3. 在虛擬網路的設定窗格中選取 [子網路] 索引標籤,並記下您受控執行個體的安全性群組名稱。

    Screenshot shows the Subnet tab, where you can get the SECURITY GROUP for your managed instance.

  4. 返回包含受控執行個體的資源群組。 您應該會看到前述網路安全性群組名稱。 選取 [網路安全性群組]名稱以開啟 [網路安全性群組] 組態頁面。

  5. 選取 [輸入安全性規則] 索引標籤,並使用下列設定新增優先順序高於 deny_all_inbound 規則的規則:

    設定 建議的值 描述
    來源 任何 IP 位址或服務標籤
    • 針對 Power BI 之類的 Azure 服務,請選取 Azure 雲端服務標籤
    • 針對您的電腦或 Azure 虛擬機器,請使用 NAT IP 位址
    來源連接埠範圍 * 將此保留為 * (任何),因為通常會動態配置來源連接埠,因此無法預測
    目的地 任意 將目的地保留為 [任何],以允許受控執行個體子網路的輸入流量
    目的地連接埠範圍 3342 將目的地連接埠設定為 3342,這是受控執行個體公用 TDS 端點
    通訊協定 TCP SQL 受控執行個體針對 TDS 使用 TCP 通訊協定
    動作 允許 允許透過公用端點進行受控執行個體的輸入流量
    優先順序 1300 確定此規則的優先順序高於 deny_all_inbound 規則

    Screenshot shows the Inbound security rules with your new public_endpoint_inbound rule above the deny_all_inbound rule.

    注意

    受控執行個體的公用端點連線使用連接埠 3342,目前無法加以變更。

確認路由已正確設定

如果 IP 位址不在子網路路由表中任何其他路由的位址首碼內,則具有 0.0.0.0/0 位址首碼的路由會指示 Azure 如何路由該 IP 位址指定的流量。 建立子網路時,Azure 會建立 0.0.0.0/0 位址首碼的預設路由,且下一個躍點類型為網際網路

若覆寫此預設路由,且未新增必要的路由來確保公用端點流量可直接路由至網際網路,可能會導致非對稱路由問題,因為傳入流量不會透過虛擬設備/虛擬網路閘道傳入。 請確定透過公用網際網路連線到受控執行個體的所有流量都會透過公用網際網路傳回,方法是為每個來源新增特定路由,或將預設路由設定為 0.0.0.0/0 位址前綴回到網際網路 作為下一個躍點類型。

請參閱 0.0.0.0/0 位址首碼上對此預設路由變更影響的更多詳細資料。

取得公用端點連接字串

  1. 瀏覽至已啟用公用端點的受控執行個體設定頁面。 選取 [設定] 下的 [連接字串] 索引標籤。

  2. 公用端點主機名稱的格式為 <mi_name>.public.<dns_zone>.database.windows.net,而用於連線的連接埠為 3342。 以下是連接字串的伺服器值範例,表示可以在 SQL Server Management Studio 或 Azure Data Studio 連線中使用的公用端點連接埠:<mi_name>.public.<dns_zone>.database.windows.net,3342

    Screenshot shows the connection strings for your public and VNet-local endpoints.

下一步

了解如何透過公用端點安全地使用 Azure SQL 受控執行個體