生成 AI ユースケースの一般的なコントロール

このドキュメントでは、 Google Cloudの生成 AI ワークロードのベースライン セキュリティ環境を作成する一般的なコントロールについて説明します。これらのコントロールにより、Google Cloud 環境の一貫した安全な使用を確保できます。本番環境サービスをデプロイする前に、環境に適用することをおすすめします。

これらのコントロールは、出発点を提供することを目的としています。組織のセキュリティ ポリシーで必要とされる組織固有のコントロールを適応させて追加できます。また、Google Cloudにある特定のワークロードと機密データに基づいて、追加のコントロールの実装を検討してください。

必要な共通コントロール

Google Cloud環境では、次のコントロールを実装することを強くおすすめします。

Google API でサポートされる TLS バージョンを制限する

Google コントロール ID COM-CO-1.1
カテゴリ 必須
説明

Google Cloud は複数の TLS プロトコル バージョンをサポートしています。コンプライアンス要件を満たすため、古い TLS バージョンを使用しているクライアントからの handshake リクエストを拒否する場合があります。

このコントールを構成するには、TLS バージョンを制限gcp.restrictTLSVersion)の組織のポリシーの制約を使用します。この制約は、リソース階層内の組織、フォルダ、プロジェクトに適用できます。TLS バージョンを制限する制約では、明示的な値を拒否し、他のすべての値を許可する拒否リストが使用されます。許可リストを使用しようとするとエラーが発生します。

組織のポリシー階層の評価の動作により、TLS バージョン制限は、指定されたリソースノードのほかに、そのすべての子フォルダとプロジェクトに適用されます。たとえば、組織で TLS バージョン 1.0 を拒否すると、その組織の子孫であるすべての子でも拒否されます。

子リソースの組織のポリシーを更新すると、継承された TLS バージョン制限をオーバーライドできます。たとえば、組織のポリシーが組織レベルで TLS 1.0 を拒否する場合、そのフォルダに別の組織のポリシーを設定することで子フォルダの制限を解除できます。フォルダに子がある場合、ポリシーの継承により、フォルダのポリシーが各子リソースにも適用されます。

TLS バージョンを TLS 1.3 のみに制限するには、このポリシーを設定して TLS バージョン 1.2 も制限します。このコントールは、 Google Cloud内でホストするアプリケーションに実装する必要があります。たとえば、組織レベルで次のように設定します。

["TLS_VERSION_1","TLS_VERSION_1.1","TLS_VERSION_1.2"]

対象プロダクト
  • すべて。組織のポリシー サービスによって管理
パス gcp.restrictTLSVersion
演算子 ==
  • TLS_VERSION_1
  • TLS_VERSION_1.1
文字列
コンプライアンス マネージャーのコントロール ID RESTRICT_LEGACY_TLS_VERSIONS
関連する NIST-800-53 コントロール
  • SC-8
  • SC-13
関連する CRI プロファイル コントロール
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
関連情報

Google Cloudで保存データを暗号化する

Google コントロール ID COM-CO-2.1
カテゴリ 必須(デフォルト)
説明

Google Cloud のすべてのデータは、デフォルトで NIST 承認済みのアルゴリズムを使用して保存時に暗号化されます。

対象プロダクト
  • Google Cloud デフォルト
関連する NIST-800-53 コントロール
  • SC-28
関連する CRI プロファイル コントロール
  • PR.DS-1.1
  • PR.DS-1.2
関連情報

暗号化と復号に NIST 承認済みのアルゴリズムを使用する

Google コントロール ID COM-CO-2.4
カテゴリ 必須
説明

Cloud Key Management Service(Cloud KMS)が NIST 承認済みのアルゴリズムのみを使用して、環境内の機密鍵を保存していることを確認します。このコントールにより、NIST 承認済みのアルゴリズムとセキュリティのみを使用して、安全な鍵の使用が保証されます。CryptoKeyVersionAlgorithm フィールドは、指定された許可リストです。

組織のポリシーに準拠していないアルゴリズムを削除します。

対象プロダクト
  • Cloud KMS
パス cloudkms.projects.locations.keyRings.cryptoKeys/versionTemplate.algorithm
演算子 in
  • RSA_SIGN_PSS_2048_SHA256
  • RSA_SIGN_PSS_3072_SHA256
  • RSA_SIGN_PSS_4096_SHA256
  • RSA_DECRYPT_OAEP_2048_SHA256
  • RSA_DECRYPT_OAEP_4096_SHA256
  • RSA_DECRYPT_OAEP_2048_SHA1
  • RSA_DECRYPT_OAEP_4096_SHA1
