일반 로그인, 인증서 로그인을 처리하는 컨트롤러 클래스(EgovLoginControler) 로그인 성공 후 리다이렉션 방법 문
- 작성자 :
- 이*
- 작성일 :
- 2020-12-21 14:27:21
- 조회수 :
- 3,579
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
안녕하세요.
회원정보수정 페이지를 URL로 직접 요청했을 때 인증된(로그인된) 사용자가 아니라면,
로그인 화면으로 리다이렉션을 시킨 뒤 (이때, returnUrl 파라미터 값에 회원정보수정 페이지의 URL을 encoding하여 넣어주었습니다.)
해당 로그인 화면에서 아이디/비밀번호를 입력하여 로그인을 요청 했을 때
EgovLoginController#actionSiteSecurityLogin() 메소드에서 로그인 인증 단계(회원 비밀번호 검사 등) 거진 후
로그인 정보를 Session에 담고, request 객체의 "returnUrl" 파라미터의 값이 NULL이 아니면, returnUrl 쪽으로 리다이렉션을 시키고 싶은 상황입니다.
하지만 전자정부 표준 프레임워크 시큐리티를 통해 동작하는 것 같은 EgovLoginController 클래스에서는 모든 인증단계가 끝나게 되면 리다이렉션을 할 수 없는 것 같아, 다른 방안이 있는지 확인 요청 드립니다.
감사합니다.
[* 알기로는 context-security.xml을 통해 URL 관리하면 인증 및 인가를 따져 Refer URL 쪽으로 리다이렉션이 자동으로 되는 것으로 알고 있지만, 현재 회원정보수정 페이지 URL은 XML에서 관리되고 있지 않습니다.]
회원정보수정 페이지를 URL로 직접 요청했을 때 인증된(로그인된) 사용자가 아니라면,
로그인 화면으로 리다이렉션을 시킨 뒤 (이때, returnUrl 파라미터 값에 회원정보수정 페이지의 URL을 encoding하여 넣어주었습니다.)
해당 로그인 화면에서 아이디/비밀번호를 입력하여 로그인을 요청 했을 때
EgovLoginController#actionSiteSecurityLogin() 메소드에서 로그인 인증 단계(회원 비밀번호 검사 등) 거진 후
로그인 정보를 Session에 담고, request 객체의 "returnUrl" 파라미터의 값이 NULL이 아니면, returnUrl 쪽으로 리다이렉션을 시키고 싶은 상황입니다.
하지만 전자정부 표준 프레임워크 시큐리티를 통해 동작하는 것 같은 EgovLoginController 클래스에서는 모든 인증단계가 끝나게 되면 리다이렉션을 할 수 없는 것 같아, 다른 방안이 있는지 확인 요청 드립니다.
감사합니다.
[* 알기로는 context-security.xml을 통해 URL 관리하면 인증 및 인가를 따져 Refer URL 쪽으로 리다이렉션이 자동으로 되는 것으로 알고 있지만, 현재 회원정보수정 페이지 URL은 XML에서 관리되고 있지 않습니다.]
A
안녕하세요.
표준프레임워크센터 입니다.
커스텀 작업의 경우 워낙 경우의수가 많아
답변에 제한이 많습니다.
기재하신 내용으로는 정확히 알수는 없으나
공통컴포넌트를 기반으로 개발시에 일반 세션로그인 모드일경우
다음 부분을 분석하신후
수정이 가능하실듯 합니다.
@RequestMapping(value = "/uat/uia/actionLogin.do")
public String actionLogin(
~~~~~~~
return "redirect:/uat/uia/actionMain.do";
시큐리티 간소화 서비스의 경우 다음 위키가이드를 참조하실수 있습니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rtea3.9
다음 부분입니다.
Server Security
- Architecture
- Authentication
- Authorization
- 설정 간소화
context-security.xml 설정관련하여서는
"설정 간소화"부분을 참고 하실수 있습니다.
감사합니다.
표준프레임워크센터 입니다.
커스텀 작업의 경우 워낙 경우의수가 많아
답변에 제한이 많습니다.
기재하신 내용으로는 정확히 알수는 없으나
공통컴포넌트를 기반으로 개발시에 일반 세션로그인 모드일경우
다음 부분을 분석하신후
수정이 가능하실듯 합니다.
@RequestMapping(value = "/uat/uia/actionLogin.do")
public String actionLogin(
~~~~~~~
return "redirect:/uat/uia/actionMain.do";
시큐리티 간소화 서비스의 경우 다음 위키가이드를 참조하실수 있습니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rtea3.9
다음 부분입니다.
Server Security
- Architecture
- Authentication
- Authorization
- 설정 간소화
context-security.xml 설정관련하여서는
"설정 간소화"부분을 참고 하실수 있습니다.
감사합니다.