所谓spring security remember me
就是把用户名和密码保存到
cookie里,下次登录的时候,自动填到输入框里就行了
可是到底是什么意思呢,我研究了几天终于搞懂了。
实际操作就是:登录并将
Remember Me
选项选中,收藏首页,然后重启浏览器并再次访问首页。你能发现你直接登录成功并不再需要提供凭证。
至于实现这个功能有很多种方式,我用的是最简单的那一种。
修改applicationContext-security.xml配置文件,
添加声明。设置key属性为项目名:
< security:http auto-config="true" access-denied-page="/Denied.jsp" >
< security:remember-me key="sims_company" user-service-ref="userDetailsService" / >
< / security:http >
如果我们现在尝试使用应用,在流程上将不会看到有任何的变化。这是因为还需要在登录form上添加一个输入域,以允许用户选择使用这个功能。编辑login.jsp文件,添加一个checkbox,代码如下:
< input type="checkbox" class="noborder" name="_spring_security_remember_me" id="rememberme" value="true" > < label for="rememberme" >请记住我的登录< / label > < / td >
(我在网上搜的都是id和name取的一样都是_spring_security_remember_me这个我还没弄太清楚,是什么原因)
但是用这个实现安全性不是很高。所以要慎重。