文字列
関連する NIST-800-53 コントロール
  • SC-12
  • SC-13
関連する CRI プロファイル コントロール
  • PR.DS-1.1
  • PR.DS-1.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
関連情報

Cloud KMS 鍵の目的を設定する

Google コントロール ID COM-CO-2.5
カテゴリ 必須
説明

Cloud KMS 鍵の目的を ENCRYPT_DECRYPT に設定して、鍵がデータの暗号化と復号にのみ使用されるようにします。このコントールにより、署名などの他の機能がブロックされ、鍵が本来の目的にのみ使用されるようになります。他の機能に鍵を使用している場合は、それらのユースケースを検証し、追加の鍵の作成を検討してください。

対象プロダクト
  • Cloud KMS
パス cloudkms.projects.locations.keyRings.cryptoKeys/purpose
演算子 ==
  • ENCRYPT_DECRYPT
文字列
関連する NIST-800-53 コントロール
  • SC-12
  • SC-13
関連する CRI プロファイル コントロール
  • PR.DS-1.1
  • PR.DS-1.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
関連情報

安全な BigQuery データ ウェアハウスに適切な CMEK 設定がされていることを確認する

Google コントロール ID COM-CO-2.6
カテゴリ 必須
説明

保護レベルは暗号オペレーションをどのように行うかを表します。顧客管理の暗号鍵(CMEK)を作成した後に、保護レベルを変更することはできません。サポートされている保護レベルは次のとおりです。

  • SOFTWARE: 暗号オペレーションはソフトウェアで行われます。
  • HSM: 暗号オペレーションはハードウェア セキュリティ モジュール(HSM)で実行されます。
  • EXTERNAL: 暗号オペレーションは、インターネット経由で Google Cloud に接続されている外部鍵マネージャーに保存されている鍵を使用して実行されます。オペレーションは、対称暗号化と非対称署名に限定されています。
  • EXTERNAL_VPC: Virtual Private Cloud(VPC)ネットワークを介して Google Cloud に接続されている外部鍵マネージャーに保存されている鍵を使用して、暗号オペレーションが実行されます。オペレーションは、対称暗号化と非対称署名に限定されています。
対象プロダクト
  • Cloud KMS
  • BigQuery
パス cloudkms.projects.locations.keyRings.cryptoKeys/primary.protectionLevel
演算子 in
  • []
文字列
関連する NIST-800-53 コントロール
  • SC-12
  • SC-13
関連する CRI プロファイル コントロール
  • PR.DS-1.1
  • PR.DS-1.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
関連情報

暗号鍵を 90 日ごとにローテーションする

Google コントロール ID COM-CO-2.7
カテゴリ 必須
説明

Cloud KMS 鍵のローテーション期間が 90 日に設定されていることを確認します。一般的なベスト プラクティスは、セキュリティ キーを定期的にローテーションすることです。このコントロールは、HSM サービスで作成された鍵のローテーションを強制します。

このローテーション期間を作成するときは、鍵マテリアルの作成、削除、変更を安全に処理するための適切なポリシーと手順も作成して、情報を保護し、可用性を確保できるようにします。この期間が、鍵のローテーションに関する企業ポリシーに準拠していることを確認します。

対象プロダクト
  • Cloud KMS
パス cloudkms.projects.locations.keyRings.cryptoKeys/rotationPeriod
演算子 <=
  • 90
int32
関連する NIST-800-53 コントロール
  • SC-12
  • SC-13
関連する CRI プロファイル コントロール
  • PR.DS-1.1
  • PR.DS-1.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
関連情報

承認済みプリンシパルを定義する

Google コントロール ID COM-CO-4.1
カテゴリ 必須
説明

ドメインで制限された共有iam.allowedPolicyMemberDomains)組織のポリシー制約を使用して、プリンシパルを Identity and Access Management(IAM)ポリシーに追加できる Cloud Identity または Google Workspace のユーザー ID を 1 つ以上定義します。

対象プロダクト
  • 組織ポリシー サービス
  • IAM
パス constraints/iam.allowedPolicyMemberDomains
演算子 Is
  • CUSTOMER_ID,ORG_ID
リスト
関連する NIST-800-53 コントロール
  • AC-3
  • AC-17
  • AC-20
