データ プロファイルの詳細については、BigQuery データのデータ プロファイルをご覧ください。
プロファイリングを開始するには、スキャン構成を作成します。
準備
組織レベルでデータ プロファイルを構成するために必要な IAM 権限があることを確認します。
組織管理者(
roles/resourcemanager.organizationAdmin
)またはセキュリティ管理者(roles/iam.securityAdmin
)のロールを付与されていなくても、スキャン構成を作成できます。ただし、スキャンの構成を作成した後、次のいずれかのロールを持つユーザーが、サービス エージェントにデータ プロファイリングのアクセス権を付与する必要があります。Cloud DLP を構成して、特定のイベント(Cloud DLP によって新しいテーブルのプロファイルが作成されるなど)が発生したときに Pub/Sub に通知を送信するように構成できます。この機能を使用するには、最初に Pub/Sub トピックを作成する必要があります。
スキャン構成を作成する
スキャン構成を作成するには、次のセクションの手順を行います。各セクションの最後にある [続行] をクリックします。
[スキャン構成の作成] ページに移動します。
必要に応じて、組織に移動します。ツールバーで、
プロジェクト セレクタをクリックして組織を選択します。
以降のセクションでは、スキャン構成の作成ページの手順について詳しく説明します。
スキャンするリソースの選択
次のいずれかを行います。- 組織レベルでプロファイリングを構成するには、[組織全体をスキャン] を選択します。
- フォルダレベルでプロファイリングを構成するには、[選択したフォルダをスキャン] を選択します。次に、[参照] をクリックしてフォルダを選択します。
スケジュールを管理
デフォルトのプロファイリング頻度がニーズに合っている場合は、スキャン構成の作成ページのこのセクションをスキップできます。このセクションは、すべてのデータまたはデータのサブセットのプロファイリング頻度をきめ細かく調整する場合に便利です。また、特定のテーブルをプロファイリングしない場合や、一度プロファイリングした後再びまったくプロファイリングしない場合にも便利です。
このセクションでは、フィルタを作成して、関心のあるデータのサブセットを指定します。このサブセットでは、Cloud DLP がテーブルをプロファイリングするかどうかと頻度を定義します。ここでは、テーブルを再プロファイリングする変更の種類も指定します。最後に、Cloud DLP がテーブルのプロファイリングを開始する前に、サブセット内の各テーブルが満たす必要がある条件を指定します。
プロファイリングの頻度を詳細に調整するには、次の手順を行います。
- [スケジュールを追加] をクリックします。
[フィルタ] セクションで、テーブルがスケジュールのスコープに含まれる 1 つ以上のフィルタを定義します。
次のうち少なくとも 1 つを指定します。
- 1 つ以上のプロジェクトを指定するプロジェクト ID または正規表現。
- 1 つ以上のデータセットを指定するデータセット ID または正規表現。
- 1 つ以上のテーブルを指定するテーブル ID または正規表現。
正規表現は RE2 構文に従う必要があります。
たとえば、プロジェクト内のすべてのテーブルをフィルタに含めるには、そのプロジェクトの ID を指定し、他の 2 つのフィールドを空白のままにします。
さらにフィルタを追加する場合は、[フィルタを追加] をクリックし、前述の手順を繰り返します。
[頻度] をクリックします。
[頻度] セクションで、フィルタで定義したテーブルを Cloud DLP でプロファイリングするかどうかを指定します。プロファイリングする場合はその頻度も指定します。
テーブルをプロファイリングしない場合は、[テーブルをプロファイリング] をオフにします。
テーブルのプロファイリングを 1 回以上行う場合は、[テーブルをプロファイリング] をオンのままにして、次の手順を行います。
[スキーマが変更された場合] フィールドで、最後にプロファイリングが行われた後にスキーマの変更が行われた場合にテーブルを再プロファイリングするタイミングを指定します。
- 再プロファイリングしない: 最初のプロファイルが生成された後、再プロファイリングしません。
- 毎日再プロファイリング: 24 時間ごとに 1 回再プロファイリングします。
- 毎月再プロファイリング: 30 日ごとに 1 回再プロファイリングします。
[スキーマの変更の種類] で、再プロファイル操作をトリガーするスキーマの変更の種類を指定します。
- 新しい列: 新しい列を取得したテーブルを再プロファイリングします。
- 削除された列: 列が削除されたテーブルを再プロファイリングします。
再プロファイリング オペレーションを 24 時間ごとに実行する必要があるとします。また、前回のプロファイリング後に新しい列を取得したテーブルのみを再プロファイリングすることもできます。この場合、[スキーマが変更された場合] を [毎日再プロファイリング] に設定し、[スキーマ変更の種類] を [新しい列] に設定します。
[Table changes] フィールドで、最後にプロファイルが作成された後にテーブルに変更があった場合にテーブルを再プロファイリングするタイミングを指定します。テーブルの変更の例としては、行の削除やスキーマの変更があります。
- 再プロファイリングしない: 最初のプロファイルが生成された後、再プロファイリングしません。
- 毎日再プロファイリング: 24 時間ごとに 1 回再プロファイリングします。
- 毎月再プロファイリング: 30 日ごとに 1 回再プロファイリングします。
[スキーマの変更のタイミング] で設定した値と同じ値か、それよりも小さい値を選択する必要があります。
[条件] をクリックします。
[条件] セクションで、フィルタで定義されたテーブルが Cloud DLP でプロファイリングされる前に満たす必要がある条件を指定します。最小条件と時間条件を設定した場合、Cloud DLP は両方のタイプの条件を満たすテーブルのみをプロファイリングします。
- 最小条件: 特定の条件が満たされるまでテーブルのプロファイリングを遅らせたい場合に役立ちます。適用する条件を有効にし、最小の行数または期間を指定します。
- 時間条件: この条件は、古いテーブルをプロファイリングする必要がない場合に便利です。時間条件を有効にして日付と時刻を選択します。この日以前に作成されたテーブルは、プロファイリングから除外されます。
次の構成があるとします。
最小条件
- 最小行数: 10 行
- 最小期間: 24 時間
時間条件
- タイムスタンプ: 2022 年 5 月 4 日午後 11 時 59 分
この場合、Cloud DLP は 2022 年 5 月 4 日午後 11 時 59 分以前に作成されたテーブルを除外します。この日時の後に作成されたテーブルのうち、10 行または 24 時間以上経過したテーブルのみが Cloud DLP によってプロファイリングされます。
[完了] をクリックします。
さらにスケジュールを追加する場合は、[スケジュールを追加] をクリックして前の手順を繰り返します。
優先度に従ってスケジュールを並べ替えるには、
矢印と 下矢印を使用します。たとえば、2 つの異なるスケジュールのフィルタがテーブル A と一致する場合、優先度リストのより高いスケジュールが優先されます。リストの最後のスケジュールは、常に [デフォルトのスケジュール] というラベルが付いたスケジュールになります。このデフォルトのスケジュールは、選択したリソース(組織またはフォルダ)内の、作成したスケジュールと一致しないテーブルを対象にします。このデフォルト スケジュールは、システムのデフォルト プロファイリング頻度に従います。
デフォルトのスケジュールを調整する場合は、
[スケジュールを編集] をクリックして、必要に応じて設定を調整します。
検査テンプレートの選択
検査構成の指定方法に応じて、次のいずれかのオプションを選択します。どのオプションを選択しても、Cloud DLP は、対象データを保存するようにBigQuery を構成したリージョンでデータをスキャンします。BigQuery データが元のリージョンから離れることはありません。
オプション 1: 検査テンプレートを作成する
global
リージョンで新しい検査テンプレートを作成する場合は、このオプションを選択します。
- [新しい検査テンプレートを作成] をクリックします。
(省略可)デフォルトの infoType を変更するには、[infoType を管理] をクリックします。フィルタを使用して infoTypes を見つけて選択します。[完了] をクリックします。
省略可: ルールセットを追加して信頼度のしきい値を設定し、検査テンプレートをさらに構成します。詳細については、検出の構成をご覧ください。
Cloud DLP は、スキャン構成を作成するときに、この新しい検査テンプレートを
global
リージョンに保存します。
オプション 2: 既存の検査テンプレートを使用する
使用したい既存の検査テンプレートがある場合は、このオプションを選択します。
[既存の検査テンプレートを選択] をクリックします。
使用する検査テンプレートの完全なリソース名を入力します。 [リージョン] フィールドには、検査テンプレートが保存されるリージョンの名前が自動的に入力されます。
入力する検査テンプレートは、プロファイリングするデータと同じリージョン内に存在している必要があります。データ所在地を考慮して、Cloud DLP はそのリージョンの外部にある検査テンプレートを使用しません。
検査テンプレートの完全なリソース名を確認する手順は次のとおりです。
検査テンプレート リストに移動します。このページは別のタブで開きます。
必要に応じて、使用する検査テンプレートを含むプロジェクトに切り替えます。
[テンプレート] タブで、使用するテンプレートのテンプレート ID をクリックします。
開いたページで、テンプレートの完全なリソース名をコピーします。完全なリソース名の形式は次のとおりです。
projects/PROJECT_ID/locations/REGION/inspectTemplates/TEMPLATE_ID
[スキャン構成の作成] ページに戻り、[テンプレート名] フィールドにテンプレートの完全なリソース名を貼り付けます。
別のリージョンにデータがあり、そのリージョンに使用する検査テンプレートがある場合は、次の手順を行います。
- [検査テンプレートを追加] をクリックします。
- 検査テンプレートの完全なリソース名を入力します。
専用の検査テンプレートがあるリージョンごとに、前述の手順を繰り返します。
(省略可)
global
リージョンに保存されている検査テンプレートを追加します。Cloud DLP では、専用の検査テンプレートがないリージョンのデータにも、このテンプレートが自動的に使用されます。
スキャン結果を管理する
次のセクションでは、データ プロファイルが生成された後、Cloud DLP で実施するアクションを指定します。
Chronicle にパブリッシュ
データ プロファイルから収集された指標によって、Chronicle の検出結果にコンテキストが追加されます。コンテキストが追加されることで、最も重要なセキュリティ問題の特定に役立ちます。たとえば、Chronicle で特定のサービス エージェントを調査する場合、データ プロファイルにより、そのサービス エージェントがデータ リスク レベルの高いテーブルにアクセスできるかどうかに関する分析情報を提供できます。
データ プロファイルを Chronicle アカウントに送信するには、[Chronicle に公開] をオンにします。
組織で Chronicle が有効になっていない場合、このオプションを有効にしても効果はありません。
データ プロファイルのコピーを BigQuery に保存する
[データプロファイルのコピーを BigQuery に保存する] をオンにすると、生成されたすべてのプロファイルの保存コピーまたは履歴が保持されます。これは、監査レポートの作成やデータ プロファイルの可視化に役立ちます。この情報は他のシステムに読み込むこともできます。
また、このオプションを使用すると、データが存在するリージョンに関係なく、すべてのデータプロファイルを 1 つのビューで表示できます。このオプションを無効にしても、ダッシュボードにデータ プロファイルを表示できます。ただし、ダッシュボードで一度に 1 つのリージョンを選択すると、そのリージョンのデータ プロファイルのみが表示されます。
データ プロファイルのコピーを BigQuery テーブルにエクスポートするには、次の手順を行います。
[データ プロファイルのコピーを BigQuery に保存する] をオンにします。
データ プロファイルを保存する BigQuery テーブルの詳細を入力します。
[プロジェクト ID] に、データ プロファイルをエクスポートする既存のプロジェクトの ID を入力します。
[データセット ID] に、データ プロファイルをエクスポートするプロジェクト内の既存のデータセットの名前を入力します。
[Table ID] に、データ プロファイルをエクスポートする BigQuery テーブルの名前を入力します。このテーブルを作成していない場合は、Cloud DLP によって、指定した名前を使用して自動的に作成されます。
Cloud DLP は、このオプションをオンにした時点からプロファイルのエクスポートを開始します。エクスポートを有効にする前に生成されたプロファイルは BigQuery に保存されません。
Pub/Sub に公開
[Pub/Sub に公開] を有効にすると、プロファイリング結果に基づいて、プログラムによるアクションを実行できます。Pub/Sub 通知を使用して、重大なデータリスクや機密性が高い知見を検出し、修正するワークフローを開発できます。
Pub/Sub トピックに通知を送信する方法は次のとおりです。
[Pub/Sub に公開] をオンにします。
オプションのリストが表示されます。各オプションでは、Cloud DLP から Pub/Sub に通知を送信するイベントを記述します。
Pub/Sub 通知をトリガーするイベントを選択します。
選択に応じてプロファイルが更新されるたびに Pub/Sub 通知を送信するでは、以下が変更されると Cloud DLP が通知を送信します。テーブルレベルの指標を満たす必要があります。
- データリスク
- 機密性
- 予測される infoType
- その他の infoType
- 公開
- 暗号化
選択したイベントごとに、次の操作を行います。
トピックの名前を入力します。名前は、次の形式にする必要があります。
projects/PROJECT_ID/topics/TOPIC_ID
以下を置き換えます。
- PROJECT_ID: Pub/Sub トピックに関連付けられているプロジェクトの ID。
- TOPIC_ID: Pub/Sub トピックの ID。
通知にテーブル プロファイル全体を含めるか、プロファイリングされたテーブルの完全なリソース名を含めるかを指定します。
Cloud DLP が通知を送信するために必要な最小データリスクと感度レベルを設定します。
データリスク条件と機密条件の一方または両方を満たす必要があるかどうかを指定します。たとえば
AND
を選択した場合、Cloud DLP が通知を送信する前に、データリスクと機密条件の両方を満たす必要があります。
サービス エージェント コンテナと課金の管理
このセクションでは、サービス エージェント コンテナとして使用するプロジェクトを指定します。Cloud DLP で新しいプロジェクトを自動的に作成することも、既存のプロジェクトを選択することもできます。
初めてスキャン構成を作成する場合は、[サービス エージェント コンテナとして新しいプロジェクトを作成] をクリックします。
Cloud DLP によって、DLP Service Agent Container という新しいプロジェクトが作成されます。このプロジェクトは、実質的には新しいサービス エージェントを含む通常の Google Cloud プロジェクトとなっています。Cloud DLP では、データ プロファイリングに関係のないオペレーションを含め、このプロジェクトに関連するすべての課金対象オペレーションに対して課金されるアカウントを選択するように求められます。
既存のサービス エージェント コンテナを再利用する場合は、[既存のサービス エージェント コンテナを選択] をクリックします。次に、[参照] をクリックして、サービス エージェント コンテナのプロジェクト ID を選択します。
新しく作成したサービス エージェントを使用するか既存のサービス エージェントを再利用するかに関係なく、プロファイリングするデータへの読み取りアクセス権があることを確認します。BigQuery にプロファイルをエクスポートする場合は、出力テーブルへの書き込みアクセス権も付与されていることを確認してください。
構成を保存するロケーションの設定
[リソースのロケーション] リストをクリックし、このスキャン構成を保存するリージョンを選択します。後で作成するすべてのスキャン構成も、この場所に保存されます。
いずれのスキャン構成の保存先を選択しても、スキャンするデータには影響しません。また、データ プロファイルの保存場所にも影響しません。データは、BigQuery で設定されたとおり、データが保存されているリージョンと同じリージョンでスキャンされます。詳細については、データ所在地に関する検討事項をご覧ください。
確認と作成
スキャン構成を作成した直後にプロファイリングを開始しない場合は、[一時停止モードでスキャンを作成する] を選択します。
この構成は、次のような場合に利用できます。
- Google Cloud 管理者は、サービス エージェントにデータ プロファイリングのアクセス権を付与する必要があります。
- 複数のスキャン構成を作成し、一部の構成で他の構成をオーバーライドする。
- データ プロファイルを BigQuery に保存することを検討しており、サービス エージェントが出力テーブルへの書き込みアクセス権を持っていることを確認する。
- Pub/Sub 通知を構成しており、サービス エージェントに公開アクセス権を付与する。
設定を確認し、[作成] をクリックします。
Cloud DLP がスキャン構成を作成し、[構成] リストに追加されます。
スキャン構成を表示または管理するには、データ プロファイル構成リストに移動します。
データにアクセスしてプロファイリングするために必要なロールがサービス エージェントに付与されている場合、Cloud DLP は、スキャン構成の作成後すぐにデータのスキャンを開始します。付与されていない場合、スキャン構成の詳細を表示するときに、Cloud DLP によってエラーが表示されます。
次のステップ
- 組織管理者(
roles/resourcemanager.organizationAdmin
)またはセキュリティ管理者(roles/iam.securityAdmin
)のいずれのロールも保持していない場合、誰かがサービス エージェントにデータ プロファイリングへのアクセス権を付与する必要があります。 - データ プロファイルを表示する方法を学習する。
- スキャン構成を管理する方法を学習する。
- データ プロファイルに関する問題をトラブルシューティングする方法を学習する。