本主題將介紹可在 Sensitive Data Protection 中使用的去識別化技巧 (即轉換)。
去識別化技術類型
請根據您要去識別化的資料種類,以及將資料去識別化的目的,選擇您要使用的去識別化轉換。Sensitive Data Protection 支援的去識別化技術可分為以下幾種一般類別:
- 刪減:刪除所有或部分偵測到的機密值。
- 替換:將偵測到的機密值替換為指定代理值。
- 遮蔽:將機密值的多個字元替換為指定代理字元,例如井字號 (#) 或星號 (*)。
- 加密式代碼化:使用加密編譯金鑰加密原始機密資料值。Sensitive Data Protection 支援多種代碼化,包括可復原或「重新識別化」的轉換。
- 特徵分塊:將機密值替換為某個範圍的值,藉此將機密值「一般化」(例如,將特定年齡替換為某個年齡層,或是將溫度替換為對應至「熱」、「適中」和「冷」的範圍)。
- 日期轉移:將機密資料值轉移隨機時間長度。
- 時間擷取:擷取或保留日期和時間值的指定部分。
本主題的剩餘篇幅將介紹各種不同類型的去識別化轉換,並提供應用範例。
轉換方法
下表列出 Sensitive Data Protection 提供的轉換,可用於將機密資料去識別化:
轉換 | 物件 | 說明 | 可復原1 | 參照完整性2 | 輸入類型 |
---|---|---|---|---|---|
刪減 | RedactConfig |
透過移除的方式刪減值。 | 不限 | ||
替換 | ReplaceValueConfig |
將每個輸入值替換為指定的值。 | 不限 | ||
替換為字典 | ReplaceDictionaryConfig
|
將輸入值替換為從字詞清單中隨機選取的值。 | 不限 | ||
替換為 infoType | ReplaceWithInfoTypeConfig |
將輸入值替換為其 infoType 名稱。 | 不限 | ||
使用字元遮蔽 | CharacterMaskConfig |
將指定的字元數替換為指定的固定字元,以完全或局部遮蔽字串。 | 不限 | ||
將輸入值替換為加密編譯雜湊以進行匿名化 | CryptoHashConfig |
使用指定的資料加密金鑰,將輸入值替換為產生的 32 位元組十六進位字串。詳情請參閱匿名化概念說明文件一文。 | ✔ | 字串或整數 | |
替換為保留代碼的加密編譯格式以進行匿名化 | CryptoReplaceFfxFpeConfig |
將格式保留加密 (FPE) 與 FFX 作業模式搭配使用,將輸入值替換為相同長度的代碼或代理值。這會允許在具有長度格式驗證的系統中使用輸出。這對必須維持字串長度的舊版系統來說相當實用。重要事項:如果輸入內容長度不一或超過 32 個位元組,請使用 CryptoDeterministicConfig 。為確保安全性,建議採用以下限制,這些限制是由
美國國家標準與技術研究院所訂定:
|
✔ | ✔ | 字元數有限且長度一致的字串或整數。字母表必須由至少 2 個字元組成,且不超過 95 個字元。 |
替換為加密編譯代碼以進行匿名化 | CryptoDeterministicConfig |
使用合成初始向量模式的 AES (AES-SIV),將輸入值替換為相同長度的代碼或代理值。與保留格式的代碼化不同,這種轉換方法對於支援的字串字元集沒有限制、會為每個相同的輸入值產生相同的代碼,並且會使用代理值,在有原始加密金鑰的情況下進行重新識別化。 | ✔ | ✔ | 不限 |
根據固定大小範圍對值進行特徵分塊 | FixedSizeBucketingConfig |
將輸入值替換為值區或輸入值落入的範圍,以遮蔽輸入值。 | 不限 | ||
根據自訂大小範圍的值區值 | BucketingConfig |
根據可由使用者設定的範圍及替換值的值區輸入值。 | 不限 | ||
日期轉移 | DateShiftConfig |
按隨機天數轉移日期,並提供讓相同背景資訊保持一致的選項。 | ✔ 保留順序與時間長度 |
日期/時間 | |
擷取時間資料 | TimePartConfig |
擷取或保留一部分的 Date 、Timestamp 和 TimeOfDay 值。 |
日期/時間 |
註釋
content.reidentify
方法還原,以重新識別機密資料。
遮蓋
如果您只想將機密資料從輸入內容中移除,可以使用 Sensitive Data Protection 提供的刪減轉換 (DLP API 中的 RedactConfig
)。
舉例來說,假設您要對所有 EMAIL_ADDRESS
infoType 執行簡單的刪減作業,並傳送了以下字串至 Sensitive Data Protection:
My name is Alicia Abernathy, and my email address is aabernathy@example.com.
傳回的字串將顯示以下內容:
My name is Alicia Abernathy, and my email address is .
以下 JSON 範例和幾種程式語言的程式碼,說明如何形成 API 要求,以及 DLP API 傳回的內容。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
REST
如要進一步瞭解如何將 DLP API 與 JSON 搭配使用,請參閱 JSON 快速入門導覽課程。
HTTP 方法和網址
POST https://dlp.googleapis.com/v2/projects/PROJECT_ID/content:deidentify
將 PROJECT_ID
替換為專案 ID。
JSON 輸入
{
"item":{
"value":"My name is Alicia Abernathy, and my email address is aabernathy@example.com."
},
"deidentifyConfig":{
"infoTypeTransformations":{
"transformations":[
{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
],
"primitiveTransformation":{
"redactConfig":{
}
}
}
]
}
},
"inspectConfig":{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
]
}
}
JSON 輸出
{
"item":{
"value":"My name is Alicia Abernathy, and my email address is ."
},
"overview":{
"transformedBytes":"22",
"transformationSummaries":[
{
"infoType":{
"name":"EMAIL_ADDRESS"
},
"transformation":{
"redactConfig":{
}
},
"results":[
{
"count":"1",
"code":"SUCCESS"
}
],
"transformedBytes":"22"
}
]
}
}
替換
替換轉換會將每個輸入值替換為指定代碼值,或是其 infoType 的名稱。
基本替換
基本替換轉換 (DLP API 中的 ReplaceValueConfig
) 會將偵測到的機密資料值替換為您指定的值。舉例來說,假設您指示 Sensitive Data Protection 將所有偵測到的 EMAIL_ADDRESS
infoType 替換為「[fake@example.com]」,並傳送了以下字串至 Sensitive Data Protection:
My name is Alicia Abernathy, and my email address is aabernathy@example.com.
傳回的字串將顯示以下內容:
My name is Alicia Abernathy, and my email address is [fake@example.com].
以下 JSON 範例和幾種程式語言的程式碼,說明如何形成 API 要求,以及 DLP API 傳回的內容。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
REST
如要進一步瞭解如何將 DLP API 與 JSON 搭配使用,請參閱 JSON 快速入門導覽課程。
HTTP 方法和網址
POST https://dlp.googleapis.com/v2/projects/PROJECT_ID/content:deidentify
將 PROJECT_ID
替換為專案 ID。
JSON 輸入
{
"item":{
"value":"My name is Alicia Abernathy, and my email address is aabernathy@example.com."
},
"deidentifyConfig":{
"infoTypeTransformations":{
"transformations":[
{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
],
"primitiveTransformation":{
"replaceConfig":{
"newValue":{
"stringValue":"[email-address]"
}
}
}
}
]
}
},
"inspectConfig":{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
]
}
}
JSON 輸出
{
"item":{
"value":"My name is Alicia Abernathy, and my email address is [email-address]."
},
"overview":{
"transformedBytes":"22",
"transformationSummaries":[
{
"infoType":{
"name":"EMAIL_ADDRESS"
},
"transformation":{
"replaceConfig":{
"newValue":{
"stringValue":"[email-address]"
}
}
},
"results":[
{
"count":"1",
"code":"SUCCESS"
}
],
"transformedBytes":"22"
}
]
}
}
字典替換
字典替換 (ReplaceDictionaryConfig
):將偵測到的每筆機密資料,替換為 Sensitive Data Protection 從您提供的字詞清單中隨機選取的值。如果您想使用實際的替代值,這個轉換方法就很有用。
假設您希望 Sensitive Data Protection 偵測電子郵件地址,並將每個偵測到的值替換為三個代理電子郵件地址之一。
您將以下輸入字串連同替代電子郵件地址清單傳送至 Sensitive Data Protection:
輸入字串
My name is Alicia Abernathy, and my email address is aabernathy@example.com.
字詞清單
- izumi@example.com
- alex@example.com
- tal@example.com
傳回的字串可以是下列任一內容:
My name is Alicia Abernathy, and my email address is izumi@example.com.
My name is Alicia Abernathy, and my email address is alex@example.com.
My name is Alicia Abernathy, and my email address is tal@example.com.
以下 JSON 範例說明如何形成 API 要求,以及 DLP API 傳回的內容。
如要進一步瞭解如何透過 JSON 使用 DLP API,請參閱 JSON 快速入門導覽課程。
HTTP 方法和網址
POST https://dlp.googleapis.com/v2/projects/PROJECT_ID/content:deidentify
將 PROJECT_ID
替換為專案 ID。
JSON 輸入
{
"item": {
"value": "My name is Alicia Abernathy, and my email address is aabernathy@example.com."
},
"deidentifyConfig": {
"infoTypeTransformations": {
"transformations": [
{
"infoTypes": [
{
"name": "EMAIL_ADDRESS"
}
],
"primitiveTransformation": {
"replaceDictionaryConfig": {
"wordList": {
"words": [
"izumi@example.com",
"alex@example.com",
"tal@example.com"
]
}
}
}
}
]
}
},
"inspectConfig": {
"infoTypes": [
{
"name": "EMAIL_ADDRESS"
}
]
}
}
JSON 輸出
{
"item": {
"value": "My name is Alicia Abernathy, and my email address is izumi@example.com."
},
"overview": {
"transformedBytes": "22",
"transformationSummaries": [
{
"infoType": {
"name": "EMAIL_ADDRESS"
},
"transformation": {
"replaceDictionaryConfig": {
"wordList": {
"words": [
"izumi@example.com",
"alex@example.com",
"tal@example.com"
]
}
}
},
"results": [
{
"count": "1",
"code": "SUCCESS"
}
],
"transformedBytes": "22"
}
]
}
}
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
InfoType 替換
您也可以指定 infoType 替換 (DLP API 中的 ReplaceWithInfoTypeConfig
)。這種轉換與基本替換轉換的作用相同,但會將每個偵測到的機密資料值替換為該值的 infoType。
舉例來說,假設您指示機密資料保護偵測電子郵件地址和姓氏,並將每個偵測到的值替換為該值的 infoType。接著您傳送了以下字串至 Sensitive Data Protection:
My name is Alicia Abernathy, and my email address is aabernathy@example.com.
傳回的字串將顯示以下內容:
My name is Alicia LAST_NAME, and my email address is EMAIL_ADDRESS.
遮罩
您可以設定 Sensitive Data Protection,將每個字元替換為固定的單一遮蔽字元 (例如星號 (*) 或井字號 (#)),藉此完全或部分遮蔽偵測到的機密值 (DLP API 中的 CharacterMaskConfig
)。遮蔽可以從字串的開頭或結尾開始。這種轉換也適用於長整數等數字類型。
您可以指定 Sensitive Data Protection 遮蔽轉換的下列選項:
- 遮蔽字元 (DLP API 中的
maskingCharacter
引數):這個字元的用途是遮蔽機密值中每個字元。舉例來說,您可以指定星號 (*) 或貨幣符號 ($) 來遮蔽一系列數字,例如信用卡號碼的數字。 - 要遮蔽的字元數 (
numberToMask
):如果您未指定這個值,系統會遮蔽所有字元。 - 是否要反轉順序 (
reverseOrder
):是否要反向遮蔽字元。如果選擇反轉順序,系統會依相符值結尾至開頭的方向遮蔽值中的字元。 - 要忽略的字元 (
charactersToIgnore
):遮蔽值時要略過的一或多個字元。舉例來說,您可以指示敏感資料保護在遮蔽電話號碼時,將連字號保留在原有的位置。您也可以指定遮蔽時要忽略的一組常見字元 (CharsToIgnore
)。
假設您傳送了以下字串至 Sensitive Data Protection,並指示 Sensitive Data Protection 對電子郵件地址使用字元遮蔽轉換:
My name is Alicia Abernathy, and my email address is aabernathy@example.com.
在將遮蔽字元設為「#」、將要忽略的字元設為常見字元集,並保留其他預設設定的情況下,Sensitive Data Protection 會傳回以下內容:
My name is Alicia Abernathy, and my email address is ##########@#######.###.
以下 JSON 和程式碼範例示範遮蔽轉換的運作方式。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
REST
如要進一步瞭解如何將 DLP API 與 JSON 搭配使用,請參閱 JSON 快速入門導覽課程。
HTTP 方法和網址
POST https://dlp.googleapis.com/v2/projects/PROJECT_ID/content:deidentify
將 PROJECT_ID
替換為專案 ID。
JSON 輸入
{
"item":{
"value":"My name is Alicia Abernathy, and my email address is aabernathy@example.com."
},
"deidentifyConfig":{
"infoTypeTransformations":{
"transformations":[
{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
],
"primitiveTransformation":{
"characterMaskConfig":{
"maskingCharacter":"#",
"reverseOrder":false,
"charactersToIgnore":[
{
"charactersToSkip":".@"
}
]
}
}
}
]
}
},
"inspectConfig":{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
]
}
}
JSON 輸出
{
"item":{
"value":"My name is Alicia Abernathy, and my email address is ##########@#######.###."
},
"overview":{
"transformedBytes":"22",
"transformationSummaries":[
{
"infoType":{
"name":"EMAIL_ADDRESS"
},
"transformation":{
"characterMaskConfig":{
"maskingCharacter":"#",
"charactersToIgnore":[
{
"charactersToSkip":".@"
}
]
}
},
"results":[
{
"count":"1",
"code":"SUCCESS"
}
],
"transformedBytes":"22"
}
]
}
}
加密式權杖化轉換
加密式代碼化 (又稱為「匿名化」) 轉換是一種去識別化方法,可將原始機密資料值替換為加密值。Sensitive Data Protection 支援下列類型的代碼化,包括可復原和重新識別化的轉換:
- 密碼雜湊:針對輸入值,機密資料保護功能會使用以 SHA-256 為基礎的訊息驗證碼 (HMAC-SHA-256),然後將輸入值替換為以 Base64 編碼的雜湊值。
CryptoKey
與其他類型的加密轉換不同,這類轉換無法還原。 - 格式保留加密:搭配 FFX 作業模式使用格式保留加密 (FPE) 產生代碼,並將輸入值替換為這個代碼。這種轉換方法只能使用與輸入值相同的字母表產生代碼,且產生的代碼長度與輸入值相同。FPE 也支援重新識別化,前提是要有原始加密金鑰。
- 確定性加密:使用合成初始向量模式的 AES (AES-SIV) 產生代碼,並將輸入值替換為這個代碼。這種轉換方法對於支援的字串字元集沒有限制、會為每個相同的輸入值產生相同的代碼,並且會使用代理值,在有原始加密金鑰的情況下進行重新識別化。
加密編譯雜湊
加密編譯雜湊轉換 (DLP API 中的 CryptoHashConfig
) 會將輸入值 (Sensitive Data Protection 偵測到的機密資料片段) 替換為雜湊值。雜湊值是使用以 SHA-256 為基礎的訊息驗證碼 (HMAC-SHA-256) 對輸入值進行 CryptoKey
運算而產生。
在 Sensitive Data Protection 的輸出內容中,原始值會替換為以 Base64 編碼表示的雜湊輸入值。
使用加密編譯雜湊轉換前,請注意以下事項:
- 輸入值未經過加密,而是經過雜湊處理。
- 這項轉換無法復原,也就是說,即使有經過雜湊處理的轉換輸出值和原始加密編譯金鑰,也無法還原原始值。
- 目前,您只能對字串與整數值進行雜湊處理。
- 經過雜湊處理的轉換輸出長度一律相同,實際長度則視加密編譯金鑰大小而定。舉例來說,如果您對 10 位數的電話號碼使用加密編譯雜湊轉換,每組電話號碼都會替換為固定長度的 Base64 編碼雜湊值。
格式保留加密
格式保留加密 (FPE) 轉換方法 (DLP API 中的 CryptoReplaceFfxFpeConfig
) 會將輸入值 (Sensitive Data Protection 偵測到的機密資料片段) 透過 FFX 模式和 CryptoKey
使用格式保留加密進行加密,然後將原始值替換為加密值或代碼。
輸入值具有以下特性:
- 至少必須要有兩個字元的長度 (或空字串)。
- 必須採 ASCII 編碼。
- 包含由「字母表」組成的字元;字母表是指一組 2 至 95 個可在輸入值中使用的字元。詳情請參閱
CryptoReplaceFfxFpeConfig
中的字母表欄位。
產生的代碼具有以下特性:
- 是經過加密的輸入值。
- 加密後會保留輸入值的字元集 (「字母表」) 和長度。
- 是透過指定加密編譯金鑰使用 FFX 模式的格式保留加密計算而來。
- 可能會重複,這是因為每個相同輸入值都會去識別化為相同代碼。這樣有助於維持參照完整性,進而提升搜尋去識別化資料的效率。您可以使用結構定義「修正項」來變更這項行為,如結構定義一節所述。
如果來源內容中某個輸入值出現多次,每個值都會去識別化為相同代碼。FPE 會保留長度和字母表空間 (字元集),而字母表不得超過 95 個字元。您可以使用結構定義「修正項」來變更這項行為,這樣有助於提升安全性。為轉換加上結構定義修正項,即可讓機密資料保護服務將每個相同輸入值去識別化為不同的代碼。如果您不需要保留原始值的長度和字母表空間,請使用下方所述的確定性加密。
Sensitive Data Protection 會使用加密編譯金鑰計算替換代碼。您可透過以下三種方式的其中之一提供這個金鑰:
- 將金鑰以未加密的方式嵌入 API 請求中。我們不建議這麼做。
- 要求 Sensitive Data Protection 產生這個金鑰。
- 將金鑰以加密的方式嵌入 API 請求中。
如果選擇將金鑰嵌入 API 請求中,您需要建立金鑰,並使用 Cloud Key Management Service (Cloud KMS) 金鑰包裝 (加密) 金鑰。詳情請參閱建立包裝金鑰。根據預設,傳回的值為 Base64 編碼的字串。如要在 Sensitive Data Protection 中設定這個值,必須將它解碼為位元組字串。以下程式碼片段將示範如何以各種不同的程式語言執行這項操作。這些程式碼片段的後方會提供端對端範例。
Java
KmsWrappedCryptoKey.newBuilder()
.setWrappedKey(ByteString.copyFrom(BaseEncoding.base64().decode(wrappedKey)))
Python
# The wrapped key is base64-encoded, but the library expects a binary
# string, so decode it here.
import base64
wrapped_key = base64.b64decode(wrapped_key)
PHP
// Create the wrapped crypto key configuration object
$kmsWrappedCryptoKey = (new KmsWrappedCryptoKey())
->setWrappedKey(base64_decode($wrappedKey))
->setCryptoKeyName($keyName);
C#
WrappedKey = ByteString.FromBase64(wrappedKey)
如要進一步瞭解如何使用 Cloud KMS 加密及解密資料,請參閱加密及解密資料一文。
格式保留加密範例:去識別化
這個範例使用 CryptoReplaceFfxFpeConfig
轉換方法,將私密資料去識別化。詳情請參閱本頁面的「格式保留加密」一節。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
格式保留加密範例:使用替代類型去識別化
這個範例使用 CryptoReplaceFfxFpeConfig
轉換方法,將私密資料去識別化。詳情請參閱本頁面的「格式保留加密」一節。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
格式保留加密範例:將資料表中的機密資料去識別化
這個範例使用 CryptoReplaceFfxFpeConfig
轉換方法,將表格中的私密資料去識別化。詳情請參閱本頁的「格式保留加密」一節。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
格式保留加密範例:重新識別
以下是幾種不同程式語言的範例程式碼,示範如何使用 Sensitive Data Protection,透過 CryptoReplaceFfxFpeConfig
轉換方法重新識別去識別化的機密資料。詳情請參閱本頁的「格式保留加密」一節。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
格式保留加密範例:重新識別文字
以下是幾種不同程式語言的範例程式碼,示範如何使用 Sensitive Data Protection,重新識別透過 CryptoReplaceFfxFpeConfig
轉換方法去識別化的機密文字。詳情請參閱本頁的「格式保留加密」一節。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
格式保留加密範例:使用替代類型重新識別
以下是幾種不同程式語言的範例程式碼,示範如何使用 Sensitive Data Protection,透過 CryptoReplaceFfxFpeConfig
轉換方法,重新識別去識別化的機密資料。詳情請參閱本頁的「格式保留加密」一節。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
格式保留加密範例:重新識別資料表中的機密資料
以下是幾種不同程式語言的範例程式碼,示範如何使用 Sensitive Data Protection,重新識別透過 CryptoReplaceFfxFpeConfig
轉換方法去識別化的表格中的機密資料。詳情請參閱本頁的「格式保留加密」一節。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
確定性加密
DLP API 中的確定性加密轉換方法 CryptoDeterministicConfig
會將輸入值 (Sensitive Data Protection 偵測到的機密資料片段) 透過 AES-SIV 以 CryptoKey
加密,然後將原始值替換為以 Base64 編碼表示的加密值。
使用確定性加密轉換可提升搜尋加密資料的效率。
輸入值具有以下特性:
- 長度至少要有 1 個字元。
- 沒有字元集限制。
產生的代碼具有以下特性:
- 以 Base64 編碼表示的加密值。
- 加密後不會保留輸入值的字元集 (「字母表」) 或長度。
- 是透過
CryptoKey
使用 SIV 模式的 AES 加密 (AES-SIV) 計算而來。 - 可能會重複,這是因為每個相同輸入值都會去識別化為相同代碼。這可提升搜尋加密資料的效率。您可以使用結構定義「修正項」來變更這項行為,如結構定義一節所述。
- 產生時會加上格式為
[SURROGATE_TYPE]([LENGTH]):
的前置字串,其中[SURROGATE_TYPE]
表示用來描述輸入值的代理值 infoType,[LENGTH]
則表示其字元長度。代理值可讓系統透過用於去識別化的原始加密金鑰,將代碼重新識別化。
以下是使用確定性加密進行去識別化的 JSON 設定示例。請注意,由於我們要將電話號碼去識別化,因此選擇使用「PHONE_SURROGATE」做為描述性代理值類型。[CRYPTO_KEY]
代表從 Cloud KMS 取得的未包裝加密編譯金鑰。
{
"deidentifyConfig":{
"infoTypeTransformations":{
"transformations":[
{
"infoTypes":[
{
"name":"PHONE_NUMBER"
}
],
"primitiveTransformation":{
"cryptoDeterministicConfig":{
"cryptoKey":{
"unwrapped":{
"key":"[CRYPTO_KEY]"
}
},
"surrogateInfoType":{
"name":"PHONE_SURROGATE"
}
}
}
}
]
}
},
"inspectConfig":{
"infoTypes":[
{
"name":"PHONE_NUMBER"
}
]
},
"item":{
"value":"My phone number is 206-555-0574, call me"
}
}
使用這個轉換將「My phone number is 206-555-0574」(我的電話號碼是 206-555-0574) 這個字串去識別化後,會產生如下的去識別化字串:
My phone number is PHONE_SURROGATE(36):ATZBu5OCCSwo+e94xSYnKYljk1OQpkW7qhzx, call me
如要將這個字串重新識別化,您可以使用如下的 JSON 要求,其中 [CRYPTO_KEY] 是用來將字串內容去識別化的加密編譯金鑰。
{
"reidentifyConfig":{
"infoTypeTransformations":{
"transformations":[
{
"infoTypes":[
{
"name":"PHONE_SURROGATE"
}
],
"primitiveTransformation":{
"cryptoDeterministicConfig":{
"cryptoKey":{
"unwrapped":{
"key":"[CRYPTO_KEY]"
}
},
"surrogateInfoType":{
"name":"PHONE_SURROGATE"
}
}
}
}
]
}
},
"inspectConfig":{
"customInfoTypes":[
{
"infoType":{
"name":"PHONE_SURROGATE"
},
"surrogateType":{
}
}
]
},
"item":{
"value":"My phone number is [PHONE_SURROGATE](36):ATZBu5OCCSwo+e94xSYnKYljk1OQpkW7qhzx, call me"
}
}
將這個字串重新識別化後會產生原始字串:
My phone number is 206-555-0574, call me
如要改用包裝 (加密) CryptoKey
,以提升安全性,請參閱「快速入門:將機密文字去識別化及重新識別」一文中的範例。準備好使用用戶端程式庫去識別化內容時,請記得解碼包裝的金鑰 (預設為 base64 編碼字串),如本頁「格式保留加密」一節所示。
確定性加密範例:去識別化
這個範例使用 CryptoDeterministicConfig
轉換方法,將私密資料去識別化。詳情請參閱本頁的「確定性加密」。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
確定性加密範例:重新識別
這個範例示範如何重新識別透過 CryptoDeterministicConfig
轉換方法去識別的機密資料。詳情請參閱本頁的「決定性加密」。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
資料分組
特徵分塊轉換可將數值型資料「特徵分塊」為範圍,藉此將其去識別化。產生的數字範圍是以連字號連接的字串,其中包含下限、連字號和上限。
固定大小特徵分塊
Sensitive Data Protection 可根據固定大小範圍將數值輸入資料特徵分塊 (DLP API 中的 FixedSizeBucketingConfig
)。您必須指定下列項目來進行固定大小特徵分塊設定:
- 所有特徵分塊的下限值。系統會將小於這個下限的任何值歸為一個特徵分塊。
- 所有特徵分塊的上限值。系統會將大於這個上限的任何值歸為一個特徵分塊。
- 最小與最大特徵分塊以外的每個特徵分塊大小。
舉例來說,如果將下限設為 10、將上限設為 89,並將特徵分塊大小設為 10,則會使用下列特徵分塊:小於 10、10 到 20、20 到 30、30 到 40、40 到 50、50 到 60、60 到 70、70 到 80、80 到 89、大於 89。
如要進一步瞭解特徵分塊的概念,請參閱一般化與特徵分塊一文。
可自訂的特徵分塊
可自訂的特徵分塊 (DLP API 中的 BucketingConfig
) 比固定大小特徵分塊更有彈性。您必須為要建立的每個特徵分塊指定最大與最小值,而不是指定上限與下限以及用來建立相同大小特徵分塊的間隔值。每個最大與最小值組合必須是相同的類型。
如要設定可自訂的特徵分塊,您必須指定個別特徵分塊。每個特徵分塊都具有下列屬性:
- 特徵分塊範圍的下限。省略這個值可建立沒有下限的特徵分塊。
- 特徵分塊範圍的上限。省略這個值可建立沒有上限的特徵分塊。
- 這個特徵分塊範圍的替換值。偵測到的值當中,介於下限與上限之間的值全都會替換為這個值。如未提供替換值,系統會改為產生以連字號連接的最小值到最大值範圍。
以下方的特徵分塊轉換 JSON 設定為例:
"bucketingConfig":{
"buckets":[
{
"min":{
"integerValue":"1"
},
"max":{
"integerValue":"30"
},
"replacementValue":{
"stringValue":"LOW"
}
},
{
"min":{
"integerValue":"31"
},
"max":{
"integerValue":"65"
},
"replacementValue":{
"stringValue":"MEDIUM"
}
},
{
"min":{
"integerValue":"66"
},
"max":{
"integerValue":"100"
},
"replacementValue":{
"stringValue":"HIGH"
}
}
]
}
這會定義以下行為:
- 系統會將介於 1 到 30 之間的整數值替換為
LOW
以遮蔽這些值。 - 系統會將介於 31 到 65 之間的整數值替換為
MEDIUM
以遮蔽這些值。 - 系統會將介於 66 到 100 之間的整數值替換為
HIGH
以遮蔽這些值。
如要進一步瞭解特徵分塊的概念,請參閱一般化與特徵分塊一文。
日期偏移
如果您對日期輸入值使用日期轉移轉換 (DLP API 中的 DateShiftConfig
),Sensitive Data Protection 會將日期轉移隨機天數。
日期轉移的做法是隨機移動一組日期,但仍保留日期的順序和日期之間的時間長度。日期的轉移通常是依個人或單一實體來進行。也就是說,您可以使用相同的轉移差異為特定個人轉移所有日期,但要為其他每一個人分別使用不同的轉移差異。
如要進一步瞭解日期轉移,請參閱日期轉移一文。
以下是幾種不同程式語言的範例程式碼,示範如何透過日期轉移,使用 Cloud DLP API 將日期去識別化。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
時間擷取
執行時間擷取 (DLP API 中的 TimePartConfig
) 物件會保留一部分符合特定日期、時間或時間戳記的值。您必須向 Sensitive Data Protection 指定要擷取的時間值種類,包括年、月、日等 (在 TimePart
物件中列舉)。
舉例來說,假設您設定了 timePartConfig
轉換,並指定擷取 YEAR
這個時間部分。將下方第一欄中的資料傳送至 Sensitive Data Protection 後,會在第二欄產生轉換值:
原始值 | 轉換值 |
---|---|
9/21/1976 |
1976 |
6/7/1945 |
1945 |
1/20/2009 |
2009 |
7/4/1776 |
1776 |
8/1/1984 |
1984 |
4/21/1982 |
1982 |
C#
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Go
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
PHP
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Sensitive Data Protection 的用戶端程式庫,請參閱這篇文章。
如要驗證 Sensitive Data Protection,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。