Spring(3)
-
[Spring Security] 세션 제어하기
# 동시 세션 제어 API에 대하여 알아보자 invalidSessionUrl() : 세션이 유효하지 않을 때 이동할 페이지 경로 maximumSessions() : 최대로 허용 가능한 세션 수, -1 : 무제한으로 허용 maxSessionsPreventsLogin(true) : 최대 동시 접속 허용 세션 수를 초과한 경우 인증 실패 처리 maxSessionsPreventsLogin(false) : 최대 동시 접속 허용 세션 수를 초과한 경우 인증 기존 세션 만료 처리 expiredUrl() : 세션이 만료된 경우 이동 할 페이지 경로 http.sessionManagement( (session) -> session // 동시 세션 제어 .invalidSessionUrl("/invalid") // 세션이 유..
2024.01.04 -
[Spring Security] Remember Me 구현하기
# Remember Me 기능이란 세션이 만료되고 웹 브라우저가 종료된 후에도 어플리케이션이 사용자를 기억하는 기능이다. Ex. 사용자 ID 기억하기, 자동 로그인 Remember-Me 쿠키에 대한 HTTP 요청을 확인 후 토큰 기반 인증을 사용해 유효성을 검사하고 검증이 완료되면 로그인이 성공적으로 이루어진다. 사용자 라이프 사이클 인증 성공 👉 Remember-Me 쿠키 설정 인증 실패 👉 쿠키가 존재하면 쿠키 무효화 로그아웃 👉 쿠키가 존재하면 쿠키 무효화 # Remeber Me API에 대하여 알아보자 rememberMeParameter() : remember-me 파라미터 이름 설정, 기본 파라미터명은 remember-me tokenValiditySeconds() : 쿠키 만료 시간 설정, De..
2024.01.04 -
[Spring Security] Logout 구현하기
이번에는 로그아웃을 구현하는 코드에 대하여 작성해보려고 한다. # Logout 프로세스 클라이언트가 서버로 로그아웃 요청을 보낸다. 서버가 세션 무효화, 인증토큰 삭제, 쿠키 정보 삭제 처리 후 로그인 페이지로 리다이렉트 시킨다. # Logout API에 대하여 알아보자 logoutUrl() : 로그아웃 처리 경로 logoutSuccessUrl() : 로그아웃 성공 후 이동시킬 페이지 경로 addLogoutHandler : 로그아웃 핸들러, 로그아웃 성공 여부와 상관없이 실행 logoutSuccessHandler : 로그아웃 성공 핸들러 deleteCookies() : 로그아웃 후 지정한 이름의 쿠키를 삭제한다. @Configuration @EnableWebSecurity public class Secu..
2024.01.04