egov security 관련 문의입니다.
- 작성자 :
- 김*현
- 작성일 :
- 2021-10-14 16:03:53
- 조회수 :
- 3,266
- 구분 :
- 개발환경 / 3.9
- 진행상태 :
- 완료
Q
egov security를 사용하여 로그인을 적용하고 있는데 관련 테이블은 따로 사용은 안하고 저희 쪽 테이블에 맞춰서 사용중 입니다.
EgovSpringSecurityLoginFilter.java 파일에서 아래와 같은 소스를 구현했을때
beans 객체에 값이 아무 것도 담기지 않아 size()가 0이 나오며 에러가 발생합니다.
해당 beans에 는 어떤값이 들어가며 어느쪽에서 값이 추가되는지 궁금합니다.
UsernamePasswordAuthenticationFilter springSecurity = null;
Map<String, UsernamePasswordAuthenticationFilter> beans = act.getBeansOfType(UsernamePasswordAuthenticationFilter.class);
if (beans.size() > 0) {
springSecurity = (UsernamePasswordAuthenticationFilter) beans.values().toArray()[0];
} else {
LOGGER.error("No AuthenticationProcessingFilter");
throw new IllegalStateException("No AuthenticationProcessingFilter");
}
//springSecurity.setContinueChainBeforeSuccessfulAuthentication(false); // false 이면 chain 처리 되지 않음.. (filter가 아닌 경우 false로...)
LOGGER.debug("before security filter call....");
springSecurity.doFilter(new RequestWrapperForSecurity(httpRequest, loginVO.getUserSe() + loginVO.getId(), loginVO.getUniqId()), httpResponse, chain);
LOGGER.info("인증후 : EgovUserDetailsHelper.isAuthenticated() "+EgovUserDetailsHelper.isAuthenticated());
LOGGER.info("인증후 : EgovUserDetailsHelper.getAuthenticatedUser() "+EgovUserDetailsHelper.getAuthenticatedUser());
LOGGER.debug("after security filter call....");
EgovSpringSecurityLoginFilter.java 파일에서 아래와 같은 소스를 구현했을때
beans 객체에 값이 아무 것도 담기지 않아 size()가 0이 나오며 에러가 발생합니다.
해당 beans에 는 어떤값이 들어가며 어느쪽에서 값이 추가되는지 궁금합니다.
UsernamePasswordAuthenticationFilter springSecurity = null;
Map<String, UsernamePasswordAuthenticationFilter> beans = act.getBeansOfType(UsernamePasswordAuthenticationFilter.class);
if (beans.size() > 0) {
springSecurity = (UsernamePasswordAuthenticationFilter) beans.values().toArray()[0];
} else {
LOGGER.error("No AuthenticationProcessingFilter");
throw new IllegalStateException("No AuthenticationProcessingFilter");
}
//springSecurity.setContinueChainBeforeSuccessfulAuthentication(false); // false 이면 chain 처리 되지 않음.. (filter가 아닌 경우 false로...)
LOGGER.debug("before security filter call....");
springSecurity.doFilter(new RequestWrapperForSecurity(httpRequest, loginVO.getUserSe() + loginVO.getId(), loginVO.getUniqId()), httpResponse, chain);
LOGGER.info("인증후 : EgovUserDetailsHelper.isAuthenticated() "+EgovUserDetailsHelper.isAuthenticated());
LOGGER.info("인증후 : EgovUserDetailsHelper.getAuthenticatedUser() "+EgovUserDetailsHelper.getAuthenticatedUser());
LOGGER.debug("after security filter call....");
환경정보
-
- OS 정보 :
- 표준프레임워크 버전 :
- JDK(JRE) 정보 :
- WAS 정보 :
- DB 정보 :
- 기타 환경 정보 :
A
안녕하세요.
표준프레임워크센터 입니다.
시큐리티 간소화 서비스에서
DB 테이블을 변경한 경우
표준프레임워크 v3.10을 기준으로 한다면
다음 위키 가이드를 참조 하시면 도움이 되실듯 합니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte3.10
다음 섹션 링크를 확인 하시면 됩니다.
Server Security
- Architecture
- Authentication
- Authorization
- 설정 간소화
공통컴포넌트기반으로 사용하시는 경우
다음 설정파일에서
/src/main/resources/egovframework/spring/com/context-security.xml
테이블명 또는 컬럼명등 쿼리 수정이 필요할듯 합니다.
감사합니다.
표준프레임워크센터 입니다.
시큐리티 간소화 서비스에서
DB 테이블을 변경한 경우
표준프레임워크 v3.10을 기준으로 한다면
다음 위키 가이드를 참조 하시면 도움이 되실듯 합니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte3.10
다음 섹션 링크를 확인 하시면 됩니다.
Server Security
- Architecture
- Authentication
- Authorization
- 설정 간소화
공통컴포넌트기반으로 사용하시는 경우
다음 설정파일에서
/src/main/resources/egovframework/spring/com/context-security.xml
테이블명 또는 컬럼명등 쿼리 수정이 필요할듯 합니다.
감사합니다.