로그아웃이 정상적으로 되지 않는것 같습니다
- 작성자 :
- V*
- 작성일 :
- 2019-06-25 15:04:47
- 조회수 :
- 2,183
- 구분 :
- 공통컴포넌트
- 진행상태 :
- 완료
Q
안녕하세요.
전자정부 공통컴포넌트를 통해 로그인/로그아웃 기능을 구현한 상태입니다
로그인을 해야만 접근할 수 있는 화면이 있는데요.
이 페이지에서 로그아웃을 하면 로그인 화면으로 이동되는데,
여기서 백스페이스를 누르면 그 화면으로 접근이 되고 모든 기능이 작동해버립니다 ..
권한/롤/메뉴정보 모두 비로그인 권한에는 부여하지 않은 것인데...
컨트롤러단의 로그아웃 소스는 아래와 같습니다 ..
@RequestMapping(value="/uat/uia/actionLogout.do")
public String actionLogout(HttpServletRequest request, ModelMap model, HttpServletResponse response) throws Exception {
SessionListener sListener = SessionListener.getInstance();
sListener.setLogoutSession(request.getSession());
request.getSession().setAttribute("LoginVO", null);
SecurityContext context = SecurityContextHolder.getContext();
Authentication authentication = context.getAuthentication();
if (authentication.getPrincipal() instanceof EgovUserDetails) {
EgovUserDetails details = (EgovUserDetails) authentication.getPrincipal();
details.setEgovUserVO(null);
}
return "uat/uia/EgovLoginUsr";
}
전자정부 공통컴포넌트를 통해 로그인/로그아웃 기능을 구현한 상태입니다
로그인을 해야만 접근할 수 있는 화면이 있는데요.
이 페이지에서 로그아웃을 하면 로그인 화면으로 이동되는데,
여기서 백스페이스를 누르면 그 화면으로 접근이 되고 모든 기능이 작동해버립니다 ..
권한/롤/메뉴정보 모두 비로그인 권한에는 부여하지 않은 것인데...
컨트롤러단의 로그아웃 소스는 아래와 같습니다 ..
@RequestMapping(value="/uat/uia/actionLogout.do")
public String actionLogout(HttpServletRequest request, ModelMap model, HttpServletResponse response) throws Exception {
SessionListener sListener = SessionListener.getInstance();
sListener.setLogoutSession(request.getSession());
request.getSession().setAttribute("LoginVO", null);
SecurityContext context = SecurityContextHolder.getContext();
Authentication authentication = context.getAuthentication();
if (authentication.getPrincipal() instanceof EgovUserDetails) {
EgovUserDetails details = (EgovUserDetails) authentication.getPrincipal();
details.setEgovUserVO(null);
}
return "uat/uia/EgovLoginUsr";
}
A
안녕하세요.
표준프레임워크센터 입니다.
표준프레임워크 시큐리티 간소화 서비스를 사용하시는 경우
로그아웃시 다음 로그아웃 필터를 거치게 됩니다.
버전이 명시되지 않아서
공통컴포넌트 v3.8을 예로 들면
다음 부분입니다.
FilterRegistration.Dynamic egovSpringSecurityLogoutFilter = servletContext.addFilter("egovSpringSecurityLogoutFilter", new EgovSpringSecurityLogoutFilter());
egovSpringSecurityLogoutFilter.addMappingForUrlPatterns(null, false, "/uat/uia/actionLogout.do");
다음파일에 로그아웃 필터가 정의되어 있습니다.
src/main/java/egovframework/com/cmm/config/EgovWebApplicationInitializer.java
해당 부분을 확인해 보셔야 할듯 합니다.
감사합니다.
표준프레임워크센터 입니다.
표준프레임워크 시큐리티 간소화 서비스를 사용하시는 경우
로그아웃시 다음 로그아웃 필터를 거치게 됩니다.
버전이 명시되지 않아서
공통컴포넌트 v3.8을 예로 들면
다음 부분입니다.
FilterRegistration.Dynamic egovSpringSecurityLogoutFilter = servletContext.addFilter("egovSpringSecurityLogoutFilter", new EgovSpringSecurityLogoutFilter());
egovSpringSecurityLogoutFilter.addMappingForUrlPatterns(null, false, "/uat/uia/actionLogout.do");
다음파일에 로그아웃 필터가 정의되어 있습니다.
src/main/java/egovframework/com/cmm/config/EgovWebApplicationInitializer.java
해당 부분을 확인해 보셔야 할듯 합니다.
감사합니다.