2、你得在界面上获取用户手机号,将验证码发下去
3、你得自己实现shiro的登录验证方面,验证用户手机号和下发的短信验证码内容
4、再生成shiro里面的会话信息
直接用手机号登录即可,密码就不用了。推荐一套完整的Shiro Demo,免费的。
Shiro介绍文档:http://www.sojson.com/shiro
Demo已经部署到线上,地址是http://shiro.itboy.net,
管理员帐号:admin,密码:sojson.com 如果密码错误,请用sojson。
PS:你可以注册自己的帐号,然后用管理员赋权限给你自己的帐号,但是,每20分钟会把数据初始化一次。建议自己下载源码,让Demo跑起来,然后跑的更快。
最终demo
到这节为止,我们已经实现了身份验证和权限验证。但是,如果我们登录之后多次访问 http://localhost:8080/userInfo/userDel 的话,会发现权限验证会每次都执行一次。这是有问题的,因为像用户的权限这些我们提供给shiro一次就够了。
下面,我们开始给shiro添加缓存支持:
在 com.example.demo.config.Shiro.ShiroConfiguration 中添加以下方法。
将缓存对象注入到 SecurityManager 中:
在src/main/resouces/config中添加ehcache-shiro.xml配置文件:
启动项目,再多次访问 http://localhost:8080/userInfo/userDel ,这时候只会在后台打印一次配置权限的信息了,说明shiro缓存起了作用。
---------------------下面我们开始配置记住密码-----------
将rememberMeManager注入到SecurityManager中
在 ShiroFilterFactoryBean 中添加记住我过滤器 user ,添加 user 过滤器的资源在记住我或认证之后就可以直接访问了。
最后,在login.html页面添加记住我单选框
启动项目,正常登录后关闭浏览器,再打开浏览器输入 http://localhost:8080/index ,这时候就可以直接访问index页面,不需要再登录了。
SpringBoot + Shiro (一)基础工程搭建
SpringBoot + Shiro (二)身份校验和角色设置
SpringBoot + Shiro (三)权限
SpringBoot + Shiro (四)缓存&记住密码
SpringBoot + Shiro (五)验证码
最后,感谢几位作者的文章解惑:
springboot整合shiro-登录认证和权限管理
Spring Boot Shiro权限管理【从零开始学Spring Boot】
Spring boot 中使用Shiro
最后帮朋友打个小广告
一个有趣的迷你小程序
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)