設定 VPC Service Controls
本指南說明如何為 Google Security Operations 設定 VPC Service Controls。
VPC Service Controls 可讓您設定服務範圍,防範資料遭竊。使用 VPC Service Controls 設定 Google Security Operations,讓 Google SecOps 能夠存取服務範圍外的資源和服務。
如要進一步瞭解 VPC Service Controls,請參閱「VPC Service Controls 總覽」。您也可以在 VPC Service Controls 支援的產品表格中,查看 Google Security Operations 項目。
事前準備
- 請確認您在組織層級具備設定 VPC Service Controls 的必要角色。
如要將 Google SecOps 與 VPC Service Controls 搭配使用,只能使用符合 VPC Service Controls 規範的功能。以下列出符合 VPC Service Controls 規範的功能:
- Google SecOps with VPC Service Controls 僅支援 Google Cloud 身分驗證、第三方身分識別資訊提供者和員工身分聯盟。
- 如要搭配使用 VPC Service Controls 和 Google SecOps,必須啟用 Google SecOps 功能 RBAC。
Google SecOps with VPC Service Controls 僅支援下列公開 API:
chronicle.googleapis.comchronicleservicemanager.googleapis.com
如要加入 VPC Service Controls,您必須將所有對應的端點遷移至
chronicle.googleapis.comAPI。使用 VPC Service Controls 的 Google SecOps 僅支援將 Google SecOps 統一資料模型 (UDM) 資料匯出至自行管理的 BigQuery 專案,或使用進階 BigQuery 匯出。
VPC Service Controls 僅支援 Google SecOps 資訊主頁。
您只能使用第 2 版連接器,透過
GOOGLE_CLOUD_STORAGE_V2來源類型建立 Cloud Storage 動態消息。在 VPC Service Controls 範圍內限制 Google SecOps 時,如果建立新的 Pub/Sub 訂閱項目,Google SecOps 會要求您將記錄寫入 Cloud Storage,並使用 GOOGLE_CLOUD_STORAGE_V2 或 GOOGLE_CLOUD_STORAGE_EVENT_DRIVEN,而非 CLOUD_PUB_SUB 資訊提供。
如果 Google SecOps 執行個體使用客戶自行管理的加密金鑰 (CMEK),Google 強烈建議您將 Cloud Key Management Service 專案保留在與 Google SecOps 連結的 Google Cloud 專案相同的安全防護範圍內,或將金鑰保留在與 Google SecOps 連結的 Google Cloud 專案中。
如果是平台 SOAR 端,請確認 SOAR 執行個體已遷移至 Google.com,前提是 Google SecOps 執行個體使用客戶自行管理的加密金鑰 (CMEK)。
限制
Google SecOps Chronicle API 端點
ImportPushLogs不支援 VPC Service Controls。不過,這項限制不會造成資料外洩風險,因為ImportPushLogs端點只用於將資料推送至 Google SecOps 執行個體,而非存取資料。Google SecOps with VPC Service Controls 不支援 Looker 資訊主頁。
Google Cloud Pub/Sub 不支援建立新的 Pub/Sub 訂閱項目,透過 Chronicle API 端點擷取記錄 (VPC Service Controls 支援的產品表格中的「Pub/Sub」項目)。不過,現有的 Pub/Sub 訂閱項目 (在將專案移至 VPC Service Controls 範圍內之前建立) 會繼續照常擷取記錄。 Google Cloud
Google SecOps with VPC Service Controls 不支援舊版雲端儲存空間和第三方 API 饋給連接器。
設定輸入和輸出規則
根據 service perimeter 設定,設定輸入和輸出規則。詳情請參閱「Service perimeter 總覽」。
如果遇到 VPC Service Controls 問題,請使用 VPC Service Controls 違規分析工具進行偵錯和分析。詳情請參閱「使用違規分析工具診斷存取遭拒問題」。
設定 SOAR 的輸入規則
本節說明如何為平台 SOAR 端設定 VPC Service Controls。
為設定 Google SecOps 時指定的 Google Cloud 使用者帳戶設定下列輸入規則:
- ingressFrom:
identityType: ANY_SERVICE_ACCOUNT
sources:
- accessLevel: "*"
ingressTo:
operations:
- serviceName: secretmanager.googleapis.com
methodSelectors:
- method: "*"
resources:
- projects/PROJECT_NUMBER
將 PROJECT_NUMBER 替換為已連結 Google SecOps 的 Google Cloud 專案編號。
設定 SIEM 的規則
本節說明如何為平台的 SIEM 端設定 VPC Service Controls。
進階 BigQuery 匯出功能的輸入規則
如果您使用進階 BigQuery Export 功能,請為設定 Google SecOps 時指定的 Google Cloud 使用者帳戶設定下列規則:
- ingressFrom:
identities:
- serviceAccount:malachite-bq-export-entity-graph-batch-adv-bq@system.gserviceaccount.com
- serviceAccount:malachite-customer-monitoring-exporter@system.gserviceaccount.com
sources:
- accessLevel: "*"
ingressTo:
operations:
- serviceName: bigquery.googleapis.com
methodSelectors:
- method: "*"
resources:
- projects/PROJECT_NUMBER
將 PROJECT_NUMBER 替換為已連結 Google SecOps 的 Google Cloud 專案編號。
資料表的輸入規則
如果您使用資料表,請為設定 Google SecOps 時指定的 Google Cloud 使用者帳戶設定下列規則:
- ingressFrom:
identities:
- user:malachite-data-plane-api@prod.google.com
sources:
- accessLevel: "*"
ingressTo:
operations:
- serviceName: storage.googleapis.com
methodSelectors:
- method: "*"
resources:
- projects/PROJECT_NUMBER
將 PROJECT_NUMBER 替換為已連結 Google SecOps 的 Google Cloud 專案編號。
設定 Case Management 的輸入規則
如果您使用新版案件管理服務,請為設定 Google SecOps 時指定的 Google Cloud 使用者帳戶設定下列進入規則:
- ingressFrom:
identities:
- user:malachite-case-management-service@prod.google.com
sources:
- accessLevel: "*"
ingressTo:
operations:
- serviceName: trafficdirector.googleapis.com
methodSelectors:
- method: "*"
resources:
- projects/PROJECT_NUMBER
將 PROJECT_NUMBER 替換為已連結 Google SecOps 的 Google Cloud 專案編號。
使用 Security Command Center 設定 Google SecOps 的規則
本節說明如何透過 Security Command Center,為 Google SecOps 設定 VPC Service Controls。
下列規則中的服務帳戶只會在 Google SecOps 佈建期間建立,因此您應在佈建後設定 Security Command Center 規則,但要先於開始使用 Security Command Center。
請為設定 Google SecOps 時指定的 Google Cloud 使用者帳戶完成下列工作:
設定下列輸入規則:
- ingressFrom: identities: - serviceAccount: service-org-GOOGLE_ORGANIZATION_NUMBER@gcp-sa-chronicle-soar.iam.gserviceaccount.com - serviceAccount: service-org-GOOGLE_ORGANIZATION_NUMBER@security-center-api.iam.gserviceaccount.com - serviceAccount: service-org-GOOGLE_ORGANIZATION_NUMBER@gcp-sa-csc-hpsa.iam.gserviceaccount.com - serviceAccount: service-org-GOOGLE_ORGANIZATION_NUMBER@gcp-sa-asm-hpsa.iam.gserviceaccount.com sources: - accessLevel: "*" ingressTo: operations: - serviceName: chronicle.googleapis.com methodSelectors: - method: "*" - serviceName: securitycenter.googleapis.com methodSelectors: - method: "*" - serviceName: compute.googleapis.com methodSelectors: - method: "*" - serviceName: cloudasset.googleapis.com methodSelectors: - method: "*" - serviceName: monitoring.googleapis.com methodSelectors: - method: "*" - serviceName: iam.googleapis.com methodSelectors: - method: "*" - serviceName: orgpolicy.googleapis.com methodSelectors: - method: "*" - serviceName: serviceusage.googleapis.com methodSelectors: - method: "*" - serviceName: dns.googleapis.com methodSelectors: - method: "*" resources: - projects/PROJECT_NUMBER更改下列內容:
GOOGLE_ORGANIZATION_NUMBER:您的 Google Cloud 機構編號PROJECT_NUMBER:您連結 Google SecOps 的 Google Cloud 專案編號
設定下列輸出規則:
- egressTo: operations: - serviceName: pubsub.googleapis.com methodSelectors: - method: "*" - serviceName: securitycenter.googleapis.com methodSelectors: - method: "*" - serviceName: cloudasset.googleapis.com methodSelectors: - method: "*" - serviceName: iam.googleapis.com methodSelectors: - method: "*" - serviceName: compute.googleapis.com methodSelectors: - method: "*" resources: - "*" egressFrom: identities: - serviceAccount: service-org-GOOGLE_ORGANIZATION_NUMBER@gcp-sa-chronicle-soar.iam.gserviceaccount.com - serviceAccount: service-org-GOOGLE_ORGANIZATION_NUMBER@security-center-api.iam.gserviceaccount.com sources: - resource: projects/PROJECT_NUMBER更改下列內容:
GOOGLE_ORGANIZATION_NUMBER:您的 Google Cloud 機構編號PROJECT_NUMBER:您連結 Google SecOps 的 Google Cloud 專案編號
設定客戶自行管理的加密金鑰 (CMEK) 的連入規則
本節說明如何為 Google SecOps 設定 VPC Service Controls,並使用客戶自行管理的加密金鑰 (CMEK)。CMEK 是您擁有、管理及儲存在 Cloud Key Management Service 中的加密金鑰。
設定下列輸入規則:
- ingressFrom:
identities:
- serviceAccount: service-SECRET_MANAGER_PROJECT_NUMBER@gcp-sa-secretmanager.iam.gserviceaccount.com
- serviceAccount: service-GOOGLE_MANAGED_BIGQUERY_PROJECT_NUMBER@gs-project-accounts.iam.gserviceaccount.com
- serviceAccount: bq-GOOGLE_MANAGED_BIGQUERY_PROJECT_NUMBER@bigquery-encryption.iam.gserviceaccount.com
sources:
- accessLevel: "*"
ingressTo:
operations:
- serviceName: secretmanager.googleapis.com
methodSelectors:
- method: "*"
- serviceName: cloudkms.googleapis.com
methodSelectors:
- method: "*"
resources:
- projects/CMEK_PROJECT_NUMBER
更改下列內容:
SECRET_MANAGER_PROJECT_NUMBER:Google 用於儲存部分擷取功能密鑰的專案,您可以向 Google SecOps 代表索取GOOGLE_MANAGED_BIGQUERY_PROJECT_NUMBER:Google 用來儲存部分匯出功能 BigQuery 資源的專案,您可以向 Google SecOps 代表索取CMEK_PROJECT_NUMBER:儲存 CMEK 的專案編號