Spring集成Shiro作登录认证

1、背景

  其实很早的时候,就在项目中有使用到shiro作登录认证,直到今天才又想起来这茬,本身抽空搭了一个spring+springmvc+mybatis和shiro进行集成的种子项目,固然里面还有很简单的测试。本文将讲述在maven下如何进行集成,但愿对你有所帮助,喜欢请推荐。至于shiro相关的,最近也会写几篇介绍的,但愿可以有一个主观的了解。java

2、集成步骤

  说明:关于spring+springmvc+mybatis的集成请移步另外一篇博客:Spring+SpringMvc+Mybatis框架集成搭建教程git

1.第一步引入shiro依赖
Spring集成Shiro作登录认证github

2.在web.xml中引入shiro的filter
Spring集成Shiro作登录认证web

3.resources文件下的spring目录下新建spring-shiro.xmlspring

Spring集成Shiro作登录认证
4.新建自定义的Realm,CustomRealm.java
Spring集成Shiro作登录认证数据库

说明:doGetAuthorizationInfo()是作受权,好比项目中有不少资源,指定角色的人员只有指定的资源,这种状况可使用这个方法来作受权,doGetAuthenticationInfo()方法作认证,咱们通常是用做用户登录主逻辑,这个方法中咱们只须要根据用户提供的用户名去数据库中查找对应的用户信息,而后用该信息返回一个SimpleAuthenticationInfo对象便可,不须要比较数据库中的密码和token中的密码是否一直,由于在登录时shiro会帮咱们作这件事,不匹配会抛出IncorrectCredentialsException来提示密码错误。session

5.自定义AuthroizeFilter.java
Spring集成Shiro作登录认证mybatis

6.自定义SessionUtils.java来管理shiro相关的session等
Spring集成Shiro作登录认证mvc

通过上面这些步骤,咱们就完成了spring和shiro的集成,关于简单的测试程序,再也不贴出,在这里提供该种子项目的github地址:https://github.com/hafizzhang/spring-shiro.git框架

3、总结

  经过本文,咱们就完成了spring集成shiro作登录的受权和认证,其实很简单,继续努力成长!

相关文章
相关标签/搜索