敏感数据保护可以检测文本内容中的敏感数据并对其进行分类。对于给定的文本输入,DLP API 会返回文本中找到的所有 infoTypes 的详细信息、可能性值和偏移信息。
最佳做法
确定扫描范围和优先级
请务必标识您的资源并指定哪些资源的扫描优先级最高。刚开始时,可能有大量积压的数据需要分类,而且无法立即扫描所有数据。首先选择风险最高的数据,例如经常访问、广泛访问或未知的数据。
缩短延迟时间
延迟时间受以下几个因素影响:要扫描的数据量、要扫描的存储区以及启用的 infoType 类型和数量。
如需帮助减少作业延迟时间,您可以尝试以下方法:
- 启用抽样。
- 避免启用不需要的 infoType。虽然在某些情况下很有用,但一些 infoType(包括
PERSON_NAME
、FEMALE_NAME
、MALE_NAME
、FIRST_NAME
、LAST_NAME
、DATE_OF_BIRTH
、LOCATION
、STREET_ADDRESS
、ORGANIZATION_NAME
),如果包含在内,可能导致请求的运行速度要慢很多。 - 始终明确指定 infoType。请勿使用空的 infoType 列表。
- 请考虑将要检查的数据整理成包含行和列的表(如果可能),以减少网络往返次数。
限制首次扫描的范围
为达到最佳效果,请限制前几次扫描的范围,而不是扫描所有数据。从一些请求开始。如果您要微调要启用的检测器,以及可能需要哪些排除规则来减少假正例,则您的发现结果将更有意义。如果您不需要所有 infoType,请避免启用所有 infoType,因为误报或无法使用的结果可能会让评估风险变得更加困难。虽然在某些情况下很有用,但某些 infoType(如 DATE
、TIME
、DOMAIN_NAME
和 URL
)会检测到广泛的发现结果,因此可能不适用于启用。
本地、混合和多云端扫描
如果要扫描的数据位于本地或 Google Cloud 外部,请使用 API 方法 content.inspect
和 content.deidentify
扫描内容,以对发现结果进行分类并假名化内容,而无需永久保留本地存储空间之外的内容。
检查文本字符串
以下是多种语言的 JSON 和代码示例,演示了如何使用 DLP API 检查文本的字符串是否存在敏感数据。
C#
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Go
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
PHP
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Ruby
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
REST
要详细了解如何将 DLP API 与 JSON 结合使用,请参阅 JSON 快速入门。
JSON 输入:
POST https://dlp.googleapis.com/v2/projects/[PROJECT_ID]/content:inspect?key={YOUR_API_KEY}
{
"item":{
"value":"My phone number is (415) 555-0890"
},
"inspectConfig":{
"includeQuote":true,
"minLikelihood":"POSSIBLE",
"infoTypes":{
"name":"PHONE_NUMBER"
}
}
}
JSON 输出:
{
"result":{
"findings":[
{
"quote":"(415) 555-0890",
"infoType":{
"name":"PHONE_NUMBER"
},
"likelihood":"VERY_LIKELY",
"location":{
"byteRange":{
"start":"19",
"end":"33"
},
"codepointRange":{
"start":"19",
"end":"33"
}
},
"createTime":"2018-11-13T19:29:15.412Z"
}
]
}
}
检查文本文件
以下代码示例演示了如何检查文本文件中是否存在敏感内容。
C#
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Go
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Ruby
如需了解如何安装和使用敏感数据保护客户端库,请参阅 敏感数据保护客户端库。
如需向 Sensitive Data Protection 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
后续步骤
- 完成 Redacting Sensitive Data with Sensitive Data Protection Codelab。
- 了解如何检查图片是否存在敏感数据。