Tom*_*omK 8 vb.net encryption obfuscation design-patterns sql-server-2008
这是一个有趣的问题,我正在寻找一种可以保持一切可行的模式.
我正在为学校系统构建智能客户端应用程序.它将包含有关学生的信息,包括他们的成绩单,病假等.它将生成学生级报告,包括他们的报告卡,每个报告都由老师提供非常个人的评论.该应用程序将通过Web服务从远程服务器检索数据.
所以这些数据非常机密.我将在数据库中对其进行加密,并在检索时对其进行解密 - 没问题.
问题是我和我的团队应该永远不会看到生产明文数据.然后出现一个有趣的问题来调查生产错误!我们想要打开与用户相同的记录,看看他们看到了什么.但如果我们这样做,我们就会违反保密规定.
我的想法是这样,而且它并不完美.
最后,对于我们绝对必须看到学生记录的明文的情况,我们在UI中有一个覆盖配置设置的覆盖设置,并显示明文.我们在人力层面管理这一点 - 通知学校管理部门,因为这个原因我们需要看到这个学生的记录等.签字签字,抱怨同意,律师们争先恐后地冲他们的喷气机,冲洗和重复.
思考?我觉得这必须是一个很好的基础.如果可能的话,请帮我改进这个计划.
实际上,您不需要在 UI 处解密数据。SQL Server 具有为您进行实时加密的工具。如果有人需要查看明文,他们可以被分配到一个授予他们该权限的角色(并在完成后将其撤出)。
但是,如果查看数据违反了保密性,那么显然您永远无法看到生产数据。唯一的解决方案是使用经过修改的数据或完全随机的数据复制数据。