写在前面的话提及权限,就会想到安全,是一个十分棘手的话题。这里只是作为学校Shiro的一个记录,而不是,权限就应该这样设计之类的。 Shiro框架1、Shiro是基于Apache开源的强大灵活的开源安全框架。 2、Shiro提供了 3、Shiro与Security对比 Shiro与Security对比 4、Shiro整体架构 Shiro整体架构图 5、特性 Shiro特性 6、认证流程 Shiro认证流程 认证当我们理解Shiro之后,我们就能比较容易梳理出认证流程,大概就是下面这样子。 Shiro认证流程 我们来看一段测试代码:
我们发现Shiro真正帮我们做的就是认证这一步,那他到底是如何去认证的呢? Shiro登录过程 我们把我们登录的代码完善一下:
Realm1、IniReam 配置文件
测试代码
2、JdbcRealm 这里有两种方案,使用Shiro为我们提供了SQL语句,或者我们自己写SQL语句。 第一种:
第二种:
3、自定义Realm 在上面我们已经看过了 第一步:继承 第二步:实现认证方法 第三步:实现授权方法 通过AuthorizingRealm,我们完全按照自己的需求实现自己的业务逻辑。
可能Shiro提供的Realm并不能满足我们的实际开发需求,所以真正弄明白自定义Realm还是有很大帮助的,你觉得呢? 4、安全加密 明文密码? 好吧,我们看看Shiro为我们提供的加密方法。
那我们该怎么使用了? 在Realm认证中设置盐值
我们只需要告诉我们的Realm,需要对密码进行加密就可以了。
权限1、Shiro为我们提供的权限
2、配置
3、自定义权限认证
另外,看一下 Shiro Filter Shiro Filter 会话管理(Session)会话管理,就是拿到Session之后,我们怎么处理。什么意思?分布式系统,需要共享Session。
缓存管理(Cache)缓存管理同Session管理,可以这样说,session是一套系统的基础,缓存决定系统的优化级别,很重要。 |
|