spring security实现记住我功能

spring security实现记住我功能

1、单选框name设置为remember-me,value设置为true、1、on、yes其中一个都可以

2、开启remember me过滤器

<!--开启remember me过滤器,设置token存储时间为60秒--> 
<security:remember-me token-validity-seconds="60"/>

说明:RememberMeAuthenticationFilter中功能非常简单,会在打开浏览器时,自动判断是否认证,如果没有则调用autoLogin进行自动认证

持久化remember me信息

创建一张表,注意这张表的名称和字段都是固定的,不要修改

CREATE TABLE `persistent_logins` ( 
    `username` varchar(64) NOT NULL, 
    `series` varchar(64) NOT NULL, 
    `token` varchar(64) NOT NULL,
    `last_used` timestamp NOT NULL, 
    PRIMARY KEY (`series`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8

然后将spring-security.xml中 改为:

<!-- 开启remember me过滤器, data-source-ref="dataSource" 指定数据库连接池 
token-validity-seconds="60" 设置token存储时间为60秒 可省略 
remember-me-parameter="remember-me" 指定记住的参数名 可省略 --> 
<security:remember-me data-source-ref="dataSource" token-validity-seconds="60" remember-me-parameter="remember-me"/>
记得快乐
原文地址:https://www.cnblogs.com/Y-wee/p/14441554.html