服务治理

spring security使用篇 记住我功能原理以及实现

2018-10-13  本文已影响132人  怪诞140819

1.原理解析

1.1 记住我基本原理

记住我基本功能原理

1.2 RemeberMeAuthencationFilter

image.png

2.实现

2.1 注入一个PersistentTokenRepository的Bean

对于注释的创建表的代码可以在第一次执行完后进行注释,也可以跟到代码拿到从建表语句,自己创建,然后不需要这行代码

    @Bean
    public PersistentTokenRepository persistentTokenRepository(){
        JdbcTokenRepositoryImpl tokenRepository = new JdbcTokenRepositoryImpl();
        tokenRepository.setDataSource(dataSource);
        //tokenRepository.setCreateTableOnStartup(true);
        return tokenRepository;
    }

2.2 HttpSecurity配置

 http.anyRequest()
            .authenticated()
            .and()
            .rememberMe()
            .tokenRepository(persistentTokenRepository())
            .tokenValiditySeconds(securityProperties.getBrowser().getTokenValiditySeconds())
            .userDetailsService(userDetailsService)

2.3 html中的处理

<input name="remember-me" type="checkbox" value="true" />记住我
上一篇下一篇

猜你喜欢

热点阅读