透過 VPC Service Controls 提高安全性

Google Cloud Search 支援 VPC Service Controls,可強化資料安全性。您可以透過 VPC Service Controls 定義 Google Cloud Platform 資源的服務範圍,藉此限制資料,並協助降低資料竊取風險。

必要條件

開始之前,請安裝 gcloud 指令列介面

啟用 VPC Service Controls

如要啟用 VPC Service Controls,請按照下列步驟操作:

  1. 取得要使用的 Google Cloud Platform 專案的專案 ID 和專案編號。如要取得專案 ID 和編號,請參閱「識別專案」。

  2. 使用 gcloud 為 Google Cloud Platform 機構建立存取權政策:

    1. 取得機構 ID
    2. 建立存取權政策
    3. 取得存取權政策的名稱
  3. 執行下列 gcloud 指令,建立以 Cloud Search 為受限服務的服務範圍:

    gcloud access-context-manager perimeters create NAME \
        --title=TITLE \
        --resources=PROJECTS \
        --restricted-services=RESTRICTED-SERVICES \
        --policy=POLICY_NAME
    

    在此情況下:

    • NAME 是範圍的名稱。
    • TITLE 是指範圍的可理解文字標題。
    • PROJECTS 是以半形逗號分隔的一或多個專案編號清單,每個編號前面都加上 projects/ 字串。使用在步驟 1 中取得的專案編號。舉例來說,如果您有兩個專案 (專案 1234567890),設定會是 --resource=projects/12345, project/67890。這個標記僅支援專案編號,不支援名稱或 ID。
    • RESTRICTED-SERVICES 是以半形逗號分隔的一或多項服務清單。 使用 cloudsearch.googleapis.com
    • POLICY_NAME 是指您在步驟 2c 中取得的機構存取權政策名稱 (以數字表示)。

    如要進一步瞭解如何建立服務範圍,請參閱「建立服務範圍」。

  4. (選用) 如要套用 IP 或區域限制,請建立存取層級,然後將其新增至步驟 3 中建立的服務範圍:

    1. 如要建立存取層級,請參閱「建立基本存取層級」。如要瞭解如何建立只允許從特定 IP 位址範圍 (例如公司網路內的 IP 位址) 存取的存取層級條件,請參閱「限制公司網路的存取權」一文。
    2. 建立存取層級後,請將其新增至服務範圍。如需在服務範圍中新增存取層級的操作說明,請參閱「為現有範圍新增存取層級」。這項變更最多可能需要 30 分鐘才能全面生效。
  5. 使用 Cloud Search Customer Service REST API,透過受 VPC Service Controls 範圍保護的專案更新客戶設定:

  1. 從 Google 授權伺服器取得 OAuth 2.0 存取憑證。如要瞭解如何取得權杖,請參閱「使用 OAuth 2.0 存取 Google API」的步驟 2。取得存取權杖時,請使用下列任一 OAuth 範圍: https://www.googleapis.com/auth/cloud_search.settings.indexinghttps://www.googleapis.com/auth/cloud_search.settingshttps://www.googleapis.com/auth/cloud_search

  2. 執行下列 curl 指令,在 Google Cloud Search 的「客戶設定」下,於 VPC Service Controls 設定中設定專案:

    curl --request PATCH \
      'https://cloudsearch.googleapis.com/v1/settings/customer' \
      --header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
      --header 'Accept: application/json' \
      --header 'Content-Type: application/json' \
      --data '{ "vpc_settings": { "project": "projects/PROJECT_ID" } }' \
      --compressed
    

    在此情況下:

  • YOUR_ACCESS_TOKEN 是在步驟 5a 中取得的 OAuth 2.0 存取權杖。
  • PROJECT_ID 是在步驟 1 中取得的專案 ID。

    如果成功,您應該會收到 200 OK 回應,以及更新後的客戶設定。

順利完成上述步驟後,系統會將服務範圍中定義的 VPC Service Controls 限制,套用至所有 Google Cloud Search API、cloudsearch.google.com 的搜尋作業,以及使用管理控制台查看和變更設定或報表。如果後續對 Google Cloud Search API 的要求不符合存取層級,就會收到 PERMISSION_DENIED “Request is prohibited by organization’s policy” 錯誤。