允許從 VPC Service Controls 服務範圍外部,透過公開端點存取受保護的資源

本頁面說明如何使用輸入和輸出規則,允許來自虛擬私有雲網路內部 IP 位址的流量進入 service perimeter。

參考架構

在下列參考架構中,系統會部署 Shared VPC,並在服務專案中提供 Gemini 模型,ph-fm-svc-project (基礎模型服務專案) 具有下列服務政策屬性,可允許已知公開存取 Gemini Enterprise Agent Platform 上的 Gemini Enterprise API for 生成式 AI:

  • 單一 VPC Service Controls 範圍
  • 存取層級 - 已知的外部公開端點 CIDR 範圍
  • 專案定義的使用者身分

架構圖:使用 VPC Service Controls 建立服務範圍。

建立存取層級

Access Context Manager 可讓 Google Cloud 組織管理員依據屬性,為Google Cloud中的專案和資源定義精細的存取控管機制。管理員首先要定義存取權政策,這是適用於全機構的存取層級和服務安全防護範圍容器。

存取層級描述接受要求的必要條件,例如:

在本參考架構中,我們使用公開 IP 子網路存取層級,建構 VPC Service Controls 存取權政策。

  1. 在 Google Cloud 控制台頂端的專案選取器中,按一下「全部」分頁標籤,然後選取您的機構。

  2. 按照「建立基本存取層級」頁面的指示建立基本存取層級。指定下列選項:

    1. 在「使用以下模式建立條件:」下方,選擇「基本模式」
    2. 在「Access level title」(存取層級標題) 欄位中輸入 corp-public-block
    3. 在「條件」部分,將「符合條件時,傳回以下值:」選項設為「TRUE」
    4. 在「IP 子網路」下方,選擇「公用 IP」
    5. 針對 IP 位址範圍,請指定需要存取 VPC Service Controls perimeter 的外部 CIDR 範圍。

建立 VPC Service Controls 服務範圍

建立服務範圍時,除了受保護的專案,您也可以在建立 VPC Service Controls 範圍時指定存取層級 (IP 位址),允許從範圍外部存取受保護的服務。搭配使用 VPC Service Controls 和 Shared VPC 時,最佳做法是建立一個大型 perimeter,其中包含主專案和服務專案;如果只在 perimeter 中選取服務專案,服務專案所屬的網路端點就會顯示在 perimeter 外部,因為子網路與主專案相關聯。

選取新範圍的設定類型

在本節中,您將以模擬測試模式建立 VPC Service Controls 服務範圍。在模擬測試模式下,perimeter 會記錄違規事項,就好像 perimeter 已強制執行一樣,但不會禁止存取受限制服務。建議您先使用模擬測試模式,再切換至強制執行模式,這是最佳做法。

  1. 在 Google Cloud 控制台導覽選單中,依序按一下「Security」(安全性) 和「VPC Service Controls」

    前往 VPC Service Controls 頁面

  2. 系統顯示提示時,請選取組織、資料夾或專案。

  3. 在「VPC Service Controls」頁面中,按一下「Dry run mode」(模擬測試模式)

  4. 按一下「New perimeter」(新增 perimeter)

  5. 在「New VPC Service Perimeter」分頁的「Perimeter Name」方塊中,輸入範圍的名稱。否則請接受預設值。

    Perimeter 名稱的長度上限為 50 個字元,開頭須為英文字母,且只能包含 ASCII 拉丁字母 (a-z、A-Z)、數字 (0-9) 或底線 (_)。範圍名稱會區分大小寫,且在存取政策中不得重複。

選取要保護的資源

  1. 按一下「要保護的資源」

  2. 如要新增您想在該 perimeter 內保護的專案或虛擬私有雲網路,請按照下列步驟操作:

    1. 按一下「新增資源」

    2. 如要將專案新增至範圍,請在「新增資源」窗格中,按一下「新增專案」

      1. 如要選取專案,請在「Add projects」(新增專案) 對話方塊中,勾選該專案的核取方塊。勾選下列專案的核取方塊:

        • aiml-host-project
        • ph-fm-svc-project
      2. 按一下「新增所選資源」。新增的專案會顯示在「Projects」(專案) 部分中。

選取受限制的服務

在本參考架構中,受限 API 的範圍有限,只啟用 Gemini 必要的 API。不過,我們建議您在建立 perimeter 時限制所有服務,以降低Google Cloud 服務中發生資料竊取的風險。

如要選取要在 perimeter 內保護的服務,請按照下列步驟操作:

  1. 按一下「受限制的服務」

  2. 在「受限制的服務」窗格中,按一下「新增服務」

  3. 在「Specify services to restrict」(指定要限制的服務) 對話方塊中,選取「Agent Platform API」

  4. 按一下「新增 Agent Platform API」

選用:選取可透過虛擬私有雲存取的服務

「可透過虛擬私有雲存取的服務」設定會限制可從 service perimeter 內部網路端點存取的服務集。在本參考架構中,我們保留「所有服務」的預設設定。

  1. 按一下「可透過虛擬私有雲存取的服務」

  2. 在「可透過虛擬私有雲存取的服務」窗格中,選取「所有服務」

選取存取層級

如要允許從 perimeter 外部存取受保護的資源,請按照下列步驟操作:

  1. 按一下「存取層級」

  2. 按一下「選擇存取層級」方塊。

    您也可以在建立 perimeter 後新增存取層級

  3. 勾選對應 corp-public-block 存取層級的核取方塊。

輸入和輸出政策

在本參考架構中,您不需要在「Ingress Policy」(輸入政策) 或「Egress Policy」(輸出政策) 窗格中指定任何設定。

建立範圍

完成上述設定步驟後,請按一下「建立 perimeter」

在模擬測試模式中驗證 perimeter

在本參考架構中,服務邊界是在模擬測試模式下設定,可讓您測試存取權政策的效果,而不強制執行政策。這表示您可以查看政策啟用後對環境的影響,但不會有中斷合法流量的風險。

在模擬測試模式中驗證周邊後,請切換至強制執行模式

如要瞭解如何在模擬測試模式中驗證服務範圍,請參閱「VPC Service Controls 模擬測試記錄」。