このページでは、Sensitive Data Protection がリソースをプロファイリングした後に、Dataplex アスペクトをデータに自動的に追加する方法について説明します。このページでは、組織やプロジェクト全体で特定のアスペクト値を持つデータを検索するために使用できるクエリの例についても説明します。
この機能は、機密データの保護のデータ プロファイルから収集した分析情報を使用して、Dataplex のメタデータの質を高める場合に便利です。生成されたアスペクトには、次の分析情報が含まれます。
- テーブルまたはデータセットの計算された機密レベル
- テーブルまたはデータセットの計算されたデータリスク レベル
- テーブルまたはデータセットで検出された情報の種類(infoType)
機密データの保護のデータ プロファイルからの分析情報は、Dataplex を使用して組織内の機密データや高リスクのデータを検出するのに役立ちます。これらの分析情報を使用すると、データの管理運営方法について情報に基づいた意思決定を行うことができます。
データ プロファイルについて
組織、フォルダ、プロジェクト全体のデータに関するプロファイルを自動的に生成するように、機密データの保護を構成できます。データ プロファイルには、データに関する指標とメタデータが含まれており、センシティブ データとリスクの高いデータの場所を特定できます。Sensitive Data Protection は、これらの指標をさまざまな詳細レベルで報告します。
データ プロファイルを Dataplex、Pub/Sub、Security Command Center、Google Security Operations などの他の Google Cloud サービスに送信して、データ ガバナンス、アラート、セキュリティ ワークフローを強化できます。
Dataplex Catalog について
Dataplex Catalog は、 Google Cloud リソースの統合インベントリを提供する Dataplex 機能です。
Dataplex Catalog では、アスペクトを使用してビジネス メタデータとテクニカル メタデータをデータに追加し、リソースのコンテキストと知識をキャプチャできます。組織全体でデータを検索して検出し、データアセットに対するデータ ガバナンスを有効にできます。詳細については、アスペクトをご覧ください。
サポートされているリソース
Sensitive Data Protection は、次のリソースの Dataplex エントリにアスペクトを自動的に接続できます。
- 複数の BigQuery テーブル
Cloud SQL テーブル
BigQuery テーブルから作成された Vertex AI データセット
Dataplex Catalog は Cloud Storage バケットを取り込まないため、Cloud Storage データをプロファイリングする場合は、この機能は使用できません。
仕組み
データ プロファイルに基づいて Dataplex Catalog アスペクトを自動的に作成するワークフローの概要は次のとおりです。
サポートされているリソースタイプのスキャン構成を作成または編集します。
[アクションを追加する] の手順で、[アスペクトとして Dataplex Catalog に送信する] アクションが有効になっていることを確認します。
スキャン構成を作成する場合は、このアクションはデフォルトで有効になっています。
スキャン構成を編集する場合は、このアクションを有効にします。
Sensitive Data Protection は、プロファイリングするサポートされているリソースごとに、Dataplex エントリの Sensitive Data Protection profile
アスペクトを追加または更新します。その後、Dataplex Catalog で特定のアスペクト値を使用して、組織またはプロジェクト内のすべてのデータを検索できます。
[アスペクトとして Dataplex Catalog に送信する] アクションを有効にすると、Sensitive Data Protection はこのアクションを新しいプロファイルと更新されたプロファイルにのみ適用します。更新されていない既存のプロファイルは Dataplex カタログに送信されません。
最上位フィールド
プロファイリングされたテーブルの作成されたアスペクトには、次のトップレベル フィールドがあります。
表示名 | 値の例 | 説明 |
---|---|---|
Sensitivity |
MODERATE |
テーブルの計算された機密レベル |
Risk |
MODERATE |
テーブルの計算されたデータリスク レベル |
InfoTypes |
|
テーブルで検出されたすべての infoType のリスト(予測された infoType とその他の infoType を含む)。このフィールドは、テーブルで 1 つ以上の infoType が検出された場合を含められます。 |
Column InfoTypes |
|
テーブルのすべての列で検出されたすべての予測された infoType のリスト。このフィールドは、テーブルで予測された infoType が 1 つ以上検出された場合、含まれます。 |
Project Profile |
このページのプロジェクト プロファイルと組織プロファイルをご覧ください。 | プロジェクト レベルのスキャン構成でリソースがプロファイリングされた場合に含まれます。 |
Organization Profile |
このページのプロジェクト プロファイルと組織プロファイルをご覧ください。 | 組織レベルまたはフォルダレベルのスキャン構成でリソースがプロファイリングされた場合に含まれます。 |
リソースがプロジェクト レベルと組織レベルまたはフォルダレベルの両方でプロファイリングされている場合、Sensitive Data Protection は両方のプロファイルの値を集約します。このアスペクトは、検出された infoType の結合を提供し、両方のプロファイルで最も高い機密性とデータリスクの評価を使用します。
たとえば、プロジェクト レベルのプロファイルでリソースの機密性が MODERATE
と評価され、組織レベルのプロファイルで機密性が LOW
と評価されているとします。この場合、アスペクトのトップレベルの Sensitivity
フィールドの値は MODERATE
です。
プロジェクト プロファイルと組織プロファイルのフィールド
生成された Sensitive Data Protection profile
アスペクトには、リソースのプロファイリング レベルに応じて、次の最上位フィールドの 1 つまたは両方が含まれます。
Project Profile
- プロジェクト レベルのスキャン構成でリソースがプロファイリングされた場合、アスペクトに含まれます
Organization Profile
- 組織レベルまたはフォルダレベルのスキャン構成でリソースがプロファイリングされた場合、アスペクトに含まれます
リソースがプロジェクト レベルと組織レベルまたはフォルダレベルの両方でプロファイリングされている場合、結果のアスペクトには Project Profile
フィールドと Organization Profile
フィールドの両方があります。
各 Project Profile
フィールドまたは Organization Profile
フィールドには、データ プロファイルにリストされている値を含むネストされた Sensitivity
フィールドと Risk
フィールドが含まれています。データ プロファイルに予測された infoType と他の infoType がリストされている場合は、それらをネストされた Column InfoTypes
フィールドと InfoTypes
フィールドとして使用することもできます。また、各 Project Profile
フィールドまたは Organization Profile
フィールドには、次のネストされたフィールドが含まれています。
Profile
データ プロファイルの完全なリソース名。例:
- プロジェクト レベルのプロファイル:
projects/PROJECT_ID/locations/LOCATION/tableDataProfiles/PROFILE_ID
- 組織レベルまたはフォルダレベルのプロファイル:
organizations/ORGANIZATION_ID/locations/LOCATION/tableDataProfiles/PROFILE_ID
- プロジェクト レベルのプロファイル:
Profile Link
Google Cloud コンソールのプロフィールへのリンク。例:
- プロジェクト レベルのプロファイル:
https://console.cloud.google.com/security/sensitive-data-protection/projects/PROJECT_ID/locations/LOCATION/tableDataProfiles/PROFILE_ID
- 組織レベルまたはフォルダレベルのプロファイル:
https://console.cloud.google.com/security/sensitive-data-protection/organizations/ORGANIZATION_ID/locations/LOCATION/tableDataProfiles/PROFILE_ID
- プロジェクト レベルのプロファイル:
Dataplex API を有効にする
アスペクトを追加するリソースを含む各プロジェクトで Dataplex API を有効にする必要があります。このセクションでは、単一のプロジェクトまたは組織またはフォルダ内のすべてのプロジェクトで Dataplex API を有効にする方法について説明します。
単一のプロジェクトで Dataplex API を有効にする
Dataplex API を有効にするプロジェクトを選択します。
-
Enable the Dataplex API.
組織またはフォルダ内のすべてのプロジェクトで Dataplex API を有効にする
このセクションでは、組織またはフォルダ内のすべてのプロジェクトを検索し、各プロジェクトで Dataplex API を有効にするスクリプトを示します。
組織またはフォルダ内のすべてのプロジェクトで Dataplex API を有効にするために必要な権限を取得するには、次の IAM ロールを付与するよう管理者に依頼してください。
-
組織またはフォルダに対する Cloud Asset 閲覧者 (
roles/cloudasset.viewer
) -
Dataplex API を有効にする各プロジェクトに対する DLP ユーザー (
roles/dlp.user
)
ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。
これらの事前定義ロールには、組織またはフォルダ内のすべてのプロジェクトで Dataplex API を有効にするために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
組織またはフォルダ内のすべてのプロジェクトで Dataplex API を有効にするには、次の権限が必要です。
-
組織またはフォルダ内のすべてのプロジェクトを検索するには、組織またはフォルダに対して
cloudasset.assets.searchAllResources
を使用します。 -
Dataplex API を有効にするには、Dataplex API を有効にする各プロジェクトで
serviceusage.services.use
を使用します。
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
組織またはフォルダ内のすべてのプロジェクトで Dataplex API を有効にするには、次の操作を行います。
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
次のスクリプトを実行します。
#!/bin/bash RESOURCE_ID="RESOURCE_ID" gcloud asset search-all-resources \ --scope="RESOURCE_TYPE/$RESOURCE_ID" \ --asset-types="cloudresourcemanager.googleapis.com/Project" \ --format="value(name)" | while read project_name; do project_id=$(echo "$project_name" | sed 's|.*/||') gcloud services enable "dataplex.googleapis.com" --project="$project_id" done
次のように置き換えます。
RESOURCE_ID
: プロジェクトを含むリソースの組織番号またはフォルダ番号RESOURCE_TYPE
: プロジェクトを含むリソースのタイプ(organizations
またはfolders
)
アスペクトを表示するためのロールと権限
リソースに関連付けられたアスペクトを検索するために必要な権限を取得するには、リソースに対する次の IAM ロールを付与するよう管理者に依頼してください。
-
Dataplex Catalog 閲覧者 (
roles/dataplex.catalogViewer
) -
BigQuery データ閲覧者 (
roles/bigquery.dataViewer
) -
Vertex AI 閲覧者 (
roles/aiplatform.viewer
)
ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。
これらの事前定義ロールには、リソースに関連付けられたアスペクトを検索するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
リソースに関連付けられたアスペクトを検索するには、次の権限が必要です。
-
Dataplex エントリを表示します。
-
dataplex.entries.list
-
dataplex.entries.get
-
-
BigQuery データセットとテーブルを表示する:
-
bigquery.datasets.get
-
bigquery.tables.get
-
-
Vertex AI データセットを表示する:
aiplatform.datasets.get
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
Dataplex の使用に必要な権限の詳細については、Dataplex IAM 権限をご覧ください。
特定のテーブルデータ プロファイル用に生成されたアスペクトを検索する
Google Cloud コンソールで、Dataplex の [検索] ページに移動します。
組織またはプロジェクトを選択します。
[検索プラットフォームを選択] で、検索モードとして [Dataplex Catalog] を選択します。
[検索] フィールドに次のクエリを入力します。
name:TABLE_ID
TABLE_ID
は、プロファイリングされたテーブルの ID に置き換えます。表示されたリストで、テーブル名をクリックします。BigQuery テーブルの詳細が表示されます。関連付けられている
Sensitive Data Protection profile
アスペクトは、[オプションのタグとアスペクト] セクションに表示されます。
リソースの検索方法の詳細については、Dataplex Catalog でリソースを検索するをご覧ください。
検索クエリの例
このセクションでは、Dataplex で特定のアスペクト値で組織またはプロジェクトのデータを検索するために使用できる検索クエリの例を示します。
検索できるのは、アクセス権を持つデータだけです。データアクセスは IAM 権限によって制御されます。詳細については、このページのアスペクトを表示するためのロールと権限をご覧ください。
これらのサンプルクエリは、Dataplex の [検索] ページの [検索] フィールドに入力できます。
クエリの作成方法については、Dataplex Catalog の検索構文をご覧ください。
Sensitive Data Protection プロファイル アスペクトを持つすべてのリソースを検索する
aspect:sensitive-data-protection-profile
指定された機密性スコアを持つすべてのリソースを検索する
aspect:sensitive-data-protection-profile.sensitivity=SENSITIVITY_SCORE
SENSITIVITY_SCORE
は、HIGH
、MODERATE
、UNKNOWN
、または LOW
に置き換えます。
詳細については、機密性とデータリスク レベルをご覧ください。
指定されたリスクスコアを持つすべてのリソースを検索する
aspect:sensitive-data-protection-profile.risk=DATA_RISK_LEVEL
DATA_RISK_LEVEL
は、HIGH
、MODERATE
、UNKNOWN
、または LOW
に置き換えます。
詳細については、機密性とデータリスク レベルをご覧ください。
プロジェクト レベルのプロファイルを持つすべてのリソースを検索する
aspect:sensitive-data-protection-profile.projectProfile
組織レベルのプロファイルを持つすべてのリソースを検索する
aspect:sensitive-data-protection-profile.organizationProfile