使用私人端點進行存取控制
您可以為您的 Azure Web PubSub 資源使用 [私人端點],以允許 [虛擬網路] (VNet) 中的用戶端透過 [私人連結] 安全存取資料。 私人端點會為您的 Web PubSub 資源使用 VNet 位址空間中的 IP 位址。 VNet 上的用戶端和您 Web PubSub 資源之間的網路流量透過 Microsoft 網路上的私人連結,消除了公用網際網路上的暴露。
為您的 Web PubSub 資源使用私人端點有助於您:
- 藉由使用網路存取控制來封鎖 Web PubSub 公用端點上的所有連線,從而保護您的 Web PubSub 資源。
- 提高 VNet 的安全性,方法是讓您可以封鎖 VNet 中的資料外流。
- 藉由使用具有私人對等互連的 [VPN] 或 [Azure ExpressRoute],從連線至 VNet 的内部部署網路安全連線至 Web PubSub。
在虛擬網路中使用私人端點
私人端點是 VNet 中 Azure 服務特殊的網路介面。 當您為 Web PubSub 資源建立私人端點時,它會在那您的 VNet 上的用戶端和您的服務之間提供安全的連線。 私人端點獲指派的 IP 位址來自您 VNet 的 IP 位址範圍。 私人端點和 Web PubSub 之間的連線使用安全的私人連結。
VNet 中的應用程式可以透過使用私人端點無縫連線至 Web PubSub 資源。 應用程式 [使用與其他情況相同的連接字串和授權機制]。
私人端點可以與 Web PubSub 資源支援的所有通訊協定一起使用,包括 REST API。
當您在 VNet 中為 Web PubSub 資源建立私人端點時,會向 Web PubSub 資源擁有者傳送同意要求以供核准。 如果要求私人端點的使用者也是 Web PubSub 資源的擁有者,則此同意要求將自動獲核准。
您可以在 [Azure 入口網站] 的 [私人端點] 索引標籤上管理 Web PubSub 資源的同意要求和私人端點。
連線到私人端點
使用私人端點之 VNet 上的用戶端應使用與透過公用端點連線的用戶端使用的 Web PubSub 資源相同的連接字串。 我們依賴網域名稱系統 (DNS) 解析,透過私人連結自動將連線從 VNet 路由至 Web PubSub。
重要
使用與公用端點相同的連接字串,藉由使用私人端點連線至 Web PubSub。 請勿使用其 privatelink
子網域 URL 連線至 Web PubSub。
根據預設,我們會建立一個附加至 VNet 的私人 DNS 區域,並對私人端點進行必要的更新。 如果您使用的是自己的 DNS 伺服器,您可能需要對 DNS 設定進行其他變更。 下一節將説明私人端點所需的變更。
私人端點的 DNS 變更
建立私人端點時,Web PubSub 資源的 DNS CNAME 資源記錄將變更為具有前置位元的子網域中的別名。privatelink
根據預設,我們還建立了與 privatelink
子網域對應的 [私人 DNS 區域],其中包含私人端點的 DNS A 資源記錄。
當您使用私人端點從 VNet 外部解析 Web PubSub 資源網域名稱時,它會解析為 Web PubSub 資源的公用端點。 從裝載私人端點的 VNet 解析時,網域名稱會解析為私人端點的 IP 位址。
對於前面所示的範例,當 Web PubSub 資源 sample
從托管私人端點的 VNet 外部解析時,其 DNS 資源記錄如下:
名稱 | 類型 | 值 |
---|---|---|
sample.webpubsub.azure.com |
CNAME | sample.privatelink.webpubsub.azure.com |
sample.privatelink.webpubsub.azure.com |
A | <Web PubSub 公用 IP 位址> |
您可以透過使用網路存取控制,透過公用端點拒絕或控制 VNet 外部用戶端的存取。
當 Web PubSub 資源 sample
由托管私人端點的 VNet 中的用戶端解析時,其 DNS 資源記錄類似於此範例:
名稱 | 類型 | 值 |
---|---|---|
sample.webpubsub.azure.com |
CNAME | sample.privatelink.webpubsub.azure.com |
sample.privatelink.webpubsub.azure.com |
A | 10.1.1.5 |
此方法透過為托管私人端點的 VNet 上的用戶端和 VNet 外部的用戶端 [使用相同的連接字串] 來存取 Web PubSub。
如果您是在網路上使用自訂 DNS 伺服器,用戶端必須能夠將 Web PubSub 資源端點的完整網域名稱 (FQDN) 解析為私人端點 IP 位址。 您應設定 DNS 伺服器,以將私人連結子網域委派給 VNet 的私人 DNS 區域,或為 sample.privatelink.webpubsub.azure.com
設定 A 記錄以使用私人端點 IP 位址。
提示
如果您使用自訂或內部部署 DNS 伺服器,您應設定 DNS 伺服器將 privatelink
子網域中的 Azure Web PubSub 資源名稱解析為私人端點 IP 位址。 若要這麼做,您可以將 privatelink
子網域委派給 VNet 的私人 DNS 區域,或在 DNS 伺服器上設定 DNS 區域,然後新增 DNS A 記錄。
我們建議您在 Web PubSub 資源中使用 privatelink.webpubsub.azure.com
作為私人端點的 DNS 區域名稱。
如需設定您自己的 DNS 伺服器以支援私人端點的詳細資訊,請參閱下列文章:
建立私人端點
以下章節説明了如何建立私人端點和 Web PubSub 的新執行個體,以及如何為現有 Web PubSub 執行個體建立私人端點。
在 Web PubSub 的新執行個體中建立私人端點
在 Azure 入口網站中,建立 Azure Web PubSub 的新執行個體。 在 [網路] 索引標籤的 [連線方法] 中,選取 [私人端點]。
選取 [新增]。 選取或輸入訂用帳戶、資源群組名稱、Azure 區域和新私人端點的名稱。 選擇要使用的虛擬網路和子網路。
選取 [檢閱 + 建立]。
為現有 Web PubSub 資源建立私人端點
在 Azure 入口網站中,移至您的 Web PubSub 資源。
在左側功能表上,選取 [設定] 下的 [私人端點連線]。
選取 [私人端點]。
為新的私人端點選取或輸入訂用帳戶、資源群組、資源名稱和區域的值。
選取目標 Web PubSub 資源。
選取目標虛擬網路。
選取 [檢閱 + 建立]。
定價
如需價格詳細資料,請參閱 Azure Private Link 價格。
已知問題
請記住以下關於在 Web PubSub 中使用私人端點的已知問題。
免費層條件約束
使用免費層建立的 Azure Web PubSub 執行個體無法與私人端點整合。
具有私人端點的 VNet 中,用戶端的存取條件限制
具有現有私人端點的 VNet 中的用戶端在存取具有私人端點的其他 Web PubSub 執行個體時受到條件約束。 例如,VNet N1 具有 Web PubSub 執行個體 W1 的私人端點。 如果 Web PubSub 執行個體 W2 在 VNet N2 中有私人端點,則 VNet N1 中的用戶端也必須使用私人端點存取 Web PubSub 執行個體 W2。
如果 Web PubSub 執行個體 W2 沒有任何私人端點,則 VNet N1 中的用戶端可以存取該帳戶中的 Web PubSub 資源,而無需使用私人端點。 此條件約束是 Web PubSub 執行個體 W2 建立私人端點時,DNS 變更所產生的結果。