関連する CRI プロファイル コントロール
  • PR.AC-3.1
  • PR.AC-3.2
  • PR.AC-4.1
  • PR.AC-4.2
  • PR.AC-4.3
  • PR.AC-6.1
  • PR.PT-3.1
  • PR.PT-4.1
関連情報

監査ログを使用する

Google コントロール ID COM-CO-7.3
カテゴリ 必須
説明

Google Cloud サービスは、 Google Cloud リソースで誰がいつどこで何をしたかを調べるために、監査ログエントリを書き込みます。

組織レベルで監査ロギングを有効にします。 Google Cloud 組織の設定に使用するパイプラインを使用して、ロギングを構成できます。

対象プロダクト
  • Cloud Audit Logs
関連する NIST-800-53 コントロール
  • AU-2
  • AU-3
  • AU-8
  • AU-9
関連する CRI プロファイル コントロール
  • DM.ED-7.1
  • DM.ED-7.2
  • DM.ED-7.3
  • DM.ED-7.4
  • PR.IP-1.4
関連情報

VPC Flow Logs を有効にする

Google コントロール ID COM-CO-7.4
カテゴリ 必須
説明

VPC Flow Logs は、VM インスタンスで送受信されたネットワーク フローのサンプルを記録します(Google Kubernetes Engine(GKE)ノードとして使用されたインスタンスを含む)。サンプルは通常、VPC ネットワーク フローの 50% 以下です。

VPC フローログを有効にすると、サブネット内のすべての VM に対して Logging を有効にすることになります。 ただし、Logging に書き込まれる情報の量は削減されます。

各 VPC サブネットで VPC Flow Logs を有効にします。プロジェクトの作成に使用するパイプラインを使用して、ロギングを構成できます。

対象プロダクト
  • Virtual Private Cloud
関連する NIST-800-53 コントロール
  • AU-2
  • AU-3
  • AU-8
  • AU-9
関連する CRI プロファイル コントロール
  • DM.ED-7.1
  • DM.ED-7.2
  • DM.ED-7.3
  • DM.ED-7.4
  • PR.IP-1.4
関連情報

ファイアウォール ルール ロギングを有効にする

Google コントロール ID COM-CO-7.5
カテゴリ 必須
説明

ファイアウォール ルールのロギングでは、ファイアウォール ルールによってトラフィックが許可または拒否されるたびにレコードが作成されます。

各ファイアウォール ルールに対してロギングを有効にします。ファイアウォールの作成に使用するパイプラインを使用して、ロギングを構成できます。

対象プロダクト
  • Virtual Private Cloud
関連する NIST-800-53 コントロール
  • AU-2
  • AU-3
  • AU-8
  • AU-9
関連する CRI プロファイル コントロール
  • DM.ED-7.1
  • DM.ED-7.2
  • DM.ED-7.3
  • DM.ED-7.4
  • PR.IP-1.4
関連情報

推奨されるクラウド コントロール

特定のユースケースに関係なく、次の一般的なコントロールをGoogle Cloud 環境に適用することをおすすめします。

顧客管理の暗号鍵のロケーションを制限する

Google コントロール ID COM-CO-2.2
カテゴリ 推奨
説明

CMEK 用の KMS CryptoKey を提供できるプロジェクトを制限するgcp.restrictCmekCryptoKeyProjects)組織のポリシーの制約を使用して、顧客管理の暗号鍵(CMEK)を保存できるプロジェクトを定義します。この制約により、暗号鍵のガバナンスと管理を一元化できます。選択した鍵がこの制約を満たしていない場合、リソースの作成は失敗します。

この制約を変更するには、管理者に組織ポリシー管理者roles/orgpolicy.policyAdmin)の IAM ロールが必要です。

独自の鍵の持ち込みなど、第 2 の保護レイヤを追加する場合は、この制約を変更して、有効になっている CMEK の鍵名を表します。

プロダクトの詳細:

  • Vertex AI では、鍵は KEY PROJECTS プロジェクトに保存されます。
対象プロダクト
  • Cloud KMS
  • 組織ポリシー
パス constraints/gcp.restrictCmekCryptoKeyProjects
演算子 notexists
  • KEY PROJECTS
文字列
関連する NIST-800-53 コントロール
  • SC-12
  • SC-13
関連する CRI プロファイル コントロール
  • PR.DS-1.1
  • PR.DS-1.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
関連情報

Google Cloud サービスに CMEK を使用する

Google コントロール ID COM-CO-2.3
カテゴリ 推奨
説明

