Share via


透過共用私人端點保護 Azure SignalR 輸出流量

當您在 Azure SignalR Service 中使用無伺服器模式時,您可以對上游服務建立輸出私人端點連線

上游服務 (例如 Azure Web 應用程式和 Azure Functions) 可設定為接受來自一些虛擬網路的連線,並拒絕源自公用網路的外部連線。 若要連線到這些端點,您可以建立輸出私人端點連線。

Diagram showing architecture of shared private endpoint.

此輸出方法須符合下列需求:

  • 上游服務必須是 Azure Web 應用程式或 Azure Function。
  • Azure SignalR Service 不得位於免費層。
  • Azure Web 應用程式或 Azure Function 必須位於特定 SKU 上。 請參閱針對 Azure Web 應用程式使用私人端點

在本文中,您將了解如何建立具有輸出私人端點連線的共用私人端點,以保護流向上游 Azure Function 執行個體的輸出流量。

您可以透過 SignalR Service API 建立受保護資源的私人端點。 這些端點稱為共用私人連結資源,可讓您共用資源的存取權,例如與 Azure Private Link 服務整合的 Azure Function。 這些私人端點是在 SignalR Service 執行環境內建立,無法在此環境外存取。

必要條件

您需要下列資源才能完成本文中的步驟:

  • Azure 資源群組

  • Azure SignalR Service 執行個體 (不得位於免費層)

  • Azure Function 執行個體

  • 注意

本文中的範例有下列假設:

  • SignalR Service 的資源識別碼是 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.SignalRService/signalr/contoso-signalr
  • 上游 Azure Function 的資源識別碼是 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Web/sites/contoso-func。 其餘的範例示範如何設定 contoso-signalr 服務,使上游的函式呼叫通過私人端點,而不是公用網路。 在範例中可以使用您自己的資源識別碼。
  1. 在 Azure 入口網站中,移至您的 SignalR Service 資源。

  2. 在左側功能表上,選取 [網路]

  3. 選取 [私人存取] 索引標籤。

  4. 在 [共用私人端點] 區段中,選取 [新增共用私人端點]

    Screenshot of shared private endpoints management.

    輸入下列資訊:| 欄位 | 描述 | | ----- | ----------- | | 名稱 | 共用私人端點的名稱。 | | 類型 | 選取 [Microsoft.Web/sites] | | 訂用帳戶 | 包含函數應用程式的訂用帳戶。 | | 資源 | 輸入函數應用程式的名稱。 | | 要求訊息 | 輸入「請核准」|

  5. 選取 [新增]。

    Screenshot of adding a shared private endpoint.

共用私人端點資源將處於 [成功] 佈建狀態。 連線狀態在目標資源端為 [待決] 核准。

Screenshot of an added shared private endpoint.

核准函式的私人端點連線

重要

在您核准私人端點連線之後,就無法再從公用網路存取函式。 您可能需要在虛擬網路中建立其他私人端點,才能存取函式端點。

  1. 在 Azure 入口網站中,移至您的函數應用程式。

  2. 從左側功能表中選取 [網路]

  3. 選取 [私人端點連線]。

  4. 在 [輸入流量] 中選取 [私人端點]

  5. 選取私人端點連線的 [連線名稱]

  6. 選取核准

    Screenshot of the Azure portal, showing the Private endpoint connections pane.

    請確定顯示私人端點連線,如下列的螢幕擷取畫面所示。 可能需要幾分鐘,狀態才會更新。

    Screenshot of the Azure portal, showing an Approved status on the Private endpoint connections pane.

核准需要幾分鐘才會傳播至 SignalR Service。 您可以使用 Azure 入口網站或 Azure CLI 來檢查狀態。

Screenshot of an approved shared private endpoint.

此時會建立 SignalR Service 與 Azure Function 之間的私人端點。

確認上游呼叫來自私人 IP

設定私人端點之後,您可以檢查 X-Forwarded-For 標頭上游端,以驗證來自私人 IP 的傳入呼叫。

Screenshot of the Azure portal, showing incoming requests are from a private IP.

清理

如果不打算使用您在本文中建立的資源,您可以刪除資源群組。

警告

刪除資源群組會刪除其中的所有資源。 如果本文章範圍以外的資源存在於指定的資源群組中,則也會一併刪除。

下一步

深入了解私人端點: