我正在构建一个包含健康信息的应用程序。这个应用程序将面向消费者,对我来说是新的。我想要一种让隐私问题完全放心的方法。当我回顾在可公开访问的数据库中保护敏感数据的方法时,我经常遇到数据库半透明的概念。Oriellynet有关于该主题的原著和关于该主题的优秀教程。
我担心的是,关于我认为非常现代的编程网站(比如这个)的这个想法,我看到的信息很少。维基百科上似乎没有关于这个想法的文章。这里没有关于这个主题的问题,也没有关于这个主题的最新教程或文章。简而言之,这个想法是某些数据对系统的某些用户是清楚的,而其他用户则通过加密方式阻止访问该数据,即使他们具有管理员访问权限。
我在提供半透明数据访问的原型数据库上做了大量工作。我遇到了一个相当大的问题:要真正半透明,不能有密码恢复机制。如果管理员可以重置用户密码,那么他们可以短暂访问用户数据。要真正做到半透明,用户绝不能丢失密码。
我们这些在日常生活中使用强加密来保护私人数据的人(当然是technorati)在使用这些强加密系统时已经习惯了这个问题。如果“河豚”这个词是您日常词汇的一部分,那是一回事,而是一个以消费者为中心的网站?我担心用户不会愿意围绕“真正为您加密”的概念与真正的数据库半透明隐含在一起。我害怕以“我丢失密码”开头并以“我无能为力”结尾的支持电话。
我的问题:我应该在我的应用程序中实现这个方法吗?是否有其他开源应用程序沿着这条路线走,我可以将数据库设计与之进行比较(尤其是使用 php/MySQL)?我还有其他人追求这种真正安全但真的很不方便的功能集吗?是否有另一种我错过的更流行和现代的数据库安全模型?数据库半透明是我应该接受的一种时尚还是一种合法的数据库设计方法?虽然我总是喜欢讨论,但我更喜欢可以在我的设计中利用的客观答案。