SpringSecurity05

 自动登录

 是基于cookie技术和安全框架机制实现自动登录

 

 一.实现原理

   第一步,初次访问。认证成功之后先用cookie技术加密之后保存到浏览器,然后把用户信息加密保存到数据库。

   第二步,再次访问。获取cookie信息,拿着cookie信息到数据库进行对比,如果查询到对应信息,认证成功,可以登录。

 

二.具体实现

   第一步,现在数据库创建表persistent_logins 

   第二步,配置类,注入数据源,配置操作数据库对象

复制代码
 //注入数据源
    @Autowired
    private DataSource dataSource;

    @Bean
    public PersistentTokenRepository persistentTokenRepository(){
        JdbcTokenRepositoryImpl jdbcTokenRepository = new JdbcTokenRepositoryImpl();
        jdbcTokenRepository.setDataSource(dataSource);
//        jdbcTokenRepository.setCreateTableOnStartup(true);   自己创建表
        return jdbcTokenRepository;
    };
复制代码

  第三步,配置类配置自动登录

 .and().rememberMe().tokenRepository(persistentTokenRepository()) //操作数据库的对象
                .tokenValiditySeconds(60) //设置时长,单位秒
                .userDetailsService(userDetailsService)

  第四步,在登录页面添加复选框,name必须是remenmber-me

1
<input type="checkbox" name="remember-me"/>自动登录

  

 

posted @   不想当将军的好士兵  阅读(29)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示