数据丢失预防在屏蔽电子邮件时发现多余的实体



我正在调用DLP API,使用以下请求以文本形式屏蔽人名和电子邮件地址:

请求

{
"item": {
"value": "Eleanor RigbynPharmacistneleanor.rigby@example.com"
},
"deidentifyConfig": {
"infoTypeTransformations": {
"transformations": [
{
"infoTypes": [ { "name": "EMAIL_ADDRESS" } ],
"primitiveTransformation": {
"characterMaskConfig": {
"maskingCharacter": "#",
"reverseOrder": false,
"charactersToIgnore": [
{
"charactersToSkip": ".@"
}
]
}
}
},
{
"infoTypes": [ { "name": "PERSON_NAME" } ],
"primitiveTransformation": {
"replaceConfig": {
"newValue": {
"stringValue": "(person)"
}
}
}
}
]
}
},
"inspectConfig": {
"infoTypes": [ { "name": "EMAIL_ADDRESS" }, { "name": "PERSON_NAME" } ]
}
}

API调用

curl -s 
-H "Authorization: Bearer $(gcloud auth print-access-token)" 
-H "Content-Type: application/json" 
https://dlp.googleapis.com/v2/projects/$PROJECT_ID/content:deidentify 
-d @gcp-dlp/input/text-request.json

响应

{
"item": {
"value": "(person)nPharmacistn(person)#######.#####@#######.###(person)"
},
"overview": {
"transformedBytes": "50",
"transformationSummaries": [
{
"infoType": {
"name": "EMAIL_ADDRESS"
},
"transformation": {
"characterMaskConfig": {
"maskingCharacter": "#",
"charactersToIgnore": [
{
"charactersToSkip": ".@"
}
]
}
},
"results": [
{
"count": "1",
"code": "SUCCESS"
}
],
"transformedBytes": "25"
},
{
"infoType": {
"name": "PERSON_NAME"
},
"transformation": {
"replaceConfig": {
"newValue": {
"stringValue": "(person)"
}
}
},
"results": [
{
"count": "3",
"code": "SUCCESS"
}
],
"transformedBytes": "25"
}
]
}
}

请求(仅限文本(

Eleanor Rigby
Pharmacist
eleanor.rigby@example.com

响应(仅限文本(

(person)
Pharmacist
(person)#######.#####@#######.###(person)

输入文本包含人名和电子邮件地址。两者都会按预期进行检测和屏蔽。但是,在屏蔽的电子邮件地址之前和之后会添加额外的(person)标记。

这是一个非常简单的例子,但我在以这种方式处理的每个文档中都观察到了这种行为。

为什么多次检测到个人实体?

此问题已在谷歌公共问题跟踪器上报告,此类请求没有索引,但这是报告问题或请求新功能的好方法。请按照此案例进行更新。

谷歌提出了一个变通办法:

在这种情况下,当发现重叠该人员来自用户的配置以替换人名和人名。

他们可以省略重叠部分。

有关更多信息,请参阅文档"修改infoType检测器以完善扫描结果"部分,如果PERSON_NAME检测器也与EMAIL_ADDRESS检测器匹配,则省略匹配项:

以下JSON片段和几种语言的代码说明如何使用InspectConfig向Cloud DLP指示它应该在与PERSON_NAME匹配的情况下只返回一个匹配检测器与CCD_ 3检测器的匹配重叠。正在执行这是为了避免出现以下情况:"james@example.com"PERSON_NAMEEMAIL_ADDRESS上的匹配探测器。

...
"inspectConfig":{
"ruleSet":[
{
"infoTypes":[
{
"name":"PERSON_NAME"
}
],
"rules":[
{
"exclusionRule":{
"excludeInfoTypes":{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
]
},
"matchingType": "MATCHING_TYPE_PARTIAL_MATCH"
}
}
]
}
]
} 
...

相关内容

  • 没有找到相关文章

最新更新