本文共 642 字,大约阅读时间需要 2 分钟。
Shiro 提供了记住我(RememberMe)的功能,比如访问如淘宝等一些网站时,关闭了浏览器下次再打开时还是能记住你是谁,下次访问时无需再登录即可访问,基本流程如下:
- 1、首先在登录页面选中RememberMe 然后登录成功;如果是浏览器登录,一般会把RememberMe的Cookie 写到客户端并保存下来; - 2、关闭浏览器再重新打开;会发现浏览器还是记住你的; - 3、访问一般的网页服务器端还是知道你是谁,且能正常访问; - 4、但是比如我们访问淘宝时,如果要查看我的订单或进行支付时,此时还是需要再进行身份认证的,以确保当前用户还是你./** = user
使用shiro默认的user拦截器。该拦截器要求用户已经登录或者勾选了RememberMe,就可以放行。
用firefox浏览器可以看出,shiro在返回响应的时候,首先删除了之前的rememberMe的cookie,然后重新在客户端设置了rememberMe的cookie。
cookie详细信息,shiro默认设置有效期为1年
用户再次访问时,浏览器会发送这个rememberMe的cookie给服务端,无需再登录即可访问
源码托管在;
参考;