spring-shiro

168 阅读1分钟

代码通过Subject来进行认证和授权等操作,而Subject又将这个操作委托给SecurityManager,我们将要验证的数据源注入到Realm中,SecurityManager在Realm中查询数据进行验证。


授权问题:

江南一点雨shiro

1.隐式角色

在使用的过程中,我们直接判断相应的Subject是否是某一种角色,进而判断该Subject是否具备某种权限,subject.hasrole(role)

2.显示角色

显式角色是一种基于资源的访问权限控制,需要我们自己手动维护用户-角色、角色-权限之间的关系。

定义角色对应的权限,权限的定义格式一般是资源:操作。

#单个资源多个权限

role1 = user:create,user:update

判断:subject.isPermittedAll("user:delete", "user:update")