在我在荷兰社区会堂的新工作中,我们使用包含隐私敏感数据的数据库(例如公民服务号码)。他们最近也开始使用Azure,我在谈论时已经熟悉了。所以这可能是一个初学者的问题,但我希望有人可以引导我朝着正确的方向前进:有没有办法,通过与数据库的直接连接来检索数据并使其成为'匿名',例如通过在管道中某处散列或使用某些类型的密钥文件? 我知道管道是.JSON文件,并且可以进行一些转换。我很好奇在Azure中这样做的可能性!
** 编辑 **
更清楚一点:我想写一段代码,最好是在管道中,这样做:
citizen service number person 1
102541220
#generate key/hash somewhere in pipeline of loading in data in azure
anonymous citizen service number, that is specific for person 1
0x10325476
后来,我想在这个数据库中添加列,例如这个人居住的房子有什么价值。我希望能够通过
来“耦合”数据库。anonymous citizen service number 1
0x10325476
答案 0 :(得分:0)
听起来您会对Azure SQL数据库动态数据屏蔽感兴趣。
SQL数据库动态数据屏蔽通过以下方式限制敏感数据的公开 将其屏蔽给非特权用户。
动态数据屏蔽有助于防止他人擅自访问敏感数据 通过使客户能够指定多少敏感数据来获取数据 揭示对应用程序层的影响最小。它是 基于策略的安全功能,可将敏感数据隐藏在 查询指定数据库字段的结果集,而数据 数据库中的值保持不变。
例如,呼叫中心的服务代表可以识别 呼叫者使用其信用卡号的几位数,但这些数据 这些物品不应完全暴露给服务代表。一种 可以定义屏蔽规则,该规则屏蔽除字符的后四位以外的所有字符 任何查询结果集中的任何信用卡号。作为另一个 例如,可以定义适当的数据掩码以个人保护 可识别信息(PII)数据,以便开发人员可以查询 生产环境以进行故障排除而不会违反 遵守规定。
https://docs.microsoft.com/en-us/azure/sql-database/sql-database-dynamic-data-masking-get-started
这不会使数据不可逆地匿名化,因为它可以被拥有SQL Server权限的人员重新个性化。
但是,它将允许您在SQL Server内部进行联接,但不公开个人数据。