共用方式為


使用 Private Link 的適用於 PostgreSQL 的 Azure 資料庫網路

Azure Private Link 可讓您為適用於 PostgreSQL 的 Azure 資料庫彈性伺服器建立私人端點,以將它帶入您的虛擬網路內。 這項功能是 虛擬網路整合所提供的網路功能建議替代方案。

透過 Private Link,虛擬網路與服務之間的流量會周遊Microsoft骨幹網路。 您的服務不再需要向公用網際網路公開。 您可以在虛擬網路中建立自己的 Private Link 服務,並提供給客戶。 在 Azure PaaS 服務、客戶擁有的服務和共用合作夥伴服務中,使用私人連結的設定和取用都是一致的。

透過兩種 Azure 資源類型向使用者公開私人連結:

  • 私人端點 (Microsoft.Network/PrivateEndpoints)
  • 私人連結服務 (Microsoft.Network/PrivateLinkServices)

私人端點

私人端點可將網路介面新增至資源,並向其提供透過虛擬網路指派的私人 IP 位址。 套用之後,您可透過虛擬網路與此資源進行獨佔通訊。 如需支援 Private Link 功能的 PaaS 服務清單,請檢閱 Private Link 。 私人端點是特定虛擬網路和子網路內的私人 IP 位址。

不同虛擬網路或子網中的多個私人端點,即使位址空間重疊,也可以參考相同的公用服務實例。

私人連結提供下列優勢:

  • 在 Azure 平台上私下存取服務︰使用私人端點將您的虛擬網路連線到可在 Azure 中用作應用程式元件的所有服務。 服務提供者可以在自己的虛擬網路中提供其服務。 取用者可在其本機虛擬網路存取這些服務。 Private Link 平台會透過 Azure 骨幹網路處理取用者與服務之間的連線。
  • 內部部署和對等互連網路:使用私人端點,從內部部署透過 Azure ExpressRoute 私人對等互連、虛擬私人網路 (VPN) 通道和對等互連虛擬網路,存取 Azure 中執行的服務。 無須設定 ExpressRoute Microsoft 對等互連或周遊網際網路來存取服務。 Private Link 提供將工作負載移轉至 Azure 的安全方式。
  • 防止資料外洩:私人端點會對應到 PaaS 資源的執行個體,而不是整個服務。 取用者只能連線至特定資源。 對服務中的任何其他資源進行存取都會遭到封鎖。 此機制可防止資料外洩風險。
  • 全域觸達:私密地連線到在其他區域中執行的服務:取用者的虛擬網路可能位於區域 A。它可以連線到區域 B 中 Private Link 背後的服務。

用戶端可透過以下各項連線至私人端點:

  • 相同的虛擬網路。
  • 同一區域或跨區域的對等互連虛擬網路。
  • 跨區域的網路對網路連線

用戶端也可以使用 ExpressRoute、私人對等互連或 VPN 通道從內部部署環境連線。 下列簡化圖表顯示了常見的使用案例。

顯示私人連結如何與私人端點搭配運作的圖表。

以下是 Azure Database for PostgreSQL 彈性伺服器中私人端點的跨功能可用性矩陣。

特點 可用性 備註
高可用性 是的 依照設計的方式運作。
讀取複本 是的 依照設計的方式運作。
使用虛擬端點來讀取複本 是的 依照設計的方式運作。
時間點還原 是的 依照設計的方式運作。
同時允許使用防火牆規則的公用/網際網路存取 是的 依照設計的方式運作。
主要版本升級 是的 依照設計的方式運作。
Microsoft Entra 驗證 是的 依照設計的方式運作。
與 PGBouncer 的連線集區 是的 依照設計的方式運作。
私人端點 DNS 是的 可依設計及記載方式運作。
使用客戶管理的金鑰進行加密 是的 依照設計的方式運作。

私人端點只能設定於在 Azure Database for PostgreSQL 彈性伺服器引入 Private Link 支援後建立的伺服器,且網路模式設定為不使用虛擬網路整合,而使用公用存取。

在該日期之前建立的伺服器,以及其網路模式設定為不使用虛擬網路整合,但公用存取,尚不支援建立私人端點。 使用虛擬網路整合建立的伺服器目前不支援使用私人端點。

從對等互連虛擬網路中的 Azure VM 進行連線

設定虛擬網路對等互連,以從對等互連虛擬網路中的 Azure 虛擬機器 (VM) 建立與適用於 PostgreSQL 的 Azure 資料庫彈性伺服器的連線。

從網路對網路環境中的 Azure VM 連線

