authenticInterceptor 인증 체크가 필요없는 URL 질문드립니다.
- 작성자 :
- 김*신
- 작성일 :
- 2019-01-03 17:53:37
- 조회수 :
- 2,623
- 구분 :
- 공통컴포넌트
- 진행상태 :
- 완료
Q
스프링 시큐리티 적용중이며 인증체크가 필요없는 URL이 필요해서 인터셉터 방식으로 URL 세팅으로 했습니다.
<bean id="selectAnnotaionMapper" class="egovframework.rte.ptl.mvc.handler.SimpleUrlAnnotationHandlerMapping" p:order="1">
<property name="interceptors">
<list>
<ref local="authenticInterceptor" />
</list>
</property>
<!-- 로그인 체크가 필요한 URL 리스트 -->
<property name="urls">
<set>
<value>/**/*.do</value>
</set>
</property>
</bean>
<!-- 로그인 체크 인터셉터 -->
<bean id="authenticInterceptor" class="egovframework.com.cmm.interceptor.AuthenticInterceptor">
<!-- 인증 체크가 필요 없는 URL 리스트 -->
<property name="permittedURL">
<set>
<value>/uat/uia/[a-zA-Z]+\.do</value>
<value>/gis/map/popReportForecast.do</value>
</set>
</property>
</bean>
이렇게 해놨고 롤, 권한도 컴포넌트로 들어가있어서 해당 URL을 롤에 등록하고 ROLE_ANONYMOUS ( 사용자정보가 없는 경우 )에 권한을 줬습니다.
헌제 궁금한게 SpringSecurityLoginFilter 나 AuthenticIntercepter 까지도 EgovUserDetailsHelper.getAuthenticatedUser()가 Null인데
권한정보를 어떻게 가져오나요? 저기서 LoginVO를 가져와서 사용하는데 VO안에 authorCode 같이 권한 정보가 들어가있습니다.
그럼 로그인안한 사용자.. 혹은 다른사이트에서 해당 URL을 팝업으로 띄울경우에는 어떻게 하나요?
ROLE_ANONYMOUS를 세팅해줘야 하는거아닌지요. 혹시 이것을 따로 작업해줘야 하나요?
<bean id="selectAnnotaionMapper" class="egovframework.rte.ptl.mvc.handler.SimpleUrlAnnotationHandlerMapping" p:order="1">
<property name="interceptors">
<list>
<ref local="authenticInterceptor" />
</list>
</property>
<!-- 로그인 체크가 필요한 URL 리스트 -->
<property name="urls">
<set>
<value>/**/*.do</value>
</set>
</property>
</bean>
<!-- 로그인 체크 인터셉터 -->
<bean id="authenticInterceptor" class="egovframework.com.cmm.interceptor.AuthenticInterceptor">
<!-- 인증 체크가 필요 없는 URL 리스트 -->
<property name="permittedURL">
<set>
<value>/uat/uia/[a-zA-Z]+\.do</value>
<value>/gis/map/popReportForecast.do</value>
</set>
</property>
</bean>
이렇게 해놨고 롤, 권한도 컴포넌트로 들어가있어서 해당 URL을 롤에 등록하고 ROLE_ANONYMOUS ( 사용자정보가 없는 경우 )에 권한을 줬습니다.
헌제 궁금한게 SpringSecurityLoginFilter 나 AuthenticIntercepter 까지도 EgovUserDetailsHelper.getAuthenticatedUser()가 Null인데
권한정보를 어떻게 가져오나요? 저기서 LoginVO를 가져와서 사용하는데 VO안에 authorCode 같이 권한 정보가 들어가있습니다.
그럼 로그인안한 사용자.. 혹은 다른사이트에서 해당 URL을 팝업으로 띄울경우에는 어떻게 하나요?
ROLE_ANONYMOUS를 세팅해줘야 하는거아닌지요. 혹시 이것을 따로 작업해줘야 하나요?
A
안녕하세요.
표준프레임워크센터 입니다.
로그인페이지 처럼
모든 사용자가 접근할수 있는 페이지를 설정하시려고 하는듯 합니다.
공통컴포넌트 를 사용하신다면
우선
90. 롤관리에서 해당 "롤"을 등록하셔야 합니다.
두번째로
60. 권한관리에서
ROLE_ANONYMOUS에 해당 롤을 "등록"하시면
원하는 접근권한을 구현하실수 있을듯 합니다.
참고로
AuthenticIntercepter 는 세션방식인증인경우 사용되고
전자정부 시큐리티 간소화 설정의 경우는
EgovSpringSecurityLoginFilter를 사용합니다.
감사합니다.
표준프레임워크센터 입니다.
로그인페이지 처럼
모든 사용자가 접근할수 있는 페이지를 설정하시려고 하는듯 합니다.
공통컴포넌트 를 사용하신다면
우선
90. 롤관리에서 해당 "롤"을 등록하셔야 합니다.
두번째로
60. 권한관리에서
ROLE_ANONYMOUS에 해당 롤을 "등록"하시면
원하는 접근권한을 구현하실수 있을듯 합니다.
참고로
AuthenticIntercepter 는 세션방식인증인경우 사용되고
전자정부 시큐리티 간소화 설정의 경우는
EgovSpringSecurityLoginFilter를 사용합니다.
감사합니다.