分析儲存在 BigQuery 中的資料剖析檔

如果您設定機密資料探索服務,將所有成功產生的資料剖析檔傳送至 BigQuery,即可查詢這些資料剖析檔,深入瞭解資料。您也可以使用數據分析等視覺化工具,根據業務需求建立自訂報表。或者,您也可以使用 Sensitive Data Protection 提供的預先製作報表,視需要調整並共用。

本頁面提供範例 SQL 查詢,可協助您進一步瞭解資料剖析。此外,本文也會說明如何在數據分析中以圖表呈現資料設定檔。

如要進一步瞭解資料剖析,請參閱「機密資料探索總覽」。

事前準備

本頁面假設您已在機構、資料夾或專案層級設定剖析功能。在探索掃描設定中,請務必啟用「將資料剖析檔副本儲存至 BigQuery」動作。如要進一步瞭解如何建立探索掃描設定,請參閱「建立掃描設定」。

輸出資料表

在本文件中,包含匯出資料設定檔的資料表稱為「輸出資料表」

請確認您已備妥輸出資料表的專案 ID、資料集 ID 和資料表 ID。您需要這些權限才能執行本頁面的程序。

latest 檢視表

當 Sensitive Data Protection 將資料剖析檔匯出至輸出資料表時,也會建立 latest 檢視畫面。這個檢視畫面是經過預先篩選的虛擬資料表,只包含資料設定檔的最新快照。latest 檢視區與輸出資料表具有相同的結構定義,因此您可以在 SQL 查詢和數據分析報表中交替使用這兩者。輸出資料表包含較舊的資料剖析快照,因此結果可能有所不同。

latest 檢視區塊的儲存位置與輸出資料表相同。名稱格式如下:

OUTPUT_TABLE_latest_VERSION

更改下列內容:

  • OUTPUT_TABLE:包含匯出資料設定檔的資料表 ID。
  • VERSION:檢視區塊的版本號碼。

舉例來說,如果輸出資料表名稱為 table-profile,則 latest 檢視區塊的名稱會類似 table-profile_latest_v1

最新檢視畫面

在 SQL 查詢中使用 latest 檢視區塊時,請使用檢視區塊的完整名稱,包括專案 ID、資料集 ID、資料表 ID 和後置字元,例如 myproject.mydataset.table-profile_latest_v1

PROJECT_ID.DATASET_ID.OUTPUT_TABLE_latest_VERSION

選擇輸出資料表或 latest 檢視畫面

latest 檢視畫面只會顯示最新的資料剖析檔快照,而輸出資料表則會顯示所有資料剖析檔快照,包括過時的快照。舉例來說,輸出資料表的查詢可以傳回同一個資料欄的多個資料欄資料剖析,每次剖析該資料欄時都會傳回一個。

在 SQL 查詢或數據分析報表中選擇使用輸出資料表和 latest 檢視畫面時,請考量下列事項:

  • 如果資料資產已重新設定剖析,且您只想查看最新剖析,不想查看舊版剖析,則 latest 檢視畫面就非常實用。也就是想查看已剖析資料的目前狀態。

  • 如果您想查看剖析資料的歷史記錄,輸出資料表就非常實用。舉例來說,您想判斷貴機構是否曾儲存特定 infoType,或是想查看特定資料剖析檔的變更。

SQL 查詢示例

本節提供分析資料剖析時可使用的查詢範例。如要執行這些查詢,請參閱「執行互動式查詢」。

請將以下範例中的 TABLE_OR_VIEW 替換成下列任一值:

  • 輸出資料表的名稱,也就是包含匯出資料設定檔的資料表,例如 myproject.mydataset.table-profile
  • 輸出資料表的latest檢視畫面名稱,例如 myproject.mydataset.table-profile_latest_v1

無論選擇哪一種做法,都必須包含專案 ID 和資料集 ID。

詳情請參閱本頁的「選擇輸出資料表和 latest 檢視畫面」。

