使用 VPC Service Controls 設定服務範圍

VPC Service Controls 是一項 Google Cloud功能,可用來設定 service perimeter 並定義資料移轉邊界。您可以將 VPC Service Controls 與 Eventarc 搭配使用,協助保護服務。

建議您在建立 service perimeter 時保護所有服務。

Eventarc Advanced

VPC Service Controls 支援 Eventarc Advanced 時,適用下列限制。

您可以查看輸入的平台記錄,確認 VPC Service Controls 是否支援 Enrollment、GoogleApiSource、MessageBus 和 Pipeline 資源。

匯流排

如要發布至 Eventarc Advanced 匯流排,事件來源必須與匯流排位於相同的 service perimeter。舉例來說,service perimeter 外部的匯流排無法接收 perimeter 內部 Google Cloud專案的事件。

事件消費者必須與 Eventarc Advanced 匯流排位於相同的 service perimeter,才能取用事件訊息。舉例來說,perimeter 內部的匯流排無法將事件轉送至 perimeter 外部的消費者。

管道

建立或更新 Eventarc Advanced 管道時,系統會嚴格執行目的地驗證。強制執行後,效力不會溯及既往。在設定 service perimeter 之前建立的任何管道都會繼續執行。無法建立或更新目的地不受支援的管道。

下表列出 Eventarc Advanced 與 VPC Service Controls 整合時,支援和不支援的目的地:

支援的目的地
  • Cloud Run (*.run.app) 和 Cloud Run functions (*.cloudfunctions.net)
  • VPC Service Controls 支援的第一方 Google API (*.googleapis.com),包括 *.rep.googleapis.com、LOCATION.SERVICE.googleapis.com 和 REGION-SERVICE.googleapis.com 等區域端點,以及 mTLS 端點 (*.mtls.googleapis.com)
  • Eventarc Advanced 匯流排、Pub/Sub 主題和 Workflows 工作流程
  • 任何 HTTP 目的地 (如果已設定網路連結)
不支援的目的地
  • 外部 HTTP 端點,包括 Cloud Run 和 Cloud Run functions 自訂網域,會遭到封鎖並傳回 HTTP 403 狀態碼
  • *.cloud.run 和 *.ai.studio 網域上的 Cloud Run 網址:系統會以 HTTP 403 狀態碼封鎖,因為只支援 *.run.app 網址
  • VPC Service Controls 不支援的第一方 Google API (例如 Alpha 版服務),會遭到封鎖並傳回 HTTP 403 狀態碼

Eventarc Standard

Eventarc Standard 支援 VPC Service Controls,但有下列限制。

  • 在受 service perimeter 保護的專案中,Eventarc Standard 的限制與 Pub/Sub 相同:

    • 將事件轉送至 Cloud Run 目的地時,只有在推送端點設為具有預設 run.app 網址的 Cloud Run 服務時,才能建立新的 Pub/Sub 推送訂閱項目。自訂網域不適用。

    • 如果將事件轉送至 Workflows 目的地,且 Pub/Sub 推送端點設為 Workflows 執行作業,則只能透過 Eventarc Standard 建立新的 Pub/Sub 推送訂閱項目。用於 Workflows 端點推送驗證的服務帳戶,必須包含在 service perimeter 內。

  • 由於 VPC Service Controls 會禁止為內部 HTTP 端點建立 Eventarc Standard 觸發條件,因此您無法在 VPC Service Controls service perimeter 內將事件轉送至這些端點。

後續步驟