如何使用GCP Data Loss Prevention API对表格自由文本列做去标识化处理
Google Cloud DLP 表格自由文本列部分去标识配置方法
你遇到的全列被去标识的问题是配置错误导致的,无需单独提取自由文本字段,传入完整表格时只需调整去标识规则即可实现仅替换自由文本内的敏感内容。
- 问题根因:当前请求大概率配置了字段级(Column-level)的去标识规则,该规则会对指定列的全部内容执行替换,不会判断列内是否包含敏感数据。
- 正确配置逻辑:使用信息类型(InfoType)级别的转换规则,DLP会先扫描指定列识别出匹配的敏感内容,仅对命中的敏感片段执行掩码/替换操作,其余正常文本保持不变。
以下是完整的请求体示例:
{ "item": { "table": { "headers": [ {"name": "user_id"}, {"name": "comments"}, {"name": "submit_time"} ], "rows": [ {"values": ["1001", "My email id is xyz@abc.com", "2024-01-01"]}, {"values": ["1002", "我的手机号是13800138000", "2024-01-02"]} ] } }, "inspectConfig": { "infoTypes": [ {"name": "EMAIL_ADDRESS"}, {"name": "PHONE_NUMBER"} ], // 可选配置:仅扫描comments列,其余列不做检测也不会被修改 "options": { "limitedScan": { "fieldIds": [{"name": "comments"}] } } }, "deidentifyConfig": { "infoTypeTransformations": { "transformations": [ { "primitiveTransformation": { // 示例1:替换敏感内容为固定标记 "replaceConfig": { "newValue": {"stringValue": "[敏感信息]"} } // 示例2:掩码替换,仅保留邮箱后缀,注释掉上面的replaceConfig即可启用 // "characterMaskConfig": { // "maskingCharacter": "*", // "charactersToIgnore": [{"commonCharsToIgnore": "EMAIL_ADDRESS_LOCAL_PART_SUFFIX"}] // } } } ] } } }
以上配置执行后,示例中的comments字段会返回My email id is [敏感信息],其余文本和其他列的内容均保持不变。
内容的提问来源于stack exchange,提问作者K D
相关产品推荐
相关产品推荐

