반응형
개념
- 세션이 만료되고 웹 브라우저가 종료된 후에도 어플리케이션이 사용자를 기억하는 기능
- Remember-Me 쿠키에 대한 Http 요청을 확인한 후 토큰 기반 인증을 사용해 유효성을 검사하고 토큰이 검증되면 사용자는 로그인 된다.
HttpSecurity
@Override
protected void configure(HttpSecurity http) throws Exception {
http.rememberMe()
.rememberMeParameter("remember") // 기본 파라미터명은 remember-me
.tokenValiditySeconds(3600) // default : 14 days
// default : false, remember-me 기능이 활성화되지않아도 항상 실행
.alwaysRemember(true)
// 사용자 계정 조회에 필요한 Class
.userDetailsService(userDetailsService)
}
처리 Process
RememberMeAuthenticationFilter가 동작 하는경우
- SecurityContext에 Authentication 객체가 NULL 일 경우(세션이 만료되었거나 끊겼을 경우)
- Client가 remember-me cookie를 요청할 경우
TokenBasedRememberMeServices
→ 메모리에서 저장한 쿠키값과 Client가 요청한 쿠키 값을 비교
PersistentTokenBasedRememberMeServices
→ 영구정인방식(DB에 쿠키값 저장)으로 DB에 저장한 값과 Client가 요청한 값을 비교
반응형
'Framework > Spring Framework' 카테고리의 다른 글
[Spring Boot] Spring Security 세션 인증 정책 예제 (0) | 2021.05.07 |
---|---|
[Spring Boot] Spring Security 로그아웃 처리 (0) | 2021.05.02 |
[Spring Boot] Spring Security 로그인 처리 (0) | 2021.05.02 |
[Spring Boot] Spring Security 사용자 정의 보안 기능 구현 (0) | 2021.05.02 |
[SpringFramework] RESTFul Web Service Example - GET, POST, PUT, DELETE 예제 (2) | 2018.08.06 |
댓글