透過 Dataproc Metastore 使用 VPC Service Controls

如要進一步保護 Dataproc Metastore 服務,可以使用 VPC Service Controls (VPC-SC)

VPC Service Controls 可協助降低資料竊取風險。您可以透過 VPC Service Controls 將專案加入服務範圍內,如此一來,跨越範圍的要求就無法存取相關資源及服務。

如要進一步瞭解 VPC Service Controls,請參閱「VPC Service Controls 總覽」。

Dataproc Metastore 資源會顯示在 metastore.googleapis.com API 上,方便您執行服務層級的作業,例如建立及刪除服務。

如要透過 Dataproc Metastore 設定 VPC Service Controls,請限制與這個 API 介面的連線。

限制和注意事項

  • 使用 gRPC 端點通訊協定時,Dataproc Metastore 會利用 Cloud Run 進行連線。搭配 VPC Service Controls 使用這個端點時,適用相同的 Cloud Run 限制和建議
  • 只有在叫用 Cloud Run 服務且輸入為內部時,系統才會寫入 Cloud Run 模擬測試要求記錄。只有在周邊防護處於強制模式時,Dataproc Metastore 才會使用內部連入。在模擬測試模式下使用 Cloud Run 端點時,您不會看到模擬測試違規事項。

設定虛擬私有雲 (VPC) 網路

您可以設定虛擬私有雲網路,根據服務範圍限制 Private Google Access。這樣一來,虛擬私有雲或地端部署網路中的主機,就只能以符合相關聯範圍政策的方式,與 VPC Service Controls 支援的 Google API 和服務通訊。

詳情請參閱「設定連至 Google API 和服務的私人連線」。

建立 service perimeter

在此程序中,請選取要由虛擬私有雲服務範圍保護的 Dataproc Metastore 專案。

如要建立 service perimeter,請按照「建立 service perimeter」一文中的操作說明進行。

將更多專案新增至服務周圍區域

如要將現有的 Dataproc Metastore 專案新增至 service perimeter,請按照「更新 service perimeter」一文中的操作說明進行。

將 Dataproc Metastore 和 Cloud Storage API 新增至服務範圍

為降低資料從 Dataproc Metastore 外洩的風險 (例如使用 Dataproc Metastore 匯入或匯出 API 時),您必須限制 Dataproc Metastore APICloud Storage API

如要將 Dataproc Metastore 和 Cloud Storage API 新增為受限制的服務,請按照下列步驟操作:

控制台

  1. 在 Google Cloud 控制台中,開啟 VPC Service Controls 頁面:

    前往Google Cloud 控制台的「VPC Service Controls」頁面

  2. 在「VPC Service Controls」頁面的資料表中,按一下要修改的 service perimeter 名稱。

  3. 按一下「編輯範圍」

  4. 在「Edit VPC Service Perimeter」(編輯 VPC 服務範圍) 頁面中,按一下「Add Services」(新增服務)

  5. 新增 Dataproc Metastore APICloud Storage API

  6. 按一下 [儲存]

gcloud

執行下列 gcloud access-context-manager perimeters update 指令:

 gcloud access-context-manager perimeters update PERIMETER_ID 
--policy=POLICY_ID
--add-restricted-services=metastore.googleapis.com,storage.googleapis.com

更改下列內容:

  • PERIMETER_ID:perimeter 的 ID 或完整 ID。
  • POLICY_ID:存取權政策的 ID。

建立存取層級

如要允許外部存取 perimeter 內部的受保護資源,可以使用存取層級。存取層級僅適用於來自服務邊界的受保護資源存取要求。您無法使用存取層級,授予受保護資源存取 perimeter 外部資料和服務的權限。

請參閱「允許存取 service perimeter 外的受保護資源」。

後續步驟