Java和Hibernate实现数据“安全性”

Java和Hibernate实现数据“安全性”,第1张

Java和Hibernate实现数据“安全性”

Hibernate具有可能适合您的过滤器机制。过滤器将重写hibernate生成的查询,以包括一个附加子句来限制返回的行。我不知道在hibernate中要遮罩/隐藏列的任何内容。

您的数据库可能也支持此功能。例如,Oracle具有虚拟专用数据库(VPD),它将在数据库级别重写您的查询。该解决方案的另一个好处是,违反数据库的任何外部程序(例如,报告工具)都将强制执行安全限制。VPD还支持使用NULL屏蔽受限制的列。

不幸的是,上述解决方案不足以满足我通常从事的项目类型的安全要求。在以上解决方案中,通常存在某种上下文无法轻松表达的情况。例如,用户可以查看自己创建的数据或已标记为公开的数据,或者属于他们管理的项目的数据。

通常,我们创建查询/查找器/ DAO对象,在其中传递增强安全性所需的值,然后相应地创建查询。

我希望这有帮助



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5169251.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-18
下一篇2022-11-18

发表评论

登录后才能评论

评论列表(0条)

    保存