1. 权限管理的流程
页面中的菜单和按钮就是我们访问某个功能的入口。
无论是访问菜单或者按钮,要想完成某个业务操作,实际上是需要发送一个http请求,访问Action,在服务端完成某个操作。
认证:系统提供的用于识别用户身份的功能。通常用户登录功能就是认证。------让系统知道你是谁??
授权:系统授予某个用户可以访问某个功能的权利。-------让系统知道你能做什么??
2. 常见的权限控制的方式
2.1 URL拦截权限控制
主要用于控制请求的路径
2.2 方法注解权限控制
主要用于控制具体方法
原理: 底层基于代理技术实现
为staffAction中的deleteBatch方法添加了注解===>>
我们在访问staffAction时,拿到的对象已经不是staffAction本身,而是staffAction的代理对象.通过 代理对象进行权限校验
(1)如果通过了校验,就通过反射调用staffAction的deleteBatch方法;
(2)如果校验失败,则抛出异常
3. 权限关系
表关系:
一般分为五张表: 用户表 用户-角色表 角色表 角色—权限表 权限表
4.shiro框架(权限管理)
4.1 处理流程
4.2 核心功能及快速入门
4.2.1 认证
在UserAction中,重写login方法
在realm中,实现认证方法 doGetAuthenticationInfo
4.2.2 授权(利用注解实现权限控制)
4.2.3 会话管理(待续)
4.2.4 加密(待续)
ps:如果我有理解不到位的地方,希望各位指导更正,谢谢,谢谢!!