一般在web系统权限设计中,一般分为三个维度,用户,角色,资源,一个用户可以拥有多个角色,比如说可以是老师,也可以是班主任,一个角色也可以拥有多个资源。
比如老师同时拥有查看班级学生和批改作业的资源,如果一个用户有老师这个角色,那么就代表他拥有了查看班级学生和批改作业的两个资源权限。
因为只判断角色颗粒度太粗,而根据资源权限则比较细。
校验权限代码
在classpath下新建shiro-role.ini文件,内容如下:
代表有一个zhang的用户,拥有role1角色(如果有多个角色,后面用逗号继续隔开role1,role2)
role1这个角色有两个资源,分别是user:create和user:update。
[users] zhang=123456,role1 [roles] role1=user:create,user:update