세션을 통한 사용자 인증 구현시 로그아웃 처리에 대해

 

사용자의 인증정보(로그인 정보)를 세션에 저장하고 관리할 떄

 

사용자가 로그아웃을 하면 이를 처리하는 방법중 다음과 같은 방법이 있다.

 

1. 세션을 아예 날려버리기

request.getSession().invalidate(); // 현재 세션 무효화

 

2. 해당 세션은 유지하고 로그인 정보만 날려버리기

RequestContextHolder.getRequestAttributes().removeAttribute("LoginVO", RequestAttributes.SCOPE_SESSION);

 

일반적으로 로그아웃은 모든 세션 데이터를 완전히 제거하는 첫번째 방법이 일반적이지만 

애플리케이션의 요구사항에 따라 두번째 방법을 사용하기도한다.