导入依赖
1 | <!--thymeleaf集成shiro模版--> |
springboot配置类
在springboot项目中配置shiro,包括密码加盐处理、记住密码、自动登录session管理等Bean以及自定义过滤器的配置。
1 |
|
自定义Realm实现认证和授权
1 |
|
使用自定义的token必须重写supports方法,如果要实现记住我等功能,自定义的token一定要继承自UsernamePasswordToken。
自定义过滤器
1 | public class LoginFilter extends FormAuthenticationFilter { |
isAccessAllowed:判断是否登录。在登录的情况下会走此方法,此方法返回true直接访问控制器
onAccessDenied:是否是拒绝登录。没有登录的情况下会走此方法
如果isAccessAllowed方法返回True,则不会再调用onAccessDenied方法,如果isAccessAllowed方法返回Flase,则会继续调用onAccessDenied方法。而onAccessDenied方法里面则是具体执行登陆的地方。
onLoginSuccess:主要是针对登入成功的处理方法。可在这定义一些登陆成功时返回的数据
onLoginFailure:主要是处理登入失败的方法。可在这定义一些登陆失败时返回的数据