鍵オペレーションを Google-owned and Google-managed encryption keys よりも細かく制御する必要がある場合は、顧客管理の暗号鍵(CMEK)を使用できます。これらの鍵は、Cloud KMS を使用して作成および管理されます。鍵は、ソフトウェア鍵として、HSM クラスタまたは外部の鍵管理システムに保存します。

Cloud KMS の暗号化と復号の割合は、割り当ての対象になります。

Cloud Storage の詳細

Cloud Storage で、個々のオブジェクトに CMEK を使用するか、バケットに追加されたすべての新しいオブジェクトで CMEK がデフォルトで使用されるように Cloud Storage バケットを構成します。CMEK を使用すると、オブジェクトはバケットに保存されるときに Cloud Storage によって鍵で暗号化されます。オブジェクトがリクエスト元に提供されるときに、Cloud Storage によって自動的に復号されます。

Cloud Storage で CMEK を使用する場合、次の制限が適用されます。

  • オブジェクトのメタデータを更新しても、CMEK でオブジェクトを暗号化することはできません。代わりに、オブジェクトの書き換えの一部としてその暗号鍵を含めてください。
  • Cloud Storage は、オブジェクトの更新コマンドを使用してオブジェクトの暗号鍵を設定しますが、このコマンドはリクエストの一部としてオブジェクトを書き換えます。
  • Cloud KMS キーリングは、暗号化するデータと同じロケーションに作成する必要があります。たとえば、バケットが us-east1 にある場合、そのバケットのオブジェクトの暗号化に使用されるキーリングも us-east1 に作成する必要があります。
  • ほとんどのデュアルリージョンでは、関連付けられたマルチリージョンに Cloud KMS キーリングを作成する必要があります。たとえば、バケットが us-east1us-west1 のペアにある場合、そのバケット内のオブジェクトの暗号化に使用するキーリングは、US マルチリージョンに作成する必要があります。
  • 事前定義のデュアルリージョン asia1eur4nam4 では、同じ事前定義のデュアルリージョンにキーリングを作成する必要があります。
  • JSON API を使用してオブジェクトを一覧表示する場合、CMEK を使用して暗号化されたオブジェクトの CRC32C チェックサムと MD5 ハッシュは返されません。
  • Cloud Storage などのツールを使用して、各暗号化オブジェクトに対して追加のメタデータ GET リクエストを実行して CRC32C と MD5 の情報を取得すると、リスティングを大幅に短縮できます。Cloud Storage では、Cloud KMS に保存されている非対称鍵の復号部分を使用して、CMEK と同じ方法で関連オブジェクトを自動的に復号することはできません。
対象プロダクト
  • Cloud KMS
  • 組織ポリシー
  • Cloud Storage
パス constraints/gcp.restrictNonCmekServices
演算子 ==
  • bigquery.googleapis.com
  • storage.googleapis.com
  • aiplatform.googleapis.com
文字列
関連する NIST-800-53 コントロール
  • SC-12
  • SC-13
関連する CRI プロファイル コントロール
  • PR.DS-1.1
  • PR.DS-1.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
関連情報

データ検査用に Sensitive Data Protection を有効にする

Google コントロール ID COM-CO-5.1
カテゴリ 推奨
説明

Google Cloud は、Sensitive Data Protection の使用を推奨しています。選択する infoType またはジョブ テンプレートは、特定のシステムによって異なります。

対象プロダクト
  • Sensitive Data Protection
関連する NIST-800-53 コントロール
  • SI-4
  • IA-7
  • SC-7
  • SC-8
関連する CRI プロファイル コントロール
  • PR.AC-1.1
  • PR.AC-1.2
  • PR.AC-1.3
  • PR.DS-5.1
  • PR.DS-8.1
  • ID.RA-1.1
  • DE.CM-1.1
  • DE.CM-1.2
  • DE.CM-1.3
  • DE.CM-1.4
  • DE.CM-5.1
  • DE.CM-6.1
  • DE.CM-6.2
  • DE.CM-6.3
  • DE.CM-7.1
  • DE.CM-7.2
  • DE.CM-7.3
  • DE.CM-7.4
  • DE.DP-2.1
  • DE.DP-3.1
  • DE.DP-4.1
  • DE.DP-4.2
  • DE.DP-5.1
  • DE.AE-2.1
  • DE.AE-3.1
  • DE.AE-3.2
  • DE.AE-4.1
関連情報

機密データまたは機密性の高い生成 AI ワークロードを処理する場合は、該当する生成 AI ユースケースで次のコントロールを実装することをおすすめします。

