SPRING/spring security
🌱👮🏿♀️Spring Security (4) - RememberMe 인증
개발하는 정복자
2022. 5. 24. 16:04
🐣 이전 챕터
🌱👮🏿♀️Spring Security (3) - Logout 처리, LogoutFilter 동작 순서
🌱👮🏿♀️Spring Security (2) - Login Form 인증, FormLoginFilter 동작 순서
- 이전 챕터 🌱👮🏿♀️Spring Security (1) - 스프링 시큐리티 시작하기 - FormLoginFilter 동작 순서 요청이 오면 인증처리를 담당하는 UsernamePasswordAuthenticationFilter가 작동함 이 클레스의 가장 큰..
phillnam.tistory.com
🐥remember-me 란?
- 세션이 만료되거나 웹브라우저가 종료된 이후에도 어플리케이션이 사용자를 기억하는 기능
- remember-me 쿠키에 대한 Http 요청을 확인한 후 토큰 기반 인증을 사용하여 유효성을 검사하고 토큰이 검증되면 사용자는 로그인 된다.
- 사용자 라이프 사이클
- 인증 성공 (Remember-Me 쿠키 설정)
- 인증 실패 (쿠키가 존재하면 쿠키 무효화)
- 로그아웃 (쿠키가 존재하면 쿠키 무효화
💥 코드로 보자!
@Configuration
@EnableWebSecurity
@RequiredArgsConstructor
public class SecurityConfig extends WebSecurityConfigurerAdapter {
private UserDetailsService userDetailsService;
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.rememberMe()
.rememberMeParameter("remember") // remember-me 파라미터 이름 설정
.tokenValiditySeconds(3600) // 토큰 유효시간 설정 (초단위) ex) 3600 = 1hour
.userDetailsService(userDetailsService) // remember-me 사용시 유저객체 조회
;
}