概念理解
Session
Cookie
Token
P162
P165_简单加密
- 在html中添加一个”记住我”功能勾选框
- 打开SecurityConfig类,重写configure(HttpSecurity http)方法进行记住我功能配置
http.rememberMe().rememberMeParameter("rememberme") //用http的remenberMe函数,连接前端页面的参数"rememberme".tokenValiditySeconds(200); //设置token的有效时间
P166_持久化Token
理解
用户选择“记住我”成功登录后,Security会将Token进行持久化存储,同时将它们组合生成一个Cookie发送给客户端。 当用户再次访问系统时,首先检查客户端携带的Cookie里的Token是否与数据库中保存的一致,通过验证后自动登录,同时系统将重新生成一个Token替换原有的Token,然后将新的Cookie发送给客户端。如果Cookie中的Token不匹配数据库,很有可能用户的Cookie被盗用。如果盗用者使用数据库原有的Token进行登录之后会生成一个新的Token,用户在不知情时再次登录就会出现Token不匹配的情况。Spring Security发现Cookie可能被盗用,会删除数据库中与当前用户相关的所有Token记录,这样盗用者不能再次登录。
实操
mysql在之前的springbootdata数据库导入(建立)持久化存储的表
create table persistent_logins (username varchar(64) not null,series varchar(64) primary key,token varchar(64) not null,last_used timestamp not null);
@autowire
datasourse
P224_博客案例
依赖
druid连接池
mybaits(不能用)要改MyBaitsPlus
mysql数据库(或driver),UserDetail完成登录
redis
mail(发送邮件)
thymeleaf(可以直接用前端文件)
security权限
web网页
pagehelper分页(第三方分页)
devtools热部署
6月24日-7月1日
每个人负责不同的模块
——模块,
article包下dao(增删查改)、domain、service、controller、config
根据数据库字段写实体类
dao层写增删查改、分页功能
p232,p233,Service业务逻辑实现