設定網路對網路 VPN 閘道連線,以從不同區域或訂用帳戶中的 Azure VM,建立與適用於 PostgreSQL 的 Azure 資料庫彈性伺服器的連線。

透過 VPN 從本地環境連線

若要從內部部署環境連線到適用於 PostgreSQL 的 Azure 資料庫彈性伺服器,請選擇並實作下列選項之一:

當您使用私人端點時,流量會受到保護,只能傳送到私人連結資源。 平台會驗證網路連線,只允許那些觸達指定私人連結資源的網路連線。 若要存取相同 Azure 服務內的更多子資源,需要具有對應目標的更多私人端點。 例如,針對 Azure 記憶體,您需要個別的私人端點來存取檔案和 Blob 子資源。

私人端點會為 Azure 服務提供私人可存取的 IP 位址,但不一定會限制其公用網路存取。 不過,所有其他 Azure 服務都需要另外的存取控制。 這些控制項為您的資源提供額外的網路安全性層,提供保護以協助防止存取與私人連結資源相關聯的 Azure 服務。

私人端點支援網路原則。 網路原則可支援網路安全性群 (NSG)、使用者定義路由 (UDR) 和應用程式安全性群組 (ASG)。 如需為私人端點啟用網路原則的詳細資訊,請參閱<管理私人端點的網路原則>(機器翻譯)。 若要搭配私人端點使用 ASG,請參閱《使用私人端點設定應用程式安全性群組》。

當您使用私人端點時,您必須連線至相同的 Azure 服務,但使用私人端點 IP 位址。 親密端點連線需要個別的網域名稱系統 (DNS) 設定,以將私人 IP 位址解析為資源名稱。

私用 DNS 區域在虛擬網路內提供網域名稱解析,而不需要自訂 DNS 解決方案。 您可將私人 DNS 區域連結至每個虛擬網路,以向該網路提供 DNS 服務。

私人 DNS 區域會針對每項 Azure 服務提供個別 DNS 區域名稱。 例如,如果您在上一個映像中設定儲存體帳戶 Blob 服務的私人 DNS 區域,則 DNS 區域名稱為 privatelink.blob.core.windows.net。 檢閱 Microsoft 文件,以查看所有 Azure 服務的更多私人 DNS 區域名稱。

附註

只會在您使用建議的命名配置時,才會自動產生私人端點私人 DNS 區域組態:privatelink.postgres.database.azure.com。 在新布建的公用存取(未整合虛擬網路)伺服器上,DNS 配置有所變更。 伺服器的 FQDN 現在會變成形式為 servername.postgres.database.azure.com 的 CNAME 記錄,其會以下列其中一種格式指向 A 記錄:

  1. 如果伺服器具有連結預設私人 DNS 區域的私人端點,A 記錄會使用此格式: server_name.privatelink.postgres.database.azure.com
  2. 如果伺服器沒有私人端點,則 A 記錄會使用此格式 server_name.rs-<15 semi-random bytes>.postgres.database.azure.com

適用於 Azure 和內部部署資源的混合式 DNS

DNS 是整體登陸區域架構中的重要設計文章。 某些組織可能會想要使用其在 DNS 中的現有投資。 其他人可能想要針對其所有 DNS 需求採用原生 Azure 功能。

您可以使用 Azure DNS 私人解析器與 Azure 私用 DNS 區域進行跨內部部署名稱解析。 DNS 私人解析器可將 DNS 要求轉寄至另一部 DNS 伺服器,並提供可由外部 DNS 伺服器轉寄要求的 IP 位址。 因此,外部內部部署 DNS 伺服器能夠解析位於私人 DNS 區域的名稱。

如需使用 DNS 私人解析器搭配內部部署 DNS 轉寄站將 DNS 流量轉送至 Azure DNS 的詳細資訊,請參閱:

所述解決方案會延伸已具備 DNS 解決方案的內部部署網路,以解析 Azure.Microsoft 架構中的資源。

私有 DNS 區域通常在部署中樞虛擬網路的同一個 Azure 訂閱中集中管理。 這種中央託管的做法是由跨單位 DNS 名稱解析及其他中央 DNS 解析 (例如 Microsoft Entra) 的需求所驅動。 在多數情況下,只有網路和身分識別管理員有權管理區域中的 DNS 記錄。

