Secure Web Proxy 政策總覽

本頁說明安全 Web Proxy 政策的來源屬性目的地屬性。此外,本頁面說明Transmission Control Protocol (TCP) 規則式 Proxy,以及如何為應用程式設定 TCP Proxy 規則

Secure Web Proxy 政策會根據下列兩個參數運作:

根據預設,Secure Web Proxy 的設定會拒絕透過 Proxy 傳送的任何出站網頁流量 (HTTP 或 HTTPS),除非您在 Secure Web Proxy 例項的政策中加入特定規則。

政策的來源屬性

使用下列屬性,讓 Secure Web Proxy 執行個體識別流量的來源:

  • 服務帳戶:使用服務帳戶來識別流量來源,並設定安全網路 Proxy 政策。
  • 安全標記:使用Resource Manager 標記控管 Google Cloud 資源存取權。
  • IP 位址:指派企業 IP 位址 (或靜態 Google Cloud IP 位址),讓安全 Web Proxy 用於處理外部流量。

支援的識別資訊

您可以使用以來源身分為準的安全性政策 (服務帳戶和安全標記),保護多項 Google Cloud 服務的網路流量。下表顯示使用來源身分別的安全性政策時,是否支援各種 Google Cloud 服務。

Google Cloud 服務 服務帳戶支援 安全標記支援
VM
GKE 節點
GKE 容器 1 1
Cloud Run 的直接 VPC 1
無伺服器虛擬私有雲存取連接器 2 2
Cloud VPN 1 1
在內部安裝 Cloud Interconnect 1 1
應用程式負載平衡器
網路負載平衡器
1 Google Cloud不支援。
2 來源 IP 位址是唯一的,可以改用該位址。

下表顯示使用來源身分為基礎的安全性政策時,是否支援各種虛擬私有雲 (VPC) 架構:

VPC VPC 架構 支援
虛擬私有雲內 跨專案 (共用虛擬私有雲)
虛擬私有雲內 跨區域
跨 VPC 跨互連連結 (對等 VPC)
跨 VPC 跨 Private Service Connect
跨 VPC 跨 Network Connectivity Center 輪輻

政策的目的地屬性

透過 Secure Web Proxy,您可以根據目的地網域和完整網址路徑 (如果已啟用 TLS 檢查) 設定應用程式政策。

使用下列屬性,讓 Secure Web Proxy 執行個體判斷允許的流量目的地:

對於以 HTTP 為基礎的到達網頁流量,您可以為應用程式使用 host() 到達網頁屬性。

對於以 HTTPS 為基礎的目的地流量,您可以為應用程式使用各種 request.* 目的地相關屬性 (例如 request.method)。

如要進一步瞭解可用於 HTTP 和 HTTPS 流量的目的地屬性,請參閱「屬性」。

TCP Proxy 規則

您可以使用 Secure Web Proxy 執行個體,為傳輸控制通訊協定 (TCP) 流量設定 Proxy 規則,包括與網路通訊協定無關的流量。舉例來說,您可以選擇允許或封鎖網站或應用程式透過 80 (HTTP) 或 443 (HTTPS) 以外的任何通訊埠傳送流量。

如果工作負載 (例如應用程式和服務) 使用安全網頁 Proxy 做為下一個躍點,則套用 TCP Proxy 規則會很有幫助。這是因為使用以路線為基礎的重新導向程序,會將非 HTTP(S) 和非網頁流量導向至安全網頁 Proxy 例項。這樣一來,您就能封鎖惡意流量,防止流量傳送至應用程式,並控制哪些應用程式或網站可以存取您的網路。

為應用程式設定 TCP Proxy 規則

如要實作 TCP proxy 規則,並為應用程式建立允許或封鎖流量規則,您必須指定目的地通訊埠。您可以視需要加入下列任一 SessionMatcher 屬性,進一步細化允許或封鎖規則的條件。

屬性 屬性類型 說明
source.ip 字串 傳送要求的用戶端 IP 位址。
source.port 字串 傳送要求的用戶端通訊埠。
destination.port 字串 Secure Web Proxy 執行個體傳送流量的上游通訊埠。
source.matchTag(SECURE_TAG) 布林值

True (如果來源與 SECURE_TAG 相關聯)。

引數是安全標記的永久 ID,例如 source.matchTag('tagValues/123456')

source.matchServiceAccount(SERVICE_ACCOUNT) 布林值 True,如果來源與 SERVICE_ACCOUNT 相關聯,例如 source.matchServiceAccount('x@my-project.iam.gserviceaccount.com')
inIpRange(IP_ADDRESS,
IP_RANGE)
布林值 True,如果 IP_ADDRESS 包含在 IP_RANGE 中,例如 inIpRange(source.ip, '1.2.3.0/24')。IPv6 位址的子網路遮罩不得大於 /64

限制

Secure Web Proxy 不支援為 User Datagram Protocol (UDP) 應用程式設定 TCP Proxy 規則。因此,Secure Web Proxy 會封鎖以 UDP 為基礎的應用程式流量。

主機比對規則

為 Secure Web Proxy 執行個體設定輸出規則時,請務必根據外出要求的目的主機定義規則。您也應考量主機比對功能的運作方式,並根據 Secure Web Proxy 執行個體的部署模式進行設定。

明確的 Proxy 模式

  • 針對未加密的 HTTP 要求,您可以在 SessionMatcher 中使用 host() == "myownpersonaldomain.com" 規則。安全 Web Proxy 會根據 HTTP 要求的 CONNECT 標頭中的 host 欄位驗證此規則。

  • 如果您想啟用 TLS 檢查功能並根據 Application Matcher 設定規則,則必須設定評估為 TRUESessionMatcher 規則。舉例來說,您可以在 SessionMatcher 中使用 host() == "myownpersonaldomain.com" 規則,然後在 ApplicationMatcher 中新增 request.host() == "myownpersonaldomain.com" 規則。

    安全網路 Proxy 會先根據 HTTP 要求的 CONNECT 標頭中的 host 欄位,驗證 SessionMatcher。只有在 SessionMatcher 規則有效時,Secure Web Proxy 才會檢查 ApplicationMatcher 規則。

下一個躍點模式

  • 針對未加密的 HTTP 要求,您可以在 SessionMatcher 中使用 host() == "myownpersonaldomain.com" 規則。安全網路 Proxy 會根據標準 HTTP 要求標頭中的 host 欄位驗證這項規則。

    不過,如果要求已加密 TLS,Secure Web Proxy 會根據傳出要求中的「伺服器名稱指示 (SNI)」標頭,驗證相同的規則。

  • 如果您想啟用 TLS 檢查功能並根據 ApplicationMatcher 設定規則,則必須設定評估為 TRUESessionMatcher 規則。舉例來說,您可以在 SessionMatcher 中使用 host() == "myownpersonaldomain.com" 規則,然後在 ApplicationMatcher 中新增 request.host() == "myownpersonaldomain.com" 規則。

    Secure Web Proxy 會先根據傳出要求中的 SNI 標頭,驗證 SessionMatcher。只有在 SessionMatcher 規則有效時,Secure Web Proxy 才會檢查 ApplicationMatcher 規則。