작성
·
235
0
둘다 동일한 계정으로 2명이상이 접근했을때 작동이 된다는것으로 알고있는데 헷갈려서 질문 드립니다. 둘다 세션을 체크하는것은 알겠는데 내부적으로 세션을 만들어서 저장을 하는건 SessionManagerFilter이고 ConcurrentSessionsFilter는 세션을 만료시켜서 Session을 비워주는 역할인건가요?
답변 1
0
네
SessionManagementFilter 는 사용자의 세션 등록이나 해커의 세션 조작을 막는 등의 전반적인 세션관리를 하는 필터라면 ConcurrentSessionFilter 는 동일한 계정으로 인증을 시도하고 있는 사용자 수가 얼마나 되는지 요청마다 체크해서 만약 최대 허용되는 세션 갯수를 초과했다면 현재 세션을 가지고 있는 사용자 중에 가장 먼저 인증을 한 사용자의 세션을 강제로 로그아웃 시켜서 세션을 무효화 시키는 역할을 하는 필터입니다.
이 때 동일한 계정으로 인증을 받은 사용자 중 어떤 사용자의 세션을 만료시킬지 정보를 알기 위해 ConcurrentSessionFilter 가 SessionManagermentFilter 를 참조하고 있습니다.
질문하신 내용으로 이해하시면 될 것 같습니다.