Google SecOps 用に VPC Service Controls を構成する
このガイドでは、Google Security Operations 用に VPC Service Controls を構成する方法について説明します。
VPC Service Controls を使用すると、データの引き出しを防ぐためのサービス境界を設定できます。Google SecOps がサービス境界外のリソースとサービスにアクセスできるように、VPC Service Controls を使用して Google Security Operations を構成します。
VPC Service Controls の詳細については、VPC Service Controls の概要をご覧ください。VPC Service Controls でサポートされているプロダクトの表で Google Security Operations エントリを確認することもできます。
始める前に
- 組織レベルで VPC Service Controls を構成するために必要なロールがあることを確認します。
VPC Service Controls で Google SecOps を使用するには、VPC Service Controls に準拠した機能のみを使用できます。VPC Service Controls に準拠した機能は次のとおりです。
- VPC Service Controls を使用する Google SecOps は、 Google Cloud ID 認証、サードパーティ ID プロバイダ、Workforce Identity 連携のみをサポートします。
- Google SecOps で VPC Service Controls を使用するには、Google SecOps の機能 RBAC を有効にする必要があります。
VPC Service Controls を使用した Google SecOps は、次のパブリック API のみをサポートしています。
chronicle.googleapis.comchronicleservicemanager.googleapis.com
VPC Service Controls にオンボーディングするには、対応するすべてのエンドポイントを
chronicle.googleapis.comAPI に移行する必要があります。VPC Service Controls を使用した Google SecOps は、Google SecOps Unified Data Model(UDM)データの セルフマネージド BigQuery プロジェクトへのエクスポート、または Advanced BigQuery Exportの使用のみをサポートしています。
VPC Service Controls は、Google SecOps のダッシュボードのみをサポートしています。
Cloud Storage フィードは、v2 コネクタを使用して
GOOGLE_CLOUD_STORAGE_V2ソースタイプでのみ作成できます。Google SecOps が VPC Service Controls 境界内で制限されている場合に新しい Pub/Sub サブスクリプションを作成すると、Google SecOps では、ログを Cloud Storage に書き込み、CLOUD_PUB_SUB フィードの代わりに GOOGLE_CLOUD_STORAGE_V2 または GOOGLE_CLOUD_STORAGE_EVENT_DRIVEN を使用する必要があります。
顧客管理の暗号鍵(CMEK)を使用する Google SecOps インスタンスの場合、Google SecOps にリンクされた Google Cloud プロジェクトと同じ境界内に Cloud Key Management Service プロジェクトを保持するか、Google SecOps にリンクされた Google Cloud プロジェクト自体の中に鍵を保持することを強くおすすめします。
制限事項
Google SecOps Chronicle API エンドポイント
ImportPushLogsは VPC Service Controls をサポートしていません。ただし、ImportPushLogsエンドポイントはデータのアクセスではなく、Google SecOps インスタンスへのデータの push にのみ使用されるため、この制限によってデータ漏洩のリスクが生じることはありません。VPC Service Controls を使用する Google SecOps は、Looker ダッシュボードをサポートしていません。
Google Cloud Pub/Sub は、Chronicle API エンドポイントを使用してログを取り込む新しい Pub/Sub サブスクリプションの作成をサポートしていません(VPC Service Controls でサポートされているプロダクトの表の Pub/Sub エントリ)。ただし、既存の Pub/Sub サブスクリプション( Google Cloud プロジェクトを VPC Service Controls 境界内に移動する前に作成されたもの)は、引き続き想定どおりにログを取り込みます。
VPC Service Controls を使用した Google SecOps は、以前のクラウド バケットとサードパーティ API フィード コネクタをサポートしていません。
上り(内向き)ルールと下り(外向き)ルールを構成する
サービス境界の構成に基づいて、上り(内向き)ルールと下り(外向き)ルールを構成します。詳細については、サービス境界の概要をご覧ください。
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 Export の上り(内向き)ルール
高度な BigQuery エクスポート機能を使用している場合は、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 プロジェクト番号に置き換えます。
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)の上り(内向き)ルールを構成する
このセクションでは、顧客管理の暗号鍵(CMEK)を使用して Google SecOps 用に VPC Service Controls を構成する方法について説明します。CMEK は、ユーザーが所有、管理し、Cloud Key Management Service に保存する暗号鍵です。
次の上り(内向き)ルールを構成します。
- ingressFrom:
identities:
- serviceAccount: service-SECRET_MANAGER_PROJECT_NUMBER@gcp-sa-secretmanager.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 が一部の取り込み機能の Secret の保存に使用するプロジェクト。これは Google SecOps の担当者から取得できます。CMEK_PROJECT_NUMBER: CMEK を保存するプロジェクト番号