Sensitive Data Protection を使用した BigQuery データのスキャン
多くの場合、機密データがどこにあるかを把握しておくことは、適切なセキュリティを確保して管理を行うための第一歩です。機密データの場所を把握していれば、クレジット カード番号、医療情報、社会保障番号、運転免許証番号、住所、氏名、企業独自の秘密事項などの機密情報が漏洩するリスクを軽減できます。また、データを定期的にスキャンすると、コンプライアンス要件を遵守し、データの増加や用途の変化に合わせてベスト プラクティスを適用するのに役立ちます。コンプライアンス要件を満たすためには、Sensitive Data Protection を使用して BigQuery テーブルを検査し、機密データを保護します。
BigQuery データをスキャンする方法は 2 つあります。
機密データのプロファイリング。Sensitive Data Protection を使用すると、組織、フォルダ、プロジェクトの BigQuery データに関するプロファイルを生成できます。データ プロファイルには、テーブルに関する指標とメタデータが含まれており、機密データとリスクの高いデータの場所を特定できます。Sensitive Data Protection は、これらの指標をプロジェクト、テーブル、列の各レベルで報告します。詳細については、BigQuery データのデータ プロファイルをご覧ください。
オンデマンド検査。Sensitive Data Protection は、単一のテーブルまたは列のサブセットに対して詳細な検査を行い、その結果をセルレベルで報告できます。このような検査は、テーブルセル内のクレジット カード番号の正確な場所など、特定のデータタイプの個々のインスタンスを識別するのに役立ちます。オンデマンド検査は、Google Cloud コンソールの [機密データの保護] ページ、Google Cloud コンソールの [BigQuery] ページから、または DLP API を介してプログラムから実行できます。
このページでは、Google Cloud コンソールの [BigQuery] ページでオンデマンド検査を行う方法について説明します。
Sensitive Data Protection は、Google Cloud のお客様が機密データを大規模に識別して保護できるようにするフルマネージド サービスです。Sensitive Data Protection では、150 を超える定義済み検出項目を使用して、パターン、フォーマット、チェックサムを識別します。Sensitive Data Protection は、マスキング、トークン化、仮名化、日付シフトなど、お客様のデータを複製することなくデータを匿名化できる一連のツールも備えています。
Sensitive Data Protection の詳細については、機密データの保護のドキュメントをご覧ください。
始める前に
- 機密データの保護の料金と、機密データの保護のコストを制御する方法を理解します。
Sensitive Data Protection のジョブを作成するユーザーに、機密データの保護の事前定義された適切な IAM ロール、または機密データの保護のジョブを実行するための十分な権限が付与されていることを確認します。
Google Cloud コンソールを使用した BigQuery データのスキャン
BigQuery データをスキャンするには、テーブルを分析する Sensitive Data Protection のジョブを作成します。BigQuery Google Cloud コンソールで [機密データの保護を使用してスキャン] オプションを使用すると、BigQuery テーブルをすばやくスキャンできます。
Sensitive Data Protection を使用して BigQuery テーブルをスキャンするには:
Google Cloud コンソールで [BigQuery] ページに移動します。
[エクスプローラ] パネルで、プロジェクトとデータセットを展開し、テーブルを選択します。
[エクスポート] > [機密データの保護を使用してスキャン] をクリックします。Sensitive Data Protection のジョブの作成ページが新しいタブで開きます。
[ステップ 1: 入力データを選択] で、ジョブ ID を入力します。[ロケーション] セクションの値は自動的に生成されます。また、[サンプリング] セクションはデータに対してサンプル スキャンを実行するように自動的に構成されていますが、この設定は必要に応じて調整できます。
[続行] をクリックします。
(省略可)[ステップ 2: 検出の設定] では、
infoTypes
と呼ばれる検索するデータのタイプを構成できます。次のいずれかを行います。
- 事前定義の
infoTypes
のリストから選択するには、[infoType を管理] をクリックします。次に、検索する infoType を選択します。 - 既存の検査テンプレートを使用するには、[テンプレート名] フィールドにテンプレートの完全なリソース名を入力します。
infoTypes
の詳細については、Sensitive Data Protection のドキュメントの infoType と infoType 検出器をご覧ください。- 事前定義の
[続行] をクリックします。
省略可: [ステップ 3: アクションの追加する] で [BigQuery に保存] を有効にして、Sensitive Data Protection の検出結果を BigQuery テーブルに公開します。検出結果を保存しない場合、完了したジョブには検出結果の数とその
infoTypes
に関する統計情報のみが含まれます。検出結果を BigQuery に保存すると、各検出結果の正確な位置と信頼度に関する詳細情報が保存されます。省略可: [BigQuery に保存] を有効にした場合は、[BigQuery に保存] セクションに次の情報を入力します。
- プロジェクト ID: 結果を保存するプロジェクト ID。
- データセット ID: 結果を保存するデータセットの名前。
- 省略可: テーブル ID: 結果を保存するテーブルの名前。テーブル ID が指定されていない場合、デフォルト名は
dlp_googleapis_date_1234567890
のように新しいテーブルに割り当てられます。既存のテーブルを指定した場合は、検出結果がそのテーブルに追加されます。
検出された実際のコンテンツを含めるには、[見積もりを含める] を有効にします。
[続行] をクリックします。
省略可: ステップ 4: スケジュールでは、[期間を指定] または [周期スケジュールでジョブを実行するトリガーを作成] を選択して、期間またはスケジュールを構成します。
[続行] をクリックします。
省略可: [確認] ページで、ジョブの詳細を確認します。必要に応じて、以前の設定を調整します。
[作成] をクリックします。
Sensitive Data Protection のジョブが完了すると、ジョブの詳細ページにリダイレクトされ、メールで通知されます。スキャンの結果は [ジョブの詳細] ページで確認できます。ジョブ完了メールにある Sensitive Data Protection のジョブの詳細ページへのリンクをクリックして確認することもできます。
Sensitive Data Protection の検出結果を BigQuery に公開することを選択した場合は、[ジョブの詳細] ページで [結果を BigQuery で表示] をクリックすると、Google Cloud コンソールにテーブルが開きます。その後、テーブルをクエリし、検出結果を分析できます。BigQuery で結果をクエリする方法については、Sensitive Data Protection のドキュメントの BigQuery で機密データの保護の検出結果をクエリするをご覧ください。
次のステップ
機密データの保護を使用して、BigQuery およびその他のストレージ リポジトリに含まれる機密データを検査する方法を学習する。
組織、フォルダ、プロジェクト内のデータのプロファイリングの詳細を確認する。
ID とセキュリティに関するブログ記事のデータの管理: Sensitive Data Protection を使用した機密データの匿名化と難読化を読む。
Sensitive Data Protection のスキャンで検出された機密データを削除または匿名化する場合は、以下をご覧ください。
- テキストを検査して機密情報を匿名化する
- Sensitive Data Protection のドキュメントの機密データの匿名化
- テーブル内の個々の値を暗号化する方法: GoogleSQL での AEAD 暗号化のコンセプト
- BigQuery テーブルを暗号化するための独自の暗号鍵を Cloud KMS で作成して管理する方法: Cloud KMS 鍵によるデータの保護。