[재문의] 공통컴포넌트 TEST1으로 접속시 기업회원관리 화면 404에러 문의요.
- 작성자 :
- 조*석
- 작성일 :
- 2015-06-08 13:21:37
- 조회수 :
- 1,245
- 구분 :
- 공통컴포넌트
- 진행상태 :
- 완료
Q
<!--인증된 유저의 LoginVO, 권한, 인증 여부를 확인 할 수있는 서비스 클래스-->
<bean id="egovUserDetailsHelper" class="egovframework.com.cmm.util.EgovUserDetailsHelper">
<property name="egovUserDetailsService">
<!-- 원하는 bean id를 아래에 ref 태그에 적용한다 -->
<ref bean="egovUserDetailsSecurityService" />
</property>
</bean>
<!-- 2. 스프링 시큐리티를 이용한 인증을 사용할 빈 -->
<bean id="egovUserDetailsSecurityService" class="egovframework.com.sec.ram.service.impl.EgovUserDetailsSecurityServiceImpl"/>
현제 이설정으로 로그인하는데요.
EgovUserDetailsSecurityServiceImpl 안에 egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper 를 호출합니다.
/**
* 인증된 사용자 여부를 체크한다.
* @return 인증된 사용자 여부(TRUE / FALSE)
*/
public static Boolean isAuthenticated() {
SecurityContext context = SecurityContextHolder.getContext();
Authentication authentication = context.getAuthentication();
if (EgovObjectUtil.isNull(authentication)) {
LOGGER.debug("## authentication object is null!!");
return Boolean.FALSE;
}
String username = authentication.getName();
if (username.equals("anonymousUser")) { // 기존 2.0.8의 경우 'roleAnonymous'
LOGGER.debug("## username is {}", username);
return Boolean.FALSE;
}
Object principal = authentication.getPrincipal();
return (Boolean.valueOf(!EgovObjectUtil.isNull(principal)));
}
이렇게 되어 있는데
화면 #기업회원관리 #업무사용자관리 #일반회원관리 화면 접속시에
// 미인증 사용자에 대한 보안처리
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (isAuthenticated) {
return "index";
}
이부분에서 true가 되면서 index페이지로 분기합니다. 프로그램을 고쳐야하는건가요? 다른설정을 해줘야하는건가요.
반대로 코딩하면 다른화면들이 안나올텐데 어떻게 해야 되는지 모르겠습니다.
<bean id="egovUserDetailsHelper" class="egovframework.com.cmm.util.EgovUserDetailsHelper">
<property name="egovUserDetailsService">
<!-- 원하는 bean id를 아래에 ref 태그에 적용한다 -->
<ref bean="egovUserDetailsSecurityService" />
</property>
</bean>
<!-- 2. 스프링 시큐리티를 이용한 인증을 사용할 빈 -->
<bean id="egovUserDetailsSecurityService" class="egovframework.com.sec.ram.service.impl.EgovUserDetailsSecurityServiceImpl"/>
현제 이설정으로 로그인하는데요.
EgovUserDetailsSecurityServiceImpl 안에 egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper 를 호출합니다.
/**
* 인증된 사용자 여부를 체크한다.
* @return 인증된 사용자 여부(TRUE / FALSE)
*/
public static Boolean isAuthenticated() {
SecurityContext context = SecurityContextHolder.getContext();
Authentication authentication = context.getAuthentication();
if (EgovObjectUtil.isNull(authentication)) {
LOGGER.debug("## authentication object is null!!");
return Boolean.FALSE;
}
String username = authentication.getName();
if (username.equals("anonymousUser")) { // 기존 2.0.8의 경우 'roleAnonymous'
LOGGER.debug("## username is {}", username);
return Boolean.FALSE;
}
Object principal = authentication.getPrincipal();
return (Boolean.valueOf(!EgovObjectUtil.isNull(principal)));
}
이렇게 되어 있는데
화면 #기업회원관리 #업무사용자관리 #일반회원관리 화면 접속시에
// 미인증 사용자에 대한 보안처리
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (isAuthenticated) {
return "index";
}
이부분에서 true가 되면서 index페이지로 분기합니다. 프로그램을 고쳐야하는건가요? 다른설정을 해줘야하는건가요.
반대로 코딩하면 다른화면들이 안나올텐데 어떻게 해야 되는지 모르겠습니다.
A
안녕하세요. 표준프레임워크센터입니다.
공통컴포넌트 인증 기본 샘플이 더미 사용자 기준으로 되어있기 때문에 if (isAuthenticated) 로 처리되어있습니다.
사용 목적에 따라 if (!isAuthenticated) 코드를 바꾸시면 될꺼 같습니다.
감사합니다.
공통컴포넌트 인증 기본 샘플이 더미 사용자 기준으로 되어있기 때문에 if (isAuthenticated) 로 처리되어있습니다.
사용 목적에 따라 if (!isAuthenticated) 코드를 바꾸시면 될꺼 같습니다.
감사합니다.