Sensitive Data Protection 的內建 infoType 偵測工具能有效找出常見的機密資料類型。自訂 infoType 偵測工具可讓您充分自訂自己的機密資料偵測工具,而「檢查規則」則可藉由修改指定 infoType 偵測工具的偵測機制,協助微調 Sensitive Data Protection 傳回的掃描結果。
如果希望內建 infoType 偵測工具傳回的結果中排除或納入更多值,您可以從頭建立新的自訂 infoType,並定義機密資料保護功能應尋找的所有條件。或者,您可以修正私密資料防護內建或自訂偵測工具根據指定條件而傳回的發現項目,方法是新增有助於減少雜訊、提高查準率和查全率,或可調整掃描發現項目的可能性確定性等的檢查規則。
本主題將討論如何使用兩種檢查規則,以根據您指定的自訂條件,排除某些發現項目或額外增加發現項目。本主題也會提供幾種情況,讓您衡量是否可能要更改現有的 infoType 偵測工具。
檢查規則有以下兩種類型:
排除規則
排除規則適用於下列情況:
- 希望在結果中排除 infoType 偵測工具重疊所造成的重複掃描相符項目。例如,掃描電子郵件地址和電話號碼,但電子郵件地址含有電話號碼,像是「206-555-0764@example.org」,所以會收到兩個相符項目。
- 掃描結果發生雜訊。例如,您看到某個掃描作業針對合法的電子郵件地址,毫無節制頻繁地傳回同一個虛擬電子郵件地址 (如「example@example.com」) 或網域 (如「example.com」)。
- 手上有希望從結果中排除的字詞、詞組或字元組合清單。
- 您想從結果中排除整欄資料。
- 您想排除與規則運算式相符的字串附近的發現項目。
排除規則無法套用至物件 InfoType。
Exclusion Rules API 總覽
Sensitive Data Protection 會在 ExclusionRule
物件中定義排除規則。您可以在 ExclusionRule
中指定下列其中一項:
Dictionary
物件,其中包含要從結果中排除的字串清單。Regex
物件,定義規則運算式模式。系統會從結果中排除符合模式的字串。ExcludeInfoTypes
物件:包含 infoType 偵測工具陣列。如果這裡所列的任一 infoType 偵測工具發現相符項目,該發現項目將會從結果中排除。ExcludeByHotword
物件,其中包含下列項目:- 定義熱字的規則運算式。
- proximity 值,用於定義啟動字詞與搜尋結果的距離。
如果發現項目位於設定的鄰近範圍內,該項目就會從結果中排除。如果是資料表,這類排除規則可讓您從結果中排除整欄資料。
排除規則的情境範例
下列每個 JSON 程式碼片段都說明如何針對特定情境設定 Sensitive Data Protection。
在 EMAIL_ADDRESS 偵測工具掃描中省略特定電子郵件地址
下列 JSON 程式碼片段和幾種程式語言的程式碼,說明如何使用 InspectConfig
指示機密資料保護服務,在掃描作業中使用 infoType 偵測工具 EMAIL_ADDRESS
時,避免比對「example@example.com」:
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
如要進一步瞭解如何透過 JSON 使用 DLP API,請參閱 JSON 快速入門導覽課程。
...
"inspectConfig":{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
],
"ruleSet":[
{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
],
"rules":[
{
"exclusionRule":{
"dictionary":{
"wordList":{
"words":[
"example@example.com"
]
}
},
"matchingType": "MATCHING_TYPE_FULL_MATCH"
}
}
]
}
]
}
...
在 EMAIL_ADDRESS 偵測工具掃描中省略結尾是特定網域的電子郵件地址
下列 JSON 程式碼片段和幾種程式語言的程式碼,說明如何使用 InspectConfig
指示機密資料保護服務,在掃描作業中使用 infoType 偵測工具 EMAIL_ADDRESS
時,避免比對結尾是「@example.com」的任何電子郵件地址:
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
如要進一步瞭解如何透過 JSON 使用 DLP API,請參閱 JSON 快速入門導覽課程。
...
"inspectConfig":{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
],
"ruleSet":[
{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
],
"rules":[
{
"exclusionRule":{
"regex":{
"pattern":".+@example.com"
},
"matchingType": "MATCHING_TYPE_FULL_MATCH"
}
}
]
}
]
}
...
省略包含子字串「TEST」的掃描相符項目
下列 JSON 程式碼片段和幾種程式語言的程式碼,說明如何使用 InspectConfig
指示機密資料保護服務,排除指定 infoType 清單中包含「TEST」權杖的任何發現項目。
請注意,這會將「TEST」視為權杖而非子字串,因此「TEST@email.com」這類內容會相符,但「TESTER@email.com」則不會。如要比對子字串,請在排除規則中使用規則運算式,而非字典。
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
如要進一步瞭解如何透過 JSON 使用 DLP API,請參閱 JSON 快速入門導覽課程。
...
"inspectConfig":{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
},
{
"name":"DOMAIN_NAME"
},
{
"name":"PHONE_NUMBER"
},
{
"name":"PERSON_NAME"
}
],
"ruleSet":[
{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
},
{
"name":"DOMAIN_NAME"
},
{
"name":"PHONE_NUMBER"
},
{
"name":"PERSON_NAME"
}
],
"rules":[
{
"exclusionRule":{
"dictionary":{
"wordList":{
"words":[
"TEST"
]
}
},
"matchingType": "MATCHING_TYPE_PARTIAL_MATCH"
}
}
]
}
]
}
...
在自訂 infoType 偵測工具掃描中省略包含子字串「Jimmy」的掃描相符項目
下列 JSON 程式碼片段和幾種程式語言的程式碼,說明如何使用 InspectConfig
指示機密資料保護服務,在使用指定自訂規則運算式偵測工具的掃描作業中,避免比對名字「Jimmy」:
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
如要進一步瞭解如何透過 JSON 使用 DLP API,請參閱 JSON 快速入門導覽課程。
...
"inspectConfig":{
"customInfoTypes":[
{
"infoType":{
"name":"CUSTOM_NAME_DETECTOR"
},
"regex":{
"pattern":"[A-Z][a-z]{1,15}, [A-Z][a-z]{1,15}"
}
}
],
"ruleSet":[
{
"infoTypes":[
{
"name":"CUSTOM_NAME_DETECTOR"
}
],
"rules":[
{
"exclusionRule":{
"dictionary":{
"wordList":{
"words":[
"Jimmy"
]
}
},
"matchingType": "MATCHING_TYPE_PARTIAL_MATCH"
}
}
]
}
]
}
...
在與自訂偵測工具重疊的 PERSON_NAME 偵測工具掃描中省略掃描相符項目
在這個情境中,如果使用程式碼片段第一部分中定義的自訂規則運算式偵測工具進行掃描時傳回的相符項目,與使用 PERSON_NAME
內建偵測工具從 Sensitive Data Protection 掃描作業傳回的相符項目相同,則使用者不希望有這類相符項目。
下列 JSON 程式碼片段和幾種程式語言的程式碼,同時在 InspectConfig
中指定自訂規則運算式偵測工具和排除規則。自訂規則運算式偵測工具會指定結果中所要排除的名稱。排除規則指定針對 PERSON_NAME
掃描所傳回的任何結果與自訂規則運算式偵測工具相同時,會省略這些結果。請注意,這裡的 VIP_DETECTOR
標示為 EXCLUSION_TYPE_EXCLUDE
,所以本身不會產生結果,只會影響 PERSON_NAME
偵測工具所產生的結果。
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
如要進一步瞭解如何透過 JSON 使用 DLP API,請參閱 JSON 快速入門導覽課程。
...
"inspectConfig":{
"infoTypes":[
{
"name":"PERSON_NAME"
}
],
"customInfoTypes":[
{
"infoType":{
"name":"VIP_DETECTOR"
},
"regex":{
"pattern":"Dana Williams|Quinn Garcia"
},
"exclusionType":"EXCLUSION_TYPE_EXCLUDE"
}
],
"ruleSet":[
{
"infoTypes":[
{
"name":"PERSON_NAME"
}
],
"rules":[
{
"exclusionRule":{
"excludeInfoTypes":{
"infoTypes":[
{
"name":"VIP_DETECTOR"
}
]
},
"matchingType": "MATCHING_TYPE_FULL_MATCH"
}
}
]
}
]
}
...
如果與 EMAIL_ADDRESS 偵測工具的相符項目相同時,則省略 PERSON_NAME 偵測工具的相符項目
下列 JSON 程式碼片段和幾種程式語言的程式碼,說明如何使用 InspectConfig
指示機密資料保護服務,在 PERSON_NAME
偵測工具的相符項目和 EMAIL_ADDRESS
偵測工具的相符項目重疊時,只要傳回一個相符項目。這樣做可以避免 PERSON_NAME
和 EMAIL_ADDRESS
這兩個偵測工具的相符項目是同一個電子郵件地址,例如「james@example.com」。
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
如要進一步瞭解如何透過 JSON 使用 DLP API,請參閱 JSON 快速入門導覽課程。
...
"inspectConfig":{
"infoTypes":[
{
"name":"PERSON_NAME"
},
{
"name":"EMAIL_ADDRESS"
}
],
"ruleSet":[
{
"infoTypes":[
{
"name":"PERSON_NAME"
}
],
"rules":[
{
"exclusionRule":{
"excludeInfoTypes":{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
]
},
"matchingType": "MATCHING_TYPE_PARTIAL_MATCH"
}
}
]
}
]
}
...
在 DOMAIN_NAME 偵測工具掃描中省略網域名稱是電子郵件地址一部分的相符項目
下列 JSON 程式碼片段和幾種程式語言的程式碼說明如何使用 InspectConfig
指示機密資料保護服務,只有在相符項目不會與 EMAIL_ADDRESS
偵測工具掃描出的相符項目重疊時,才應該傳回 DOMAIN_NAME
偵測工具掃描的相符項目。在這個情況下,主要掃描會是 DOMAIN_NAME
偵測工具掃描。使用者希望網域名稱在電子郵件地址中使用的情況下,於發現項目中不要傳回網域名稱相符項目:
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
如要進一步瞭解如何透過 JSON 使用 DLP API,請參閱 JSON 快速入門導覽課程。
...
"inspectConfig":{
"infoTypes":[
{
"name":"DOMAIN_NAME"
},
{
"name":"EMAIL_ADDRESS"
}
],
"customInfoTypes":[
{
"infoType":{
"name":"EMAIL_ADDRESS"
},
"exclusionType":"EXCLUSION_TYPE_EXCLUDE"
}
],
"ruleSet":[
{
"infoTypes":[
{
"name":"DOMAIN_NAME"
}
],
"rules":[
{
"exclusionRule":{
"excludeInfoTypes":{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
]
},
"matchingType": "MATCHING_TYPE_PARTIAL_MATCH"
}
}
]
}
]
}
...
如果相符項目位於字串附近,請省略
以下範例說明如何排除 US_SOCIAL_SECURITY_NUMBER
infoType 偵測工具的比對結果,前提是「SKU」一詞位於比對結果前 10 個字元或後 10 個字元內。
由於有排除規則,這個範例不會將 222-22-2222
分類為可能的美國身分證字號。
{
"item": {
"value": "The customer sent the product SKU 222-22-2222"
},
"inspectConfig": {
"infoTypes": [
{
"name": "US_SOCIAL_SECURITY_NUMBER"
}
],
"ruleSet": [
{
"infoTypes": [
{
"name": "US_SOCIAL_SECURITY_NUMBER"
}
],
"rules": [
{
"exclusionRule": {
"excludeByHotword": {
"hotwordRegex": {
"pattern": "(SKU)"
},
"proximity": {
"windowBefore": 10,
"windowAfter": 10
}
},
"matchingType": "MATCHING_TYPE_FULL_MATCH"
}
}
]
}
],
"includeQuote": true
}
}
略過整欄資料中的發現項目
以下範例說明如何排除表格資料整欄的結果,前提是該欄的名稱符合規則運算式。在這裡,如果發現項目位於「Fake Social Security Number」(偽造的社會安全號碼) 欄中,系統就會從結果中排除與 US_SOCIAL_SECURITY_NUMBER
infoType 偵測工具相符的任何發現項目。
這個範例只會傳回 222-22-2222
,因為「Fake Social Security Number」(假的社會安全號碼) 欄中含有 111-11-1111
。
{
"item": {
"table": {
"headers": [
{
"name": "Fake Social Security Number"
},
{
"name": "Real Social Security Number"
}
],
"rows": [
{
"values": [
{
"stringValue": "111-11-1111"
},
{
"stringValue": "222-22-2222"
}
]
}
]
}
},
"inspectConfig": {
"infoTypes": [
{
"name": "US_SOCIAL_SECURITY_NUMBER"
}
],
"includeQuote": true,
"ruleSet": [
{
"infoTypes": [
{
"name": "US_SOCIAL_SECURITY_NUMBER"
}
],
"rules": [
{
"exclusionRule": {
"excludeByHotword": {
"hotwordRegex": {
"pattern": "(Fake Social Security Number)"
},
"proximity": {
"windowBefore": 1
}
},
"matchingType": "MATCHING_TYPE_FULL_MATCH"
}
}
]
}
],
"minLikelihood": "POSSIBLE"
}
}
啟動字詞規則
啟動字詞規則適合用於下列情況:
- 您希望根據相符項目與啟動字詞的鄰近程度,來變更指派給掃描相符項目的可能性值。例如,您想根據姓名與「患者」一詞的鄰近程度,對患者姓名的相符項目設定高一點的可能性值。
- 檢查結構化表格資料時,您希望根據資料欄標題名稱,變更指派給相符項目的可能性值。舉例來說,您想在標題為
ACCOUNT_ID
的資料欄中找到US_SOCIAL_SECURITY_NUMBER
時,對US_SOCIAL_SECURITY_NUMBER
設定高一點的可能性值。
Hotword Rules API 總覽
在 Sensitive Data Protection 的 InspectionRule
物件中,您可以指定 HotwordRule
物件,藉此將發現項目的可能性調整在與啟動字詞有一定的鄰近程度內。
InspectionRule
物件會在 InspectionRuleSet
物件中分組成「規則集」,並列出會套用規則集的 infoType 偵測工具。一個規則集中的多個規則會按照指定順序套用。
啟動字詞規則的情境範例
下列程式碼片段說明如何針對特定情境設定 Sensitive Data Protection。
如果附近有啟動字詞「患者」,則增加 PERSON_NAME 相符項目的可能性
下列 JSON 程式碼片段和幾種程式語言的程式碼,說明如何使用 InspectConfig
屬性掃描醫療資料庫,找出患者姓名。您可以使用 Sensitive Data Protection 的內建 PERSON_NAME
infoType 偵測工具,不過這會造成 Sensitive Data Protection 比對所有人的姓名,而不是只比對患者的姓名。為修正這種情況,您可以加入啟動字詞規則,在潛在相符項目第一個字元的特定字元鄰近範圍內尋找「患者」一詞。然後,您可以為符合這個模式的發現項目,指派「非常可能」的可能性,因為這對應到您的特殊條件。將最低值 Likelihood
設為 VERY_LIKELY
,可確保在發現項目中只會傳回與這項設定相符的項目。InspectConfig
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
如要進一步瞭解如何透過 JSON 使用 DLP API,請參閱 JSON 快速入門導覽課程。
...
"inspectConfig":{
"infoTypes":[
{
"name":"PERSON_NAME"
}
],
"ruleSet":[
{
"infoTypes":[
{
"name":"PERSON_NAME"
}
],
"rules":[
{
"hotwordRule":{
"hotwordRegex":{
"pattern":"patient"
},
"proximity":{
"windowBefore":50
},
"likelihoodAdjustment":{
"fixedLikelihood":"VERY_LIKELY"
}
}
}
]
}
],
"minLikelihood":"VERY_LIKELY"
}
...
如需進一步瞭解啟動字詞,請參閱自訂相符可能性一文。
多個檢查規則情境
下列 InspectConfig
JSON 程式碼片段和幾種程式語言的程式碼,說明如何同時套用排除和啟動字詞規則。這個程式碼片段的規則集包括啟動字詞規則和字典,以及規則運算式排除規則。請注意,在陣列的 rules
元素中指定了四個規則。
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
如要進一步瞭解如何透過 JSON 使用 DLP API,請參閱 JSON 快速入門導覽課程。
...
"inspectConfig":{
"infoTypes":[
{
"name":"PERSON_NAME"
}
],
"ruleSet":[
{
"infoTypes":[
{
"name":"PERSON_NAME"
}
],
"rules":[
{
"hotwordRule":{
"hotwordRegex":{
"pattern":"patient"
},
"proximity":{
"windowBefore":10
},
"likelihoodAdjustment":{
"fixedLikelihood":"VERY_LIKELY"
}
}
},
{
"hotwordRule":{
"hotwordRegex":{
"pattern":"doctor"
},
"proximity":{
"windowBefore":10
},
"likelihoodAdjustment":{
"fixedLikelihood":"UNLIKELY"
}
}
},
{
"exclusionRule":{
"dictionary":{
"wordList":{
"words":[
"Quasimodo"
]
}
},
"matchingType": "MATCHING_TYPE_PARTIAL_MATCH"
}
},
{
"exclusionRule":{
"regex":{
"pattern":"REDACTED"
},
"matchingType": "MATCHING_TYPE_PARTIAL_MATCH"
}
}
]
}
]
}
...
infoType 偵測工具重疊
定義自訂 infoType 偵測工具時,有可能用了與內建 infoType 偵測工具相同的名稱。如「啟動字詞規則的情境範例」一節中的範例所示,當您建立自訂 infoType 偵測工具時,如果名稱與內建 infoType 偵測工具的名稱相同,那麼由新的 infoType 偵測工具所偵測到的任何發現項目都會新增到內建偵測工具所偵測到的結果中。只有 InspectConfig
物件的 infoTypes 清單中指定了內建 infoType 時才會如此。
建立新的自訂 infoType 偵測工具時,請在範例內容上進行全面測試,以確保偵測工具如您預期發揮作用。