Remember Me 인증
- 📚 Spring/Spring-Security
- 2022. 3. 8. 10:46
📝 Remember Me 인증
- 세션이 만료되고 웹 브라우저가 종료된 후에도 어플리케이션이 사용자를 기억하는 기능
- Remember-Me 쿠키에 대한 Http 요청을 확인한 후 토큰기반 인증을 사용해 유효성을 검사 후 토큰이 검증되면 사용자가 로그인 된다.
http.rememberMe() // remember 기능 작동
package kyh.security.basicsecurity;
@Configuration
@EnableWebSecurity
@RequiredArgsConstructor
public class SecurityConfig extends WebSecurityConfigurerAdapter {
private final UserDetailsService userDetailsService;
@Override
protected void configure(HttpSecurity http) throws Exception {
//인가 정책
http
.authorizeRequests()
.anyRequest().authenticated();
//인증 정책
http
.formLogin()
;
http
.rememberMe() //
.rememberMeParameter("remember") // 기본 파라미터명
.tokenValiditySeconds(3600) // default : 14일
.userDetailsService(userDetailsService);
;
}
}
- http.userDetailsService는 시스템 사용자 계정을 조회하는 처리과정에서 필요한 설정이다.
📝 아키텍처
| 해당 필터 작동 조건
- 1.Authencation 이 null일 경우 작동한다
- 2.Remember-me 쿠키를 가지고 있는 경우
| RememberMeService : Remember-me 토큰인지 검사
- TokenBasedRememberMeServices
- PersistentTokenBasedRememberMeServices : DB의 값과 비교하여 인증처리하는 클래스
'📚 Spring > Spring-Security' 카테고리의 다른 글
세션 정책 ( 동시세션 제어, 세션고정보호) (0) | 2022.03.16 |
---|---|
익명사용자 필터 : AnonymousAuthenticationFilter (0) | 2022.03.16 |
3. Logout 처리 > LogoutFilter (0) | 2022.03.03 |
[Spring Security] 2. Form Login 필터 : UsernamePasswordAuthenticationFilter (0) | 2022.03.03 |
[Spring Security] Form Login 인증방식 (0) | 2022.03.02 |