在此類架構中,會設定下列元件:

  • 內部部署的 DNS 伺服器已針對每個私人端點公用 DNS 區域設定了條件式轉寄站,指向託管於中樞虛擬網路中的私人 DNS 解析程式。
  • 裝載於中樞虛擬網路中的私人 DNS 解析程式使用 Azure 提供的 DNS (168.63.129.16) 作為轉寄站。
  • 中樞虛擬網路必須連結至 Azure 服務的私人 DNS 區域名稱(例如 privatelink.postgres.database.azure.com,適用於 PostgreSQL 的 Azure 資料庫彈性伺服器)。
  • 所有 Azure 虛擬網路會使用裝載於中樞虛擬網路中的私人 DNS 解析程式。
  • 私人 DNS 解析程式對客戶的公司網域不具權威性,因為它只是個轉寄站(例如 Microsoft Entra 網域名稱),所以它應該將輸出端點轉寄至客戶的公司網域,指向內部部署的 DNS 伺服器,或指向在 Azure 上部署且對這些區域具權威性的 DNS 伺服器。

根據預設,虛擬網路中的子網路會停用網路原則。 若要利用 UDR 和 NSG 等網路原則支援,您必須啟用子網路的網路原則支援。 此設定僅適用於子網路中的私人端點。 此設定會影響子網路中所有的私人端點。 針對子網路中的其他資源,會根據 NSG 中的安全性規則來控制存取權。

您可以僅針對 NSG、僅針對 UDR 或兩者啟用網路原則。 如需詳細資訊,請參閱管理私人端點的網路原則

NSG 和私人端點限制列於什麼是私人端點?中。

重要

防止資料外洩:私人端點會對應到 PaaS 資源的執行個體,而不是整個服務。 取用者只能連線至特定資源。 對服務中的任何其他資源進行存取都會遭到封鎖。 此機制可提供基本保護,防止資料外洩風險。

當搭配防火牆規則使用 Private Link 時,可能會發生下列情況和結果:

  • 如果您未設定任何防火牆規則,依預設,流量將無法存取適用於 PostgreSQL 的 Azure 資料庫彈性伺服器。

  • 如果您設定公用流量或服務端點並建立私人端點,不同類型的傳入流量會由對應類型的防火牆規則所授權。

  • 如果未設定任何公用流量或服務端點並建立私人端點,只能透過私人端點來存取適用於 PostgreSQL 的 Azure 資料庫彈性伺服器。 如果您未設定公用流量或服務端點,在拒絕或刪除所有已核准的私人端點之後,流量將無法存取適用於 PostgreSQL 的 Azure 資料庫彈性伺服器。

疑難排解

當您搭配適用於 PostgreSQL 的 Azure 資料庫彈性伺服器使用 Private Link 端點時,可能會因為設定錯誤或網路限制而發生連線問題。 若要針對這些問題進行疑難解答,請確認私人端點、DNS 設定、網路安全組 (NSG) 和路由表的設定。 有系統地解決這些區域,可協助您找出並解決常見問題,確保順暢連線,並安全地存取您的資料庫。

私人端點型網路連線問題

如果您在使用私人端點型網路時發生連線問題,請檢查下列區域:

  • 確認 IP 位址指派:檢查私人端點是否已指派正確的 IP 位址,而且與其他資源沒有任何衝突。 如需私人端點和 IP 的詳細資訊,請參閱《管理 Azure 私人端點》。
  • 檢查 NSG:檢閱私人端點子網路的 NSG 規則,以確保允許必要的流量,而且沒有發生衝突的規則。 如需詳細資訊,請參閱《網路安全性群組》。
  • 驗證路由表設定:確保與私人端點子網路相關聯的路由表,以及已連線的資源已正確設定適當的路由。
  • 使用網路監視和診斷:使用 Azure 網路監看員,透過連線監視器或封包擷取等工具來監視和診斷網路流量。 如需詳細資訊,請參閱《什麼是 Azure 網路監看員?》。

如需針對私人端點進行疑難排解的詳細資訊,請參閱《針對 Azure 私人端點連線性問題進行疑難排解》。

使用私人端點型網路進行 DNS 解析

如果您在使用私人端點型網路時發生 DNS 解析問題,請檢查下列區域:

  • 驗證 DNS 解析:檢查私人端點使用的 DNS 伺服器或服務,以及連線的資源是否正常運作。 確定私人端點的 DNS 設定正確無誤。 如需私人端點和 DNS 區域設定的詳細資訊,請參閱《Azure 私人端點私人 DNS 區域值》。
  • 清除 DNS 快取:清除私人端點或用戶端機器上的 DNS 快取,以確保擷取最新的 DNS 資訊,並避免發生不一致的錯誤。
  • 分析 DNS 記錄:檢閱 DNS 記錄中是否有錯誤訊息或異常模式,例如 DNS 查詢失敗、伺服器錯誤或逾時。 如需 DNS 計量的詳細資訊,請參閱《Azure DNS 計量和警示》。