Shiro的授权流程
用户访问系统资源时的授权流程如下:
- 系统调用subject主体对象相关方法将用户权限信息(例如isPermitted)递交给SecurityManager
- SecurityManager将权限检测操作委托给Authorizer授权管理器对象
- Authorizer授权管理器将用户信息委托给realm
- Realm访问数据库获取用户权限信息(有没有权限,有什么样的权限)并封装
- Authorizer对用户授权信息进行判定(判断用户访问资源时需要什么权限,假如用户所具有的权限包含这个资源访问时所需要的权限,那么用户就可以访问这个资源了)。
不是每一个用户都能访问系统中的所有资源,能访问哪些资源需要有一个授权的过程,这个授权的对象叫做Authorizer。
Shiro授权的多种实现方式
我们使用shiro进行权限控制 有以下几种方式
- URL拦截权限控制:基于filter过滤器实现
我们在spring配置文件中配置shiroFilter时配置