轉換詳細資料參考資料

本頁面說明轉換詳細資料表的內容,並提供您可在該資料表上執行的查詢範例。

將儲存空間中的資料去識別化時,您可以設定檢查工作,提供所做的每項轉換詳細資料。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

發現項目中偵測到的資訊類型詳細資料。這個欄位包含下列屬性:

名稱
內建自訂 infoType 的名稱。
version
版本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_idrecord_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";

後續步驟