什么是shiro
官网:http://shiro.apache.org/
是一款主流的Java安全框架,不依赖任何容器,可以运行在JavaSE和JavaEE项目中,它的主要作用是对访问系统的用户进行身份认证、授权、会话管理、加密等操作。
shiro是用来解决安全管理的系统化框架
shiro核心组件
用户、角色、权限
会给角色赋予权限,给用户赋予角色
权限=》角色=》用户
- UsernamePasswordToken,shiro用来封装用户登录信息,使用用户的登录信息来创建令牌 Token
- SecurityManager,shiro的核心部分,负责安全认证和授权
- Subject,Shiro的一个抽象概念,包含了用户信息
- Realm,开发者自定义的模块,跟据项目的需求,验证和授权的逻辑全部写在Realm中
- AuthenticationInfo,用户的角色信息集合,认证时使用(千万不要与下面的搞混),【_用户与角色直接挂钩_】
- AuthorizationInfo,角色的权限信息,授权时使用(_角色与权限直接挂钩_)
- DefaultWebSecurityManager,安全管理器,开发者自定义的Realm需要注入到 DefaultWebSecurityManager进行管理才能生效
- ShiroFilterFactoryBean,过滤器工厂,shiro的基本运行机制是开发者定制规则,shiro去执行,具体的执行操作就是由ShiroFilterFactoryBean创建的一个个Filter对象来完成
运行机制如下:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。