本頁面說明轉換詳細資料表的內容,並提供您可在該資料表上執行的查詢範例。
將儲存空間中的資料去識別化時,您可以設定檢查工作,提供所做的每項轉換詳細資料。Sensitive Data Protection 會將這些詳細資料寫入您指定的 BigQuery 資料表。在本文件中,該表格稱為「轉換詳細資料表」。
轉換詳細資料表內容
本節列出並說明轉換詳細資料表中的內容。
資源名稱
完成轉換的檢查工作名稱。
container_name
內含轉換後資料的檔案。
轉換
轉換的詳細資料。這個欄位包含下列屬性:
- 類型
Sensitive Data Protection 對發現項目套用的轉換方法。可能的值如下:
- 說明
轉換的字串表示法。這個值是針對所有類型的轉換,在
PrimitiveTransformation
通訊協定緩衝區訊息上進行toString()
呼叫的輸出內容,但RecordSuppression
除外。如果轉換方法是記錄抑制,這個欄位會留空。- 條件
轉換的
RecordCondition
字串表示法。 只有在系統使用記錄條件判斷敏感資料保護是否必須套用轉換時,才會設定這個欄位。範例:(age_field <= 18)
(zip_field exists)
(zip_field == 01234) && (age_field <= 18) && (city_field exists)
- infoType
發現項目中偵測到的資訊類型詳細資料。這個欄位包含下列屬性:
status_details
轉換狀態的詳細資料。如果轉換失敗,這個欄位會指出失敗原因。這個欄位包含下列屬性:
- result_status_type
代表轉換嘗試狀態的代碼。可能的值如下:
STATE_TYPE_UNSPECIFIED
:Sensitive Data Protection 無法判斷轉換狀態。INVALID_TRANSFORM
:Sensitive Data Protection 無法轉換結果。METADATA_UNRETRIEVABLE
:檔案的自訂中繼資料中含有發現項目。寫入轉換後的檔案時,資料保護功能無法擷取中繼資料。SUCCESS
:轉換成功。
- 詳細資料
其他狀態詳細資料。這個欄位遵循
Status
中定義的規格。這個欄位包含下列屬性:- 程式碼
- 錯誤代碼。
- 訊息
- 錯誤訊息。
- 詳細資料
- 包含錯誤詳細資料的訊息清單。
transformed_bytes
Sensitive Data Protection 轉換的位元組數。如果轉換失敗或沒有可轉換的內容,值會是 0
。
transformation_location
轉換位置的詳細資料。
以下是轉換位置的 JSON 範例,其中 Sensitive Data Protection 執行了 infoType 轉換:
{
"finding_id": "2022-05-23T23:51:29.775337Z831678185946560283",
"record_transformation": null,
"container_type": "TRANSFORM_BODY"
}
以下是轉換位置的 JSON 範例,其中 Sensitive Data Protection 執行了記錄轉換:
{
"finding_id": null,
"record_transformation": {
"field_id": {
"name": " \"Name\""
},
"container_timestamp": {
"timestamp": null,
"seconds": "1654796423",
"nanos": "763000000"
},
"container_version": "1654796423733485"
},
"container_type": "TRANSFORM_TABLE"
}
}
如範例所示,Sensitive Data Protection 會根據執行的轉換類型,填入 finding_id
或 record_transformation
。這兩個欄位互斥。
- finding_id
- 如果 Sensitive Data Protection 執行了資訊類型轉換,系統就會設定這個欄位。每個發現項目 ID 都會對應至發現項目輸出表格中的項目。發現項目輸出表格包含 Sensitive Data Protection 在檢查期間偵測到的所有發現項目。只有在您將檢查工作設定為將結果儲存至 BigQuery 時,才會建立這個表格。
- record_transformation
如果 Sensitive Data Protection 對表格資料執行記錄轉換,系統就會設定這個欄位。這個欄位包含下列屬性:
- field_id
- 包含發現項目的資料表欄。
- container_timestamp
- 檔案的修改時間戳記。
- container_version 含有發現項目的檔案
- 產生編號。
- container_type
包含發現項目的資料功能相關資訊。 可能的值如下:
TRANSFORM_UNKNOWN_CONTAINER
:Sensitive Data Protection 無法判斷包含結果的資料類型。TRANSFORM_BODY
:Sensitive Data Protection 在檔案內文中偵測到發現項目。TRANSFORM_METADATA
:Sensitive Data Protection 在檔案的中繼資料中偵測到發現項目。TRANSFORM_TABLE
:Sensitive Data Protection 在資料表中偵測到發現項目。
查詢範例
以下是您可在轉換詳細資料表上執行的查詢範例。如要瞭解如何查詢 BigQuery 資料表,請參閱執行互動式查詢。
選取所有失敗的轉換
SELECT *
FROM `PROJECT_ID.DATASET_ID.TABLE_ID`
WHERE status_details.result_status_type != "SUCCESS";
更改下列內容:
PROJECT_ID
:包含轉換詳細資料表的專案 ID。DATASET_ID
:包含轉換詳細資料表的 BigQuery 資料集 ID。TABLE_ID
:轉換詳細資料表的 ID。
計算轉換失敗的檔案數量
SELECT COUNT(DISTINCT(container_name))
FROM `PROJECT_ID.DATASET_ID.TABLE_ID`
WHERE status_details.result_status_type != "SUCCESS";
選取所有使用字元遮蓋的轉換
SELECT resource_name, container_name, info_type.name
FROM `PROJECT_ID.DATASET_ID.TABLE_ID`,
UNNEST(transformation) AS tr
WHERE tr.type LIKE "CHARACTER_MASK";
後續步驟
- 進一步瞭解儲存空間中的資料去識別化程序。
- 瞭解如何使用 Google Cloud 控制台將儲存空間中的資料去識別化。
- 瞭解如何使用 DLP API 將儲存在 Cloud Storage 中的機密資料去識別化。
- 逐步演練「在 Cloud Storage 中建立去識別化的資料副本」程式碼研究室。
- 進一步瞭解去識別化轉換。