程序员

关于shiro技术的总结

2017-08-10  本文已影响0人  perfecthg

关于shiro登录安全技术的总结

Shiro中的登录与传统登录不同的流程为:

shiro登录方式

(1)在realm中提供的info和token的含义:

Token是取出登录界面用户输入的密码和用户名

Info是从数据库中取出的用户名和密码

(2)在realm域中有认证和授权两个模块,shiro对外界提供subject接口对shiro框架进行调用,如果进行数据的校验比对正确的话会进行success.jsp的页面的跳转,如果需要授权的话进入realm中进行授权的操作

认证:进行页面密码和用户名与数据库中数据进行比对

授权:确认该用户是否具有该模块的权限

(并不是subject对与realm域的调用而是subject交给securityManager进行认证和授权方法的调用)

(3)shiro框架的核心是securityManager安全管理器,他管理者所有的subject,而subject可以当做是一个门面,与subject所有的交互其实最终还是有securityManager来完成

(4)在web.xml进行配置过滤器的时候一定放在struts2过滤器的前面,Apache公司提供了10个过滤器供大家选择,但是配置时为了简化操作,Apache公司只需我们在web.xml配置一个过滤器(过滤器链)即可,这个过滤器会包括上述十个过滤器.具体配置为(spring提供)

shiro核心过滤器配置

(5)在集成ssh框架时候,如果hibernate的版本超过4.X的时候即使在web.xml里面配置


openSessionInviewFilter懒加载的时候还是会出现报错问题,需要在hibernate.cfg.xml文件中进行另一项配置才能解决这一问题:

在hibernate.cfg.xml中的配置

(6)关于shiro底层自动集成缓存技术的配置文件详细解释:

缓存解释

(7)想要在项目中正确运行该项技术需要进行如下配置(默认是ssh版本)

需要引入:application-shiro.xml文件

ehcache-shiro.xml文件

在web层进行密码比较器和realm域的创建

(8)如何在认证方法(代码)

认证方法

(9)授权方法的创建:


认证方法

(10)自定义密码比较器的创建

密码比较器

(11)对与shiromd5加密工具类的自定义:

工具类使用Apache公司提供的方法

Md5hash为apache公司提供对与md5加密的升级

上一篇下一篇

猜你喜欢

热点阅读