인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

토끼개살님의 프로필 이미지
토끼개살

작성한 질문수

스프링 시큐리티

11) 스프링 시큐리티 필터 및 아키텍처 정리

ConcurrentSessionFilter와 SessionManagerFilter차이점이 무엇인가요?

작성

·

235

0

둘다 동일한 계정으로 2명이상이 접근했을때 작동이 된다는것으로 알고있는데 헷갈려서 질문 드립니다. 둘다 세션을 체크하는것은 알겠는데 내부적으로 세션을 만들어서 저장을 하는건 SessionManagerFilter이고 ConcurrentSessionsFilter는 세션을 만료시켜서 Session을 비워주는 역할인건가요?

답변 1

0

정수원님의 프로필 이미지
정수원
지식공유자

네 

SessionManagementFilter 는 사용자의 세션 등록이나 해커의 세션 조작을 막는 등의 전반적인 세션관리를 하는 필터라면 ConcurrentSessionFilter 는 동일한 계정으로 인증을 시도하고 있는 사용자 수가 얼마나 되는지 요청마다 체크해서 만약  최대 허용되는 세션 갯수를 초과했다면 현재 세션을 가지고 있는 사용자 중에 가장 먼저 인증을 한 사용자의 세션을 강제로 로그아웃 시켜서 세션을 무효화 시키는 역할을 하는 필터입니다.

이 때 동일한 계정으로 인증을 받은 사용자 중 어떤 사용자의 세션을 만료시킬지 정보를 알기 위해 ConcurrentSessionFilter 가 SessionManagermentFilter 를 참조하고 있습니다.

질문하신 내용으로 이해하시면 될 것 같습니다.

토끼개살님의 프로필 이미지
토끼개살

작성한 질문수

질문하기