我发现 Apache Shiro 确实是一个灵活的安全框架。我使用 Shiro 成功实现了身份验证和授权。
该框架吸引人的特性之一是基于实例的安全性。我刚刚从 Shiro 网站复制了示例。
以下权限存储在数据库中。
printer:query:lp7200
printer:print:epsoncolor
以下代码检查对于给定的打印机实例,当前经过身份验证的用户是否具有权限。
if ( SecurityUtils.getSubject().isPermitted("printer:query:lp7200") {
// Return the current jobs on printer lp7200
}
我的问题是“这就是权限在数据库中的存储方式吗?” 有没有更好的方法来存储基于实例的权限?
请告诉我。
谢谢