【发布时间】:2018-07-18 14:52:19
【问题描述】:
环境:SQL Server 2012 我正在努力为我们的组织构建一个包括数据屏蔽和加密的解决方案。
目前,我们没有任何数据屏蔽,因此没有必要。 我们正在识别可以识别数据是否敏感的数据或可能导致个人身份的非敏感数据的某些组合。
一种方法是使用某种工具,例如 Redgate 数据生成器或 DataVeil,它们可以为我们想要用于 Dev 或 UAT 环境的字段生成数据库的虚拟数据。 其他将使用某种函数,根据长度将某些字符屏蔽为 xxxx 或 ****。
在生产环境中,据了解,由于屏蔽是不可逆的,因此需要进行加密,我将在未来几周内了解更多信息。 当数据是从工具生成或使用 TSQl 代码屏蔽并基于对生产环境密钥的访问时,上述场景适用于每个用户在 UAT 和 Dev 中看到相同数据的情况。 请纠正我以上任何你认为不正确的地方。
接下来是使用视图的基于用户的访问。使用视图的安全性材料并不多,因此询问如果我们采用这条路线而不是上述路线,我们将如何实施。
我了解可以授予用户使用视图访问基础表的权限。 现有的查询和 SSRS 报告和多维数据集呢? 这怎么能与视图一起工作?我是否更改每个查询?我在这里有点迷路。
【问题讨论】:
-
您的 UAT 和 DEV 环境是否需要唯一的假数据,或者相同的虚拟数据是否适用于每条记录?
-
我们尚未决定记录的唯一性是否重要。如果需要唯一性,任何工具都可以提供帮助。我的想法是当基于访问/权限屏蔽数据时该怎么做。 SQL 2016 可以轻松处理它,但我们使用的是 SQL 2012,我不确定如何实现。
标签: sql-server database tsql security data-masking