SpringSecurity--记住我
记住我-内存版
前端
登录表单携带名为remember-me的请求参数。具体做法是将登录表单中的checkbox的name设置为remember-me
后端
如果不能使用“remember-me”作为请求参数名称,可以使用rememberMeParameter()方法定制。
身份存储在服务器端,如果服务器重启了,这个记住我的功能就会失效
原理
通过开发者工具看到浏览器端存储了名为remember-me的Cookie。根据这个Cookie的value在服务器端找到以前登录的User
而且这个Cookie被设置为存储2个星期的时间。
记住我,数据库版
为了让服务器重启也不影响记住登录状态,将用户登录状态信息存入数据库。
建立数据库连接
1、pom.xml加入依赖
<!-- 数据源 --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.0.31</version></dependency><!-- mysql驱动 --><!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-Java</artifactId><version>8.0.15</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId><version>4.3.20.RELEASE</version></dependency>
2、创建数据库
CREATE DATABASE `security` CHARACTER SET utf8;CREATE TABLE persistent_logins (username VARCHAR (64) NOT NULL,series VARCHAR (64) PRIMARY KEY,token VARCHAR (64) NOT NULL,last_used TIMESTAMP NOT NULL
);
3、spring-mvc.xml配置数据源
<!-- 配置数据源 -->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"><property name="username" value="root"></property><property name="password" value="123456"></property><property name="url" value="jdbc:mysql://localhost:3306/security?serverTimezone=Asia/Shanghai"></property><property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
</bean><!-- jdbcTemplate-->
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"><property name="dataSource" ref="dataSource"></property>
</bean>
4、在WebAppSecurityConfig类中注入数据源
@Autowiredprivate DataSource dataSource;
启用令牌仓库功能
JdbcTokenRepositoryImpl repository = new JdbcTokenRepositoryImpl();
repository.setDataSource(dataSource);
HttpSecurity对象.tokenRepository(repository);
SpringSecurity--记住我相关推荐
- springsecurity记住我
Spring Security 记住我 第一步 创建(配置)数据库 spring:datasource:username: rootpassword: 123456url: jdbc:mysql:// ...
- SpringSecurity 记住密码
很多时候很少会出现让用户重复的输入用户名或密码的形式,往往都可以通过Cookie来记录下用户的操作密码. 所以在spring安全框架里面也提供有这样记住密码的功能. 对于记住密码的操作有两种支持:一种 ...
- SpringSecurity - RememberMe
SpringSecurity 记住我原理: 一.创建token 进入UsernamePasswordAuthticationFilter进行用户信息验证,验证成功之后它会调用一个AbstractAut ...
- SpringSecurity实现记住我功能
⒈表单添加 1 <form action="/authentication/form" method="post"> 2 <table> ...
- SpringSecurity的remember me记住我功能
SpringSecurity的remember me记住我功能,即下次访问系统的时候无需再次登录,当使用这个功能的时候SpringSecurity会生成一个令牌,令牌一方面保存在数据库中,另一方面生成 ...
- SpringSecurity(八)【RememberMe记住我】
八.RememberMe 简介 RememberMe 这个功能非常常见,无论是在 QQ.邮箱-都有这个选项.提到 RememberMe,往往会有一些误解,认为 RememberMe 功能就是把 用户名 ...
- SpringSecurity中“记住我”功能使用及介绍
RememberMe 1.简介 Remember这个功能非常常见,下图就是QQ邮箱登录时的"记住我"选项.提到RememberMe,一些初学者往往会有一些误解,认为Remember ...
- SpringSecurity基础:记住我
记住我 我们的网站还有一个重要的功能,就是记住我,也就是说我们可以在登陆之后的一段时间内,无需再次输入账号和密码进行登陆,相当于服务端已经记住当前用户,再次访问时就可以免登陆进入,这是一个非常常用的功 ...
- 9.Spring Security添加记住我功能
在网站的登录页面中,记住我选项是一个很常见的功能,勾选记住我后在一段时间内,用户无需进行登录操作就可以访问系统资源.在Spring Security中添加记住我功能很简单,大致过程是:当用户勾选了记住 ...
- springboot整个cas_SpringBoot集成SpringSecurity+CAS
1 简介 本文主要讲述如何通过SpringSecurity+CAS在springboot项目中实现单点登录和单点注销的功能. 2 项目依赖 主要依赖如下 org.springframework.boo ...
最新文章
- 介绍一本零基础入门Python数据分析的书
- System.Data.OracleClient.OracleConnection已过时
- go 连接 kafka 写 mysql
- 推荐一个硬核嵌入式的原创公众号
- P1337-[JSOI2004]平衡点/吊打XXX【模拟退火】
- python3中朴素贝叶斯_贝叶斯统计:Python中从零开始的都会都市
- 解决:Docker 启动的容器内部时间比服务器时间晚 8 小时,容器内部时间与宿主机时间不一致
- 11GR DATAGRUAD环境BROKER配置Fast-Start Failover
- oracle数据库disable,Disable/Enable Oracle Database Vault
- 老大,我想获取MySQL插入数据的自增ID,该怎么弄?
- MIME protocol 说明
- 南京邮电大学网络攻防训练平台-逆向-Py交易
- 微众银行为甘肃省职业院校技能大赛“区块链技术与应用”赛项提供技术支持
- OpenCV 安卓编程示例:1~6 全
- 又一个美食账号火了,3个月涨粉200万,快手乡土账号有何魔力?
- java拉阔机甲战棋游戏,《火焰VS外传:亡灵塔》评测:又见战棋,舍我其谁
- win7虚拟机使用nat模式配置静态IP上网
- iOS线下分享《RunLoop》by 孙源@sunnyxx
- 区块链+大数据:万物互联时代的“CP组合”
- 什么是IPX/SPX
热门文章
- 程序员的思维修炼--读书感悟
- 技巧分享-电脑版微信如何登录多个账号
- 拉昆塔温德姆酒店中国首店即将亮相山东潍坊;复星旅文旗下Club Med落子北美市场 | 全球旅报...
- 低功耗计算机视觉技术前沿,四大方向,追求更小、更快、更高效
- 完美解决failed to open stream: HTTP request failed!(file_get_contents引起的)
- ActiveMQ学习三-持久化订阅
- basICColor catch 5 Mac(光谱分析颜色测量软件) v5.0.7破解版
- 【虹科科普】信号发生器分类及任意波形发生器原理
- 20162327WJH四则运算第二周总结
- 电脑仙人掌机器人作文_蜗牛、仙人掌、电脑、雪人、机器人、蚕宝宝、大象选三到四个词作文...