如要排解遇到的錯誤,請參閱「錯誤訊息」一文。

列出所有自由文字分數偏高,且有其他 infoType 比對證據的資料欄

SELECT
  column_profile.table_full_resource,
  column_profile.COLUMN,
  other_matches.info_type.name,
  column_profile.profile_last_generated
FROM
   `TABLE_OR_VIEW`
  LEFT JOIN UNNEST(column_profile.other_matches) AS other_matches
WHERE
  column_profile.free_text_score = 1
  AND ( column_profile.column_info_type.info_type.name>""
    OR ARRAY_LENGTH(column_profile.other_matches)>0 )

如要瞭解如何修正這些發現,請參閱「建議的資料風險緩解策略」。

如要進一步瞭解「任意文字分數」和「其他 infoType」指標,請參閱資料欄資料剖析

列出所有包含信用卡號碼欄的資料表

SELECT
  column_profile.table_full_resource,
  column_profile.profile_last_generated
FROM
  `TABLE_OR_VIEW`
WHERE
  column_profile.column_info_type.info_type.name="CREDIT_CARD_NUMBER"

CREDIT_CARD_NUMBER內建 infoType,代表信用卡號碼。

如要瞭解如何修正這些發現,請參閱「建議的資料風險緩解策略」。

列出包含信用卡號碼、美國社會安全號碼和個人姓名欄的資料表設定檔

SELECT
  table_full_resource,
  COUNT(*) AS count_findings
FROM (
  SELECT
    DISTINCT column_profile.table_full_resource,
    column_profile.column_info_type.info_type.name
  FROM
    `TABLE_OR_VIEW`
  WHERE
    column_profile.column_info_type.info_type.name IN ('PERSON_NAME',
      'CREDIT_CARD_NUMBER',
      'US_SOCIAL_SECURITY_NUMBER')
  ORDER BY
    column_profile.table_full_resource ) ot1
GROUP BY
  table_full_resource
  #increase this number to match the total distinct infoTypes that must be present
HAVING
  count_findings>=3

這項查詢使用下列內建 infoType

  • CREDIT_CARD_NUMBER:代表信用卡號碼
  • PERSON_NAME:代表人員的全名
  • US_SOCIAL_SECURITY_NUMBER 代表美國社會安全號碼

如要瞭解如何修正這些發現,請參閱「建議的資料風險緩解策略」。

列出敏感度分數為 SENSITIVITY_HIGH 的值區

SELECT file_store_profile.file_store_path, file_store_profile.resource_visibility, file_store_profile.sensitivity_score
FROM `TABLE_OR_VIEW`
WHERE file_store_profile.sensitivity_score.score ='SENSITIVITY_HIGH'
;

詳情請參閱「檔案儲存資料設定檔」。

列出所有掃描的 bucket 路徑、叢集和副檔名,其中機密程度分數為 SENSITIVITY_HIGH

SELECT file_store_profile.file_store_path, summaries.file_cluster_type.cluster, STRING_AGG(scanned_file_extensions.file_extension) AS scanned_extensions, file_store_profile.profile_last_generated.timestamp
FROM `TABLE_OR_VIEW`
LEFT JOIN UNNEST(file_store_profile.file_cluster_summaries) as summaries
LEFT JOIN UNNEST(summaries.file_store_info_type_summaries) as info_types
LEFT JOIN UNNEST(summaries.file_extensions_scanned) as scanned_file_extensions
WHERE file_store_profile.data_source_type.data_source = 'google/storage/bucket'
AND summaries.sensitivity_score.score ='SENSITIVITY_HIGH'
GROUP BY 1, 2, 4
;

詳情請參閱「檔案儲存資料設定檔」。

列出掃描到信用卡號的所有 bucket 路徑、叢集和副檔名

