Session Timeout 시 interceptor 사용
- 작성자 :
- 박*욱
- 작성일 :
- 2017-08-17 14:24:50
- 조회수 :
- 2,106
- 구분 :
- 공통컴포넌트
- 진행상태 :
- 완료
Q
안녕하세요
스프링시큐리티 간소화 이용하여 로그인 기능과 전자정부프레임워크 기본게시판으로 만들었습니다.
로그인 이후 세션 타임아웃이 되면 인터셉터를 통하여 특정페이지로 이동할려고 합니다.
egov-com-servlet.xml
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/**"/>
<mvc:exclude-mapping path="/uat/uia/**" />
<bean class="egovframework.com.cmm.interceptor.SessionInterceptor" />
</mvc:interceptor>
</mvc:interceptors>
로그인을 제외한 모든 요청에 대해서 처리하도록 하였는데 세션타임아웃시에는 아래 요청에 대해서는 인터셉터가 수행되지 않습니다.
/cop/bbs/selectBoardList.do
/uss/olh/qna/QnaListInqire.do
/uss/olh/qnm/QnaAnswerListInqire.do
혹시 이유가 뭘까요?
설정이 잘못되었는지 확인 부탁드립니다.
web.xml과 context-security.xml 첨부합니다.
스프링시큐리티 간소화 이용하여 로그인 기능과 전자정부프레임워크 기본게시판으로 만들었습니다.
로그인 이후 세션 타임아웃이 되면 인터셉터를 통하여 특정페이지로 이동할려고 합니다.
egov-com-servlet.xml
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/**"/>
<mvc:exclude-mapping path="/uat/uia/**" />
<bean class="egovframework.com.cmm.interceptor.SessionInterceptor" />
</mvc:interceptor>
</mvc:interceptors>
로그인을 제외한 모든 요청에 대해서 처리하도록 하였는데 세션타임아웃시에는 아래 요청에 대해서는 인터셉터가 수행되지 않습니다.
/cop/bbs/selectBoardList.do
/uss/olh/qna/QnaListInqire.do
/uss/olh/qnm/QnaAnswerListInqire.do
혹시 이유가 뭘까요?
설정이 잘못되었는지 확인 부탁드립니다.
web.xml과 context-security.xml 첨부합니다.
A
안녕하세요.
현재 설정을 보면 springSecurityFilterChain과 interceptor를 혼용해서 사용하고 계셔서 발생하는 사항입니다.
즉, 스프링 시큐리트의 권한 체크는 FilterChain이 가장먼저 실행 한 이후 권한 인증을 된 경우 interceptor가 설정 되어있으면 실행됩니다.
만약 세션이 타임아웃되면 FilterChain에서 인증 체크를 통과하지 못하여 interceptor까지 전달되지 않습니다.
어떤 이유에서든 세션타임아웃을 interceptor에서 실행하시려면 FilterChain방식에서 interceptor 인증 방식으로 전환하시고
이후 interceptor에서 인증, 권한 체크, 세션까지 체크하는 로직을 추가하셔야 할 듯 합니다.
참고로 표준프레임워크는 FilterChain방식의 인증 권한 체크를 권장하고 있으며 interceptor의 경우는 별도로 로직을 구성하셔야 합니다.
감사합니다.
,안녕하세요.
현재 설정을 보면 springSecurityFilterChain과 interceptor를 혼용해서 사용하고 계셔서 발생하는 사항입니다.
즉, 스프링 시큐리트의 권한 체크는 FilterChain이 가장먼저 하며 이후 권한 인증을 된경우 interceptor가 설정 되어있으면 실행됩니다.
만약 세션이 타임아웃되면 FilterChain에서 인증 체크를 통과하지 못하여 interceptor까지 전달되지 않습니다.
어떤 이유에서든 세션타임아웃을 interceptor에서 실행하시려면 FilterChain방식에서 interceptor 인증 방식으로 전환하시고
이후 interceptor에서 인증, 권한 체크, 세션까지 체크하는 로직을 추가하셔야 할 듯 합니다.
참고로 표준프레임워크는 FilterChain방식의 인증 권한 체크를 권장하고 있으며 interceptor의 경우는 별도로 로직을 구성하셔야 합니다.
감사합니다.
현재 설정을 보면 springSecurityFilterChain과 interceptor를 혼용해서 사용하고 계셔서 발생하는 사항입니다.
즉, 스프링 시큐리트의 권한 체크는 FilterChain이 가장먼저 실행 한 이후 권한 인증을 된 경우 interceptor가 설정 되어있으면 실행됩니다.
만약 세션이 타임아웃되면 FilterChain에서 인증 체크를 통과하지 못하여 interceptor까지 전달되지 않습니다.
어떤 이유에서든 세션타임아웃을 interceptor에서 실행하시려면 FilterChain방식에서 interceptor 인증 방식으로 전환하시고
이후 interceptor에서 인증, 권한 체크, 세션까지 체크하는 로직을 추가하셔야 할 듯 합니다.
참고로 표준프레임워크는 FilterChain방식의 인증 권한 체크를 권장하고 있으며 interceptor의 경우는 별도로 로직을 구성하셔야 합니다.
감사합니다.
,안녕하세요.
현재 설정을 보면 springSecurityFilterChain과 interceptor를 혼용해서 사용하고 계셔서 발생하는 사항입니다.
즉, 스프링 시큐리트의 권한 체크는 FilterChain이 가장먼저 하며 이후 권한 인증을 된경우 interceptor가 설정 되어있으면 실행됩니다.
만약 세션이 타임아웃되면 FilterChain에서 인증 체크를 통과하지 못하여 interceptor까지 전달되지 않습니다.
어떤 이유에서든 세션타임아웃을 interceptor에서 실행하시려면 FilterChain방식에서 interceptor 인증 방식으로 전환하시고
이후 interceptor에서 인증, 권한 체크, 세션까지 체크하는 로직을 추가하셔야 할 듯 합니다.
참고로 표준프레임워크는 FilterChain방식의 인증 권한 체크를 권장하고 있으며 interceptor의 경우는 별도로 로직을 구성하셔야 합니다.
감사합니다.