로그인 정책관리 등록이 안됩니다.
- 작성자 :
- 임*원
- 작성일 :
- 2010-10-13 11:01:34
- 조회수 :
- 3,052
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
좋은 답변에 항상 감사드립니다.
[첫번째질문]
현재 로그인 정책관리를 받아서 임포트 한 상태입니다.
정책관리 리스트를 보면 TEST1 유저와 제가 가입한 일반회원이 있습니다.
상세보기 하면 IP정보는 누락이 되어있고요
IP 대충 넣고 저장하면 다음과 같은 ClassCastException이 발생합니다.
2010-10-13 10:52:00,750 DEBUG [org.springframework.web.servlet.DispatcherServlet] Handler execution resulted in exception - forwarding to resolved error view: ModelAndView: reference to view with name 'cmm/egovError'; model is {exception=java.lang.ClassCastException: java.lang.String}
java.lang.ClassCastException: java.lang.String
at egovframework.com.sec.ram.security.userdetails.util.EgovUserDetailsHelper.getAuthenticatedUser(EgovUserDetailsHelper.java:49)
at egovframework.com.uat.uia.web.EgovLoginPolicyController.insertLoginPolicy(EgovLoginPolicyController.java:143)
(전체는 파일로 첨부했습니다)
[두번째질문]
TEST1 로 `업무`로 체크 후 로그인하면 잘됩니다.
제가 가입한 유저로 `일반`체크 후 로그인하면 alert도 없이
login_error=1 이란 파라미터가 url에 붙습니다.
왜그런지요.
[첫번째질문]
현재 로그인 정책관리를 받아서 임포트 한 상태입니다.
정책관리 리스트를 보면 TEST1 유저와 제가 가입한 일반회원이 있습니다.
상세보기 하면 IP정보는 누락이 되어있고요
IP 대충 넣고 저장하면 다음과 같은 ClassCastException이 발생합니다.
2010-10-13 10:52:00,750 DEBUG [org.springframework.web.servlet.DispatcherServlet] Handler execution resulted in exception - forwarding to resolved error view: ModelAndView: reference to view with name 'cmm/egovError'; model is {exception=java.lang.ClassCastException: java.lang.String}
java.lang.ClassCastException: java.lang.String
at egovframework.com.sec.ram.security.userdetails.util.EgovUserDetailsHelper.getAuthenticatedUser(EgovUserDetailsHelper.java:49)
at egovframework.com.uat.uia.web.EgovLoginPolicyController.insertLoginPolicy(EgovLoginPolicyController.java:143)
(전체는 파일로 첨부했습니다)
[두번째질문]
TEST1 로 `업무`로 체크 후 로그인하면 잘됩니다.
제가 가입한 유저로 `일반`체크 후 로그인하면 alert도 없이
login_error=1 이란 파라미터가 url에 붙습니다.
왜그런지요.
A
안녕하세요.. 임교원님..
오류의 원인은 로그인한 사용자 정보를 가져오는 부분에서 발생되었습니다.
이 경우는 로그인 처리 방식의 변경이 없으셨다면..
단순히 로그인 시간이 오래되거나 서버가 재기동된 상태로 판단됩니다.
해당 URL(/com/uat/uia/addLoginPolicy.do)이 롤관리에 등록되지 않았으면..
로그인 없이도 사용할 수 있기 때문에.. filter에 의해 로그인화면으로 이동하지 않은 것 같습니다.
이 경우 위 URL 패턴을 롤관리에 넣어주시면 될 것 같습니다.
두번째 질문의 경우는 로그인이 실패한 경우 login_error=1 파라미터와 함께 로그인 페이지로 넘어가도록 되어 있습니다.
context-security.xml 중 다음과 같은 부분입니다. (예시)
<http access-denied-page="/cmm/sec/ram/accessDenied.do" path-type="regex" lowercase-comparisons="false">
<form-login login-processing-url="/j_spring_security_check"
authentication-failure-url="/uat/uia/egovLoginUsr.do?login_error=1"
default-target-url="/uat/uia/actionMain.do"
login-page="/index.jsp?flag=L" />
<anonymous/>
<logout logout-url="/j_spring_security_logout" logout-success-url="/index.jsp" />
<concurrent-session-control max-sessions="500" exception-if-maximum-exceeded="true" expired-url="/index.jsp" />
</http>
이 경우 authentication-failure-url 항목이 인증실패시의 가는 페이지를 정의한 것입니다.
실제 프로젝트에 적용하실 때에는 login_error 파라미터의 값이 1인 경우 인증이 실패하였다는 메세지를 표시해 주시면 될 것 같습니다.
그럼.. 즐거운 하루되십시오.
감사합니다.
오류의 원인은 로그인한 사용자 정보를 가져오는 부분에서 발생되었습니다.
이 경우는 로그인 처리 방식의 변경이 없으셨다면..
단순히 로그인 시간이 오래되거나 서버가 재기동된 상태로 판단됩니다.
해당 URL(/com/uat/uia/addLoginPolicy.do)이 롤관리에 등록되지 않았으면..
로그인 없이도 사용할 수 있기 때문에.. filter에 의해 로그인화면으로 이동하지 않은 것 같습니다.
이 경우 위 URL 패턴을 롤관리에 넣어주시면 될 것 같습니다.
두번째 질문의 경우는 로그인이 실패한 경우 login_error=1 파라미터와 함께 로그인 페이지로 넘어가도록 되어 있습니다.
context-security.xml 중 다음과 같은 부분입니다. (예시)
<http access-denied-page="/cmm/sec/ram/accessDenied.do" path-type="regex" lowercase-comparisons="false">
<form-login login-processing-url="/j_spring_security_check"
authentication-failure-url="/uat/uia/egovLoginUsr.do?login_error=1"
default-target-url="/uat/uia/actionMain.do"
login-page="/index.jsp?flag=L" />
<anonymous/>
<logout logout-url="/j_spring_security_logout" logout-success-url="/index.jsp" />
<concurrent-session-control max-sessions="500" exception-if-maximum-exceeded="true" expired-url="/index.jsp" />
</http>
이 경우 authentication-failure-url 항목이 인증실패시의 가는 페이지를 정의한 것입니다.
실제 프로젝트에 적용하실 때에는 login_error 파라미터의 값이 1인 경우 인증이 실패하였다는 메세지를 표시해 주시면 될 것 같습니다.
그럼.. 즐거운 하루되십시오.
감사합니다.