SELECT file_store_profile.file_store_path, summaries.file_cluster_type.cluster, STRING_AGG(scanned_file_extensions.file_extension) AS scanned_extensions
FROM `TABLE_OR_VIEW`
LEFT JOIN UNNEST(file_store_profile.file_cluster_summaries) as summaries
LEFT JOIN UNNEST(summaries.file_store_info_type_summaries) as info_types
LEFT JOIN UNNEST(summaries.file_extensions_scanned) as scanned_file_extensions
WHERE file_store_profile.data_source_type.data_source = 'google/storage/bucket'
AND info_types.info_type.name='CREDIT_CARD_NUMBER'
GROUP BY 1, 2
;

CREDIT_CARD_NUMBER內建 infoType,代表信用卡號碼。

詳情請參閱「檔案儲存資料設定檔」。

列出所有掃描過的值區路徑、叢集和副檔名,並指出偵測到卡號、個人姓名或美國社會安全號碼的位置

SELECT file_store_profile.file_store_path, summaries.file_cluster_type.cluster, STRING_AGG(scanned_file_extensions.file_extension) AS scanned_extensions
FROM `TABLE_OR_VIEW`
LEFT JOIN UNNEST(file_store_profile.file_cluster_summaries) as summaries
LEFT JOIN UNNEST(summaries.file_store_info_type_summaries) as info_types
LEFT JOIN UNNEST(summaries.file_extensions_scanned) as scanned_file_extensions
WHERE file_store_profile.data_source_type.data_source = 'google/storage/bucket'
AND info_types.info_type.name IN ('CREDIT_CARD_NUMBER', 'PERSON_NAME', 'US_SOCIAL_SECURITY_NUMBER')
GROUP BY 1, 2
;

這項查詢使用下列內建 infoType

  • CREDIT_CARD_NUMBER:代表信用卡號碼
  • PERSON_NAME:代表人員的全名
  • US_SOCIAL_SECURITY_NUMBER 代表美國社會安全號碼

詳情請參閱「檔案儲存資料設定檔」。

在數據分析中處理資料設定檔

如要在數據分析中以圖像化方式呈現資料設定檔,可以使用預先製作的報表,或自行建立報表

使用預先製作的報表

Sensitive Data Protection 提供預先製作的數據分析報表,可突顯資料剖析檔的豐富洞察資訊。機密資料保護資訊主頁是多頁報表,可讓您快速概略查看資料剖析檔,包括依風險、infoType 和位置分類的資料。探索其他分頁,查看依地理區域和安全狀態風險分類的資料檢視,或下鑽至特定指標。您可以直接使用這份預先建立的報表, 也可以視需要自訂報表。建議使用這個預先製作的報表版本。

如要查看預先製作的報表和資料,請在下列網址中輸入必要值。然後將產生的網址複製到瀏覽器。

https://lookerstudio.google.com/c/u/0/reporting/create?c.reportId=c9826374-e016-4c96-a495-7281328375c6&ds.connector=BIG_QUERY&ds.projectId=PROJECT_ID&ds.datasetId=DATASET_ID&ds.tableId=TABLE_OR_VIEW&ds.type=TABLE&ds.useFreshSchema=false

更改下列內容:

  • PROJECT_ID:包含輸出資料表的專案。
  • DATASET_ID:包含輸出資料表的資料集。
  • TABLE_OR_VIEW:下列任一項:

    • 輸出資料表的名稱,也就是包含匯出資料設定檔的資料表,例如 myproject.mydataset.table-profile
    • 輸出資料表的latest檢視畫面名稱,例如 myproject.mydataset.table-profile_latest_v1

    詳情請參閱本頁的「選擇輸出資料表和 latest 檢視畫面」。

數據分析 可能需要幾分鐘的時間,才能載入含有資料的報表。如果發生錯誤或報表無法載入,請參閱本頁的「排解預先建立報表的錯誤」。

在下列範例中,資訊主頁顯示全球多個國家/地區都有低敏感度和高敏感度資料。

預先建立的報表

預製報表的舊版

您仍可透過下列網址存取預先建立的報表第一版:

