spring security 관련 문의
- 작성자 :
- 배*훈
- 작성일 :
- 2010-09-11 14:44:05
- 조회수 :
- 3,251
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
안녕하세요 항상 수고가 많으십니다.
현재 전자정부 프레임을 이용하여 프로젝트를 진행하고 있습니다.
다름이 아니라 타 시스템과의 연동간의 문제가 발생하여 이렇게 문의를 합니다.
먼저 egovframe 단독으로 진행할때는 문제가 없구요
sso연동 과정 중에 spring security를 사용하면 자꾸 로그인 페이지로 이동하는 문제가 발생 하였습니다.
분석 결과 j_spring _security_check로 리다렉트 되고 actionMain.do로 이동하는 과정에서 쿠키에 JSESSIONID값이 변경이 되더 군요.
요부분에서 어떤 비교 과정이 있는거 같은데 하여튼 세션이 바뀌어 버리고
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();에서 걸려서 로그인 페이지로 되돌아 와 버립니다.
이 부분에 대해 해결 방법이 있는지 궁금합니다.
JSESSIONID를 일정하게 유지를 하는 방법이라든지 아니면 쿠키를 사용하지 않는 방법이라든요
좀 급한 부분이라 빠른 답변 부탁 드립니다.
현재 전자정부 프레임을 이용하여 프로젝트를 진행하고 있습니다.
다름이 아니라 타 시스템과의 연동간의 문제가 발생하여 이렇게 문의를 합니다.
먼저 egovframe 단독으로 진행할때는 문제가 없구요
sso연동 과정 중에 spring security를 사용하면 자꾸 로그인 페이지로 이동하는 문제가 발생 하였습니다.
분석 결과 j_spring _security_check로 리다렉트 되고 actionMain.do로 이동하는 과정에서 쿠키에 JSESSIONID값이 변경이 되더 군요.
요부분에서 어떤 비교 과정이 있는거 같은데 하여튼 세션이 바뀌어 버리고
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();에서 걸려서 로그인 페이지로 되돌아 와 버립니다.
이 부분에 대해 해결 방법이 있는지 궁금합니다.
JSESSIONID를 일정하게 유지를 하는 방법이라든지 아니면 쿠키를 사용하지 않는 방법이라든요
좀 급한 부분이라 빠른 답변 부탁 드립니다.
A
안녕하세요, 배기훈님
JSESSIONID 란 쿠키를 다른 어플리케이션에서 해당 Domain 쿠키로 만들어서
사용자의 인증을 한 해당 어플리케이션의 JSESSIONID 와 같은 이름으로 쿠키가 두개가
동시에 공유되게 됩니다.
이렇게 되었을 때 해당 어플리케이션의 실제 인증 JSESSIONID 쿠키값이 다른 어플리케
이션에서 굽힌 도메인 쿠키보다 뒤에 있게 되면 자동으로 서버의 Session 사라지고 로그아웃 로직을 타게 됩니다.
즉 JSESSIONID 라는 이름의 쿠키가 아닌 다른 이름의 쿠키가 session 인증으로 굽히게
된다면 문제가 사라질 것으로 판단됩니다
해당 WAS설정에서 JSESSIONID 쿠키의 이름을 바꾸게 설정하는 곳은 없는지 확인해보시기 바랍니다.
감사합니다
JSESSIONID 란 쿠키를 다른 어플리케이션에서 해당 Domain 쿠키로 만들어서
사용자의 인증을 한 해당 어플리케이션의 JSESSIONID 와 같은 이름으로 쿠키가 두개가
동시에 공유되게 됩니다.
이렇게 되었을 때 해당 어플리케이션의 실제 인증 JSESSIONID 쿠키값이 다른 어플리케
이션에서 굽힌 도메인 쿠키보다 뒤에 있게 되면 자동으로 서버의 Session 사라지고 로그아웃 로직을 타게 됩니다.
즉 JSESSIONID 라는 이름의 쿠키가 아닌 다른 이름의 쿠키가 session 인증으로 굽히게
된다면 문제가 사라질 것으로 판단됩니다
해당 WAS설정에서 JSESSIONID 쿠키의 이름을 바꾸게 설정하는 곳은 없는지 확인해보시기 바랍니다.
감사합니다