このページでは、機密データの保護によってテーブルがプロファイリングされた後、Dataplex タグを BigQuery テーブルに自動的に適用する方法について説明します。このページでは、組織やプロジェクト間でタグ付けされたデータを検出するために使用できるクエリの例についても説明します。
この機能は、機密データの保護のデータ プロファイルから収集した分析情報を使用して、Dataplex の手動でキュレートしたメタデータの質を高める場合に便利です。生成されたタグには、次の分析情報が含まれます。
- テーブルの列で検出された情報の種類(infoTypes)
- テーブルの計算された機密レベル
- テーブルの計算されたデータリスク レベル
機密データの保護のデータ プロファイルからの分析情報は、Dataplex を使用して組織内の機密データや高リスクのデータを検出するのに役立ちます。これらの分析情報を使用すると、データの管理運営方法について情報に基づいた意思決定を行うことができます。
データ プロファイリングのオペレーションではなく、検査ジョブの結果を Dataplex に送信する場合は、機密データの保護の検査結果を Data Catalog に送信するをご覧ください。
データ プロファイルについて
組織、フォルダ、プロジェクト全体のデータに関するプロファイルを自動的に生成するように、Sensitive Data Protection を構成できます。データ プロファイルには、データに関する指標とメタデータが含まれており、機密データとリスクの高いデータの場所を特定できます。機密データの保護では、これらの指標がさまざまな詳細レベルで報告されます。プロファイリングできるデータの種類については、サポートされているリソースをご覧ください。
Dataplex と Data Catalog について
Dataplex は分散データを統合し、そのデータのデータ管理と運営を自動化する Google Cloud サービスです。Data Catalog は、Dataplex 内のフルマネージドでスケーラブルなメタデータ管理サービスです。
Data Catalog を使用すると、タグとタグ テンプレートを使用して、データにビジネス メタデータを添付できます。そして、組織やプロジェクトのすべてのメタデータを統一されたサービスで検索して管理できます。詳細については、タグとタグ テンプレートをご覧ください。
仕組み
検出スキャン構成で [タグとして Dataplex に送信する] アクションが有効になっている場合、機密データの保護はデータをプロファイルするたびに以下の処理を行います。このアクションは、新規および更新されたプロフィールにのみ適用されます。更新されていない既存のプロファイルは Dataplex に送信されません。
BigQuery テーブルに付加されるタグのスキーマを含む非公開タグ テンプレートを作成します。タグ テンプレートの名前、ID、場所については、タグ テンプレートの詳細をご覧ください。
タグ テンプレートを表示できるのは、適切なロールと権限を持つプリンシパルのみです。
プロファイリングする BigQuery テーブルごとにタグを作成します。このタグは、新しく作成したタグ テンプレートを基にしています。
たとえば、テーブルに付加されたタグのメタデータは次のようになります。
表示名 値 Column Insights
ccn: CREDIT_CARD_NUMBER
first_name: PERSON_NAME
last_name: PERSON_NAME
ssn: US_SOCIAL_SECURITY_NUMBER
email: EMAIL_ADDRESS
Column Sensitivity
ccn: HIGH
first_name: MODERATE
last_name: MODERATE
favorite_animal: LOW
ssn: HIGH
email: MODERATE
id: LOW
Data Risk Level
HIGH
Other InfoTypes
PHONE_NUMBER
Predicted InfoTypes
CREDIT_CARD_NUMBER,US_SOCIAL_SECURITY_NUMBER,EMAIL_ADDRESS,PERSON_NAME
Profile Last Generated
DATE at TIME
Sensitive Data Profile
organizations/ORGANIZATION_ID/locations/REGION/tableDataProfiles/TABLE_DATA_PROFILE_ID
Sensitivity Score
HIGH
テーブルが次のいずれでもプロファイリングされている場合、テーブルには 2 つのタグがあります。
- 組織レベルまたはフォルダレベルのスキャン構成
- プロジェクト レベルのスキャン構成
テーブルにタグ付けすると、Dataplex で特定のタグ値を使用して、組織やプロジェクトのすべてのデータを検索できます。
タグ テンプレートの詳細
テンプレート名、テンプレート ID、新しいタグ テンプレートが保存されているプロジェクトは、スキャン構成が関連するリソースによって異なります。
- スキャン構成が組織レベルまたはフォルダレベルの構成の場合、タグ テンプレートはサービス エージェント コンテナに保存されます。タグ テンプレートの名前は
Sensitive Data Profile
です。テンプレート ID はsensitive_data_profile
です。 - スキャン構成がプロジェクト レベルの構成の場合、タグ テンプレートはプロファイリングされるプロジェクトに保存されます。タグ テンプレートの名前は
Sensitive Data Profile (Project)
です。テンプレート ID はsensitive_data_profile_project
です。
料金
データ プロファイルのエクスポートにかかる他の Google Cloud サービスの料金については、データ プロファイルのエクスポートの料金をご覧ください。
データ プロファイルに基づいて BigQuery テーブルに自動的にタグを付ける
スキャン構成を作成します。または、既存のスキャン構成を編集します。
- 組織レベルまたはフォルダレベルでスキャン構成を作成するには、組織またはフォルダのをプロファイル データをご覧ください。
- プロジェクト レベルでスキャン構成を作成するには、単一プロジェクトのプロファイル データをご覧ください。
[アクションを追加] の手順で、[タグとして Dataplex に送信する] がオンになっていることを確認します。
- スキャン構成を作成する場合は、このアクションはデフォルトで有効になっています。
- スキャン構成を編集する場合は、このアクションを有効にする必要があります。
データのプロファイリングとタグ付けが完了したら、Dataplex でタグ付けされたデータの検索を開始できます。
タグを表示するためのロールと権限
Dataplex の検索結果には、アクセス権のあるデータのみが表示されます。BigQuery テーブルに付加されたタグを検索するには、次の Identity and Access Management(IAM)のロールまたは権限が必要です。
目的 | 事前定義ロール | 関連する権限 |
---|---|---|
非公開タグ テンプレートを表示する | Data Catalog TagTemplate 閲覧者(roles/datacatalog.tagTemplateViewer ) |
datacatalog.tagTemplates.getTag |
BigQuery テーブルに適用されているタグを表示する | BigQuery メタデータ閲覧者(roles/bigquery.metadataViewer ) |
bigquery.datasets.get bigquery.tables.get |
Dataplex ロールの詳細については、公開タグと非公開タグを表示するロールをご覧ください。
事前定義ロールの付与については、単一のロールを付与するをご覧ください。事前定義ロールではなくカスタムロールを使用する場合は、カスタムロールに関連する権限があることを確認してください。詳細については、カスタムロールの作成をご覧ください。
生成されたタグ テンプレートを検索する
Google Cloud コンソールで、Dataplex の [タグ テンプレート] ページに移動します。
リストでタグ テンプレートを検索します。タグ テンプレートの名前、ID、ロケーションについては、タグ テンプレートの詳細をご覧ください。
省略可: 特定の検出スキャン構成によって生成されたタグ テンプレートを検索するには、[フィルタ] フィールドに次のように入力します。
name:PROJECT_ID.TAG_TEMPLATE_ID
以下を置き換えます。
- PROJECT_ID: スキャン構成に関連するプロジェクトの ID。組織レベルまたはフォルダレベルでデータをプロファイリングした場合は、サービス エージェント コンテナのプロジェクト ID を入力します。
- TAG_TEMPLATE_ID: スキャン構成が組織またはフォルダの場合は
sensitive_data_profile
。スキャン構成がプロジェクトの場合はsensitive_data_profile_project
。
特定のテーブルデータ プロファイル用に生成されたタグを検索する
Google Cloud コンソールで、Dataplex の [検索] ページに移動します。
[検索] フィールドに次のクエリを入力します。
name:TABLE_ID tag:PROJECT_ID.TAG_TEMPLATE_ID
以下を置き換えます。
- TABLE_ID: プロファイリングされたテーブルの ID。
- PROJECT_ID: タグ テンプレートを含むプロジェクトの ID。組織レベルまたはフォルダレベルでデータをプロファイリングした場合は、サービス エージェント コンテナのプロジェクト ID を入力します。
- TAG_TEMPLATE_ID: スキャン構成が組織またはフォルダの場合は
sensitive_data_profile
。スキャン構成がプロジェクトの場合はsensitive_data_profile_project
。
表示されるリストで、テーブル ID をクリックします。BigQuery テーブルの詳細が、テーブルに付加された
Sensitive Data Profile
タグまたはSensitive Data Profile (Project)
タグとともに表示されます。テーブルが次のいずれでもプロファイリングされている場合、テーブルには 2 つのタグがあります。
- 組織レベルまたはフォルダレベルのスキャン構成
- プロジェクト レベルのスキャン構成
Data Catalog API で検索を実行する方法については、データアセットを検索する方法をご覧ください。
検索クエリの例
このセクションでは、Dataplex で特定のタグ値で組織やプロジェクトのデータを検索するために使用できる検索クエリの例を示します。
検索できるのは、アクセス権を持つデータだけです。データアクセスは IAM 権限によって制御されます。詳細については、このページのタグを表示するためのロールと権限をご覧ください。
これらのクエリは、Google Cloud コンソールの Dataplex の [検索] ページに入力できます。
クエリの作成方法については、Data Catalog の検索構文をご覧ください。Data Catalog API で検索を実行する方法については、データアセットを検索する方法をご覧ください。
新しいタグ テンプレートを使用してタグ付けされているすべてのテーブルを検索する
tag:PROJECT_ID.TAG_TEMPLATE_ID
以下を置き換えます。
- PROJECT_ID: タグ テンプレートを含むプロジェクトの ID。組織レベルまたはフォルダレベルでデータをプロファイリングした場合は、サービス エージェント コンテナのプロジェクト ID を入力します。
- TAG_TEMPLATE_ID: スキャン構成が組織またはフォルダの場合は
sensitive_data_profile
。スキャン構成がプロジェクトの場合はsensitive_data_profile_project
。
このページのこの後の例にはプロジェクト ID が含まれていないため、さまざまな検出スキャン構成に関連する結果が得られる可能性があります。結果を特定のスキャン構成に限定するには、次の例に示すようにクエリにプロジェクト ID を追加します。
指定された日付以前の最後にプロファイルされたすべてのテーブルを検索する
tag:TAG_TEMPLATE_ID.profile_last_generated<DATE
次のように置き換えます。
- TAG_TEMPLATE_ID: スキャン構成が組織またはフォルダの場合は
sensitive_data_profile
。スキャン構成がプロジェクトの場合はsensitive_data_profile_project
。 - DATE:
YYYY-MM-DD
形式の日付(例:2023-01-15
)。
指定されたテーブルレベルの機密性スコアを持つすべてのテーブルを検索する
tag:TAG_TEMPLATE_ID.sensitivity_score=SENSITIVITY_SCORE
次のように置き換えます。
- TAG_TEMPLATE_ID: スキャン構成が組織またはフォルダの場合は
sensitive_data_profile
。スキャン構成がプロジェクトの場合はsensitive_data_profile_project
。 - SENSITIVITY_SCORE:
HIGH
、MODERATE
、またはLOW
のいずれかです。
詳細については、データリスクと機密性レベルをご覧ください。
指定されたデータリスク レベルを持つすべてのテーブルを検索する
tag:TAG_TEMPLATE_ID.data_risk_level=DATA_RISK_LEVEL
次のように置き換えます。
- TAG_TEMPLATE_ID: スキャン構成が組織またはフォルダの場合は
sensitive_data_profile
。スキャン構成がプロジェクトの場合はsensitive_data_profile_project
。 - DATA_RISK_LEVEL:
HIGH
、MODERATE
、またはLOW
のいずれかです。
詳細については、データリスクと機密性レベルをご覧ください。
指定された予測 infoType を含むすべてのテーブルを検索する
tag:TAG_TEMPLATE_ID.predicted_info_types:INFOTYPE
次のように置き換えます。
- TAG_TEMPLATE_ID: スキャン構成が組織またはフォルダの場合は
sensitive_data_profile
。スキャン構成がプロジェクトの場合はsensitive_data_profile_project
。 - INFOTYPE: infoType(例:
PERSON_NAME
)。
すべての組み込み infoType の一覧については、infoType 検出器リファレンスをご覧ください。
詳細については、指標リファレンスの予測 infoType をご覧ください。
指定された infoType を部分的に含むすべてのテーブルを検索する
tag:TAG_TEMPLATE_ID.other_info_types:INFOTYPE
次のように置き換えます。
- TAG_TEMPLATE_ID: スキャン構成が組織またはフォルダの場合は
sensitive_data_profile
。スキャン構成がプロジェクトの場合はsensitive_data_profile_project
。 - INFOTYPE: infoType(例:
PERSON_NAME
)。
すべての組み込み infoType の一覧については、infoType 検出器リファレンスをご覧ください。
詳細については、指標リファレンスのその他の infoType をご覧ください。
指定された予測 infoType を持つ指定された列を含むすべてのテーブルを検索する
tag:TAG_TEMPLATE_ID.column_insights:COLUMN_NAME:INFOTYPE
次のように置き換えます。
- TAG_TEMPLATE_ID: スキャン構成が組織またはフォルダの場合は
sensitive_data_profile
。スキャン構成がプロジェクトの場合はsensitive_data_profile_project
。 - COLUMN_NAME: BigQuery テーブル内の列の名前。
- INFOTYPE: infoType(例:
PERSON_NAME
)。
すべての組み込み infoType の一覧については、infoType 検出器リファレンスをご覧ください。
詳細については、指標リファレンスの予測 infoType をご覧ください。
指定された列レベルの機密性スコアを持つ指定された列を含むすべてのテーブルを検索する
tag:TAG_TEMPLATE_ID.column_sensitivity:COLUMN_NAME:SENSITIVITY_SCORE
次のように置き換えます。
- TAG_TEMPLATE_ID: スキャン構成が組織またはフォルダの場合は
sensitive_data_profile
。スキャン構成がプロジェクトの場合はsensitive_data_profile_project
。 - COLUMN_NAME: BigQuery テーブル内の列の名前。
- SENSITIVITY_SCORE:
HIGH
、MODERATE
、またはLOW
のいずれかです。
詳細については、データリスクと機密性レベルをご覧ください。
切り捨てられたタグの値
BigQuery テーブルの列見出しデータが 10 MB を超えると、生成されたタグの Column Insights
フィールドまたは Column
Sensitivity
フィールドに [TRUNCATED]
が表示されることがあります。この場合は、機密データの保護に移動して、テーブルデータ プロファイルと関連する列データ プロファイルを確認することをおすすめします。