https://lookerstudio.google.com/c/u/0/reporting/create?c.reportId=907a2b73-ffe4-40b2-b9a1-c2aa0bbd69fd&ds.connector=BIG_QUERY&ds.projectId=PROJECT_ID&ds.datasetId=DATASET_ID&ds.tableId=TABLE_OR_VIEW&ds.type=TABLE&ds.useFreshSchema=false

建立報表

數據分析可讓您建立互動式報表。在本節中,您會根據匯出至 BigQuery 輸出資料表的資料剖析檔,在數據分析內建立簡易的資料表報表。

請確認您已備妥輸出資料表或latest檢視區塊的專案 ID、資料集 ID 和資料表 ID。您需要這些權限才能執行這項程序。

本範例說明如何建立報表,其中包含的表格會顯示資料設定檔中回報的每個 infoType,以及對應的頻率。

一般來說,透過 Google 數據分析存取 BigQuery 時,會產生 BigQuery 使用費。詳情請參閱「使用數據分析將 BigQuery 資料視覺化」。

如要建立報表,請按照下列步驟操作:

  1. 開啟數據分析並登入。
  2. 按一下「空白報表」
  3. 在「連結至資料」分頁中,按一下「BigQuery」資訊卡。
  4. 如果系統提示,請授權數據分析存取您的 BigQuery 專案。
  5. 連結至 BigQuery 資料:

    1. 在「Project」(專案) 部分,選取含有輸出資料表的專案。您可以在「近期專案」、「我的專案」和「共用專案」分頁中搜尋專案。
    2. 在「Dataset」(資料集) 部分,選取包含輸出資料表的資料集。
    3. 在「Table」(資料表) 中,選取輸出資料表或輸出資料表的 latest 檢視畫面

      詳情請參閱這個頁面,瞭解如何選擇輸出資料表和 latest 檢視畫面。

    4. 按一下「新增」。

    5. 在隨即顯示的對話方塊中,按一下「加入報表」

  6. 如要新增資料表,顯示每個回報的 infoType 及其對應的頻率 (記錄數),請按照下列步驟操作:

    1. 按一下「新增圖表」
    2. 選取表格樣式。
    3. 按一下要放置圖表的區域。

      圖表會以表格格式顯示。

    4. 視需要調整表格大小。

      只要選取表格,表格屬性就會顯示在「圖表」窗格中。

    5. 在「圖表」窗格的「設定」分頁中,移除所有預先選取的維度和指標。

    6. 如果是「維度」,請新增 column_profile.column_info_type.info_type.namefile_store_profile.file_cluster_summaries.file_store_info_type_summaries.info_type.name

      這些範例提供資料欄和檔案叢集層級的資料。你也可以嘗試其他尺寸。舉例來說,您可以使用表格層級和 bucket 層級的維度。

    7. 在「指標」部分,新增「記錄計數」

    產生的資料表如下所示:

    表格:顯示偵測到的 infoType 和對應的記錄數

進一步瞭解 Data Studio 中的表格

排解預先製作報表的錯誤

載入預先建立的報表時,如果看到任何錯誤、缺少控制項或缺少圖表,請確認預先建立的報表是否使用最新欄位:

  • 如果預先製作的報表已連結至輸出表格,請確認該表格已附加至有效的探索掃描設定。如要查看掃描設定的設定,請參閱「查看掃描設定」。

  • 如果預先建立的報表已連結至 latest 檢視畫面,請確認該檢視畫面是否仍存在於 BigQuery。如果有的話,請嘗試變更檢視畫面。或者,您也可以複製檢視區塊,然後將預先製作的報表連結至該副本。如要進一步瞭解 latest 檢視畫面,請參閱本頁的「latest 檢視畫面」

如果嘗試上述步驟後仍會收到錯誤訊息,請與 Cloud Customer Care 團隊聯絡。

後續步驟

瞭解如何採取行動修正資料剖析檔結果。