データアクセス監査ログを有効にする

Google コントロール ID COM-CO-7.2
カテゴリ 特定のユースケースで推奨
説明

Google Cloud 環境でデータにアクセスしたユーザーを追跡するには、データアクセス監査ログを有効にします。これらのログには、ユーザーデータの読み取り、作成、変更を行う API 呼び出しと、リソース構成の読み取りを行う API 呼び出しが記録されます。

生成 AI モデルと機密データに対してデータアクセス監査ログを有効にすることを強くおすすめします。これにより、情報を読み取ったユーザーを監査できます。データアクセス監査ログを使用するには、特権管理者のログインなどの特定のアクティビティに対して独自のカスタム検出ロジックを設定する必要があります。

データアクセス監査ログのボリュームは大きなものになる可能性があります。データアクセス ログを有効にすると、 Google Cloud プロジェクトに対して追加のログ使用量の費用が発生する可能性があります。

対象プロダクト
  • Cloud Audit Logs
関連する NIST-800-53 コントロール
  • AU-2
  • AU-3
  • AU-8
  • AU-9
関連する CRI プロファイル コントロール
  • DM.ED-7.1
  • DM.ED-7.2
  • DM.ED-7.3
  • DM.ED-7.4
  • PR.IP-1.4
関連情報

生成 AI ワークロードを含むフォルダに、次のセキュリティ コントロールを実装することをおすすめします。

Access Context Manager のアクセス ポリシーでサービス スコープの制限を有効にする

Google コントロール ID COM-CO-8.1
カテゴリ 生成 AI のユースケースに推奨
説明

すべてのサービス境界について、 Google Cloud コンソールで境界のタイプが標準に設定されていることを確認します。

対象プロダクト
  • Access Context Manager
  • VPC Service Controls
パス accesscontextmanager.accessPolicies.servicePerimeters/perimeterType
演算子 ==
  • PERIMETER_TYPE_REGULAR
文字列
関連する NIST-800-53 コントロール
  • SC-7
  • SC-8
関連する CRI プロファイル コントロール
  • PR.AC-5.1
  • PR.AC-5.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
  • PR.PT-4.1
  • DE.CM-1.1
  • DE.CM-1.2
  • DE.CM-1.3
  • DE.CM-1.4
関連情報

VPC Service Controls サービス境界内の API を制限する

Google コントロール ID COM-CO-8.2
カテゴリ 生成 AI のユースケースに推奨
説明

サービス境界ごとに、Access Context Manager を使用して、境界が API を保護していることを確認します。

対象プロダクト
  • VPC Service Controls
  • Access Context Manager
パス accesscontextmanager.accessPolicies.servicePerimeters/status.restrictedServices
演算子 Anyof
  • aiplatform.googleapis.com
  • artifactregistry.googleapis.com
  • bigquery.googleapis.com
  • cloudasset.googleapis.com
  • cloudbuild.googleapis.com
  • cloudfunctions.googleapis.com
  • cloudresourcemanager.googleapis.com
  • containeranalysis.googleapis.com
  • discoveryengine.googleapis.com
  • dns.googleapis.com
  • notebooks.googleapis.com
  • ondemandscanning.googleapis.com
  • orgpolicy.googleapis.com
  • pubsub.googleapis.com
  • secretmanager.googleapis.com
  • storage.googleapis.com
  • visionai.googleapis.com
文字列
関連する NIST-800-53 コントロール
  • SC-7
  • SC-8
関連する CRI プロファイル コントロール
  • PR.AC-5.1
  • PR.AC-5.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
  • PR.PT-4.1
  • DE.CM-1.1
  • DE.CM-1.2
  • DE.CM-1.3
  • DE.CM-1.4
関連情報

オプションの共通コントロール

組織の要件に基づいて、次の共通コントロールを実装することもできます。

アクセスの透明性ログを有効にする

Google コントロール ID COM-CO-7.7
カテゴリ オプション
説明

アクセスの透明性では、Google の担当者がコンテンツにアクセスしたときに行った操作を記録したログが提供されます。

アクセスの透明性は組織レベルで有効にできます。

対象プロダクト
  • アクセスの透明性
関連する NIST-800-53 コントロール
  • AU-2
  • AU-3
  • AU-8
  • AU-9
関連する CRI プロファイル コントロール
  • DM.ED-7.1
  • DM.ED-7.2
  • DM.ED-7.3
  • DM.ED-7.4
  • PR.IP-1.4
関連情報

次のステップ