検査またはリスク分析のアクションを有効にする

このドキュメントでは、検査ジョブまたはリスク分析の実行後に Sensitive Data Protection が実行できるアクションについて説明します。

アクションは、検査ジョブまたはリスク分析の完了後に機密データの保護が実行するタスクです。たとえば、結果を BigQuery テーブルに保存することや、Pub/Sub トピックに通知を公開することや、オペレーションが正常に終了するかエラーが発生して停止したときにメールを送信することができます。

機密データの検出オペレーションには、異なる一連のアクションがあります。検出アクションの詳細については、検出アクションを有効にするをご覧ください。

選択できる操作

機密データの保護ジョブを実行すると、デフォルトでは、結果の概要が機密データの保護に保存されます。この概要は、 Google Cloud コンソールの機密データの保護を使用して確認できます。projects.dlpJobs.get メソッドを使用して、DLP API の概要情報を取得することもできます。

以降のセクションでは、検査ジョブとリスク分析ジョブで使用できるアクションについて説明します。

検出結果を BigQuery に保存する

機密データの保護のジョブ結果を BigQuery テーブルに保存します。結果を表示または分析する前に、ジョブが完了していることを確認します。

スキャンが実行されるたびに、機密データの保護は指定された BigQuery テーブルにスキャンの検出結果を保存します。エクスポートされた検出結果には、各検出結果の場所と一致の可能性に関する詳細が含まれています。

各検出結果に infoType 検出器に一致する文字列を含める場合は、[見積もりを含める] オプションを有効にします。引用は機密である可能性があるため、デフォルトでは機密データの保護の検出結果には含まれません。

テーブル ID を指定しなければ、スキャンの最初の実行時に BigQuery によってデフォルトの名前が新しいテーブルに割り当てられます。名前は dlpgoogleapisDATE_1234567890 のようになります。DATE は、スキャンの実行日を表します。既存のテーブルを指定した場合、機密データの保護によりスキャンの検出結果がテーブルに追加されます。

データが BigQuery テーブルに書き込まれると、課金と割り当て使用量は、宛先テーブルが含まれるプロジェクトに適用されます。

検出結果を Cloud Storage に保存する

機密データの保護のジョブ結果を既存の Cloud Storage バケットまたはフォルダに保存します。結果を表示または分析する前に、ジョブが完了していることを確認します。

Cloud Storage バケットを検査する場合、エクスポートされた検出結果用に指定するバケットは、検査するバケットであってはなりません。

スキャンが実行されるたびに、機密データの保護は指定された Cloud Storage の場所にスキャンの検出結果を保存します。エクスポートされた検出結果には、各検出結果の場所と一致の可能性に関する詳細が含まれています。

各検出結果に infoType 検出器に一致する文字列を含める場合は、[見積もりを含める] オプションを有効にします。引用は機密である可能性があるため、デフォルトでは機密データの保護の検出結果には含まれません。

検出結果は、Protobuf テキスト形式で SaveToGcsFindingsOutput オブジェクトとしてエクスポートされます。この形式の検出結果を解析する方法については、Protobuf テキストとして保存された検出結果を解析するをご覧ください。

Pub/Sub に公開

機密データの保護ジョブの名前を属性として含む通知を Pub/Sub チャンネルに公開します。通知メッセージを送信するトピックを 1 つ以上指定できます。スキャンジョブを実行する機密データの保護サービス アカウントに、トピックに対する公開アクセス権があることを確認します。

Pub/Sub トピックの構成または権限に問題がある場合、Sensitive Data Protection は Pub/Sub 通知の送信を最大 2 週間再試行します。2 週間後に通知は破棄されます。

Security Command Center に公開

ジョブの結果の概要を Security Command Center に公開します。詳細については、機密データの保護のスキャン結果を Security Command Center に送信するをご覧ください。

このアクションを使用するには、プロジェクトが組織に属しており、Security Command Center が組織レベルで有効になっている必要があります。そうでない場合、Sensitive Data Protection の検出結果は Security Command Center に表示されません。詳細については、Security Command Center の有効化レベルを確認するをご覧ください。

Data Catalog に公開

ジョブの結果を Data Catalog に送信します。この機能は非推奨です。

メールで通知

ジョブの完了時にメールを送信します。メールは IAM プロジェクト オーナーと技術的な重要な連絡先の技術担当者に送信されます。

Cloud Monitoring に公開

検査結果を Google Cloud Observability の Cloud Monitoring に送信します。

匿名化されたコピーを作成する

検査されたデータのすべての検出を匿名化し、匿名化されたコンテンツを新しいファイルに書き込みます。その後、機密情報を含むデータの代わりに、匿名化されたコピーをビジネス プロセスで使用できます。詳細については、Google Cloud コンソールで Sensitive Data Protection を使用して Cloud Storage データの匿名化コピーを作成するをご覧ください。

サポートされているオペレーション

次の表に、機密データの保護のオペレーションと各アクションが実行可能な場所を示します。

操作 BigQuery 検査 Cloud Storage 検査 Datastore 検査 ハイブリッド検査 リスク分析
検出結果を BigQuery に保存する
検出結果を Cloud Storage に保存する
Pub/Sub に公開
Security Command Center に公開する
Data Catalog に公開(非推奨
メールで通知
Cloud Monitoring に公開
結果を匿名化する

アクションの指定

ジョブを構成するときに、1 つ以上のアクションを指定できます。

  • Google Cloud コンソールで機密データの保護を使用して新しい検査またはリスク分析のジョブを作成する場合は、ジョブ作成ワークフローの [アクションの追加] セクションでアクションを指定します。
  • DLP API に送信する新しいジョブ リクエストを設定する場合は、Action オブジェクトでアクションを指定します。

詳細と複数の言語のサンプルコードについては、以下をご覧ください。

アクション シナリオの例

機密データの保護のアクションを使用すると、機密データの保護のスキャン結果に基づいてプロセスを自動化できます。たとえば、外部パートナーと共有される BigQuery テーブルがあるとします。この場合、テーブルに社会保障番号(infoType US_SOCIAL_SECURITY_NUMBER)などのプライベート ID が 1 つも含まれていないことを確認し、1 つでも見つかった場合はこのパートナーのアクセス権を取り消す必要があります。このアクションを使用するワークフローの概要は、以下のとおりです。

  1. 24 時間ごとに BigQuery テーブルの検査スキャンを実行する機密データの保護のジョブトリガーを作成します。
  2. 上記のジョブのアクションを設定し、Pub/Sub 通知をトピック「projects/foo/scan_notifications」に公開します。
  3. 「projects/foo/scan_notifications」で受信メッセージをリッスンする Cloud Functions の関数を作成します。この Cloud Functions の関数は、24 時間ごとに機密データの保護ジョブの名前を受け取り、機密データの保護を呼び出してこのジョブから結果概要を取得します。社会保障番号が見つかった場合は、BigQuery または Identity and Access Management(IAM)で設定を変更して、テーブルへのアクセスを制限します。

次のステップ