롤을 부여했는데 accessDeniedUrl을 탑니다..
- 작성자 :
- V*
- 작성일 :
- 2019-11-12 14:36:56
- 조회수 :
- 2,050
- 구분 :
- 공통컴포넌트
- 진행상태 :
- 완료
Q
안녕하세요 전자정부 3.7 사용하여 개발중입니다.
ROLE_ADMIN에 url 롤을 부여하였는데.. 접근이 거부되었다고 나오네요..
문제가 되는 것은 /sym/ccm/cca/ 입니다.
<?xml version="1.0" encoding="UTF-8"?>
<egov-security:config id="securityConfig"
loginUrl="/uat/uia/actionSecurityLogin.do"
logoutSuccessUrl="/uat/uia/actionMain.do"
loginFailureUrl="/uat/uia/actionSecurityLogin.do?login_error=1"
accessDeniedUrl="/sec/ram/accessDenied.do"
dataSource="egov.dataSource"
jdbcUsersByUsernameQuery="SELECT USER_ID, ESNTL_ID AS PASSWORD, 1 ENABLED, USER_NM, USER_ZIP,
USER_ADRES, USER_EMAIL, USER_SE, '-' ORGNZT_ID, ESNTL_ID,
'-' ORGNZT_NM FROM COMVNUSERMASTER WHERE CONCAT(USER_SE, USER_ID) = ?"
jdbcAuthoritiesByUsernameQuery="SELECT A.SCRTY_DTRMN_TRGET_ID USER_ID, A.AUTHOR_CODE AUTHORITY
FROM LETTNEMPLYRSCRTYESTBS A, COMVNUSERMASTER B
WHERE A.SCRTY_DTRMN_TRGET_ID = B.ESNTL_ID AND B.USER_ID = ?"
jdbcMapClass="egovframework.let.uat.uia.service.impl.EgovSessionMapping"
requestMatcherType="regex"
hash="plaintext"
hashBase64="false"
concurrentMaxSessons="1"
concurrentExpiredUrl="/uat/uia/actionMain.do"
defaultTargetUrl="/uat/uia/actionMain.do"
xssProtection="false"
csrf="true"
/>
<egov-security:secured-object-config id="securedObjectConfig"
sqlHierarchicalRoles="
SELECT a.CHLDRN_ROLE child, a.PARNTS_ROLE parent
FROM LETTNROLES_HIERARCHY a LEFT JOIN LETTNROLES_HIERARCHY b on (a.CHLDRN_ROLE = b.PARNTS_ROLE)"
sqlRolesAndUrl="
SELECT a.ROLE_PTTRN url, b.AUTHOR_CODE authority
FROM LETTNROLEINFO a, LETTNAUTHORROLERELATE b
WHERE a.ROLE_CODE = b.ROLE_CODE AND a.ROLE_TY = 'url'
ORDER BY a.ROLE_SORT"
..
/>
<egov-security:initializer id="initializer" supportMethod="true" supportPointcut="false" />
</beans>
사용중인 context-security.xml 입니다.
여기서 sqlRolesAndUrl의 속성값 쿼리로 쿼리해보면,
# URL AUTHORITY
1 /sym/ccm/cca/.*.do.* ROLE_ADMIN
URL 패턴이 이렇게 있는데.. 여기로 들어가면 접근이 거부되네요..
롤을 지웠다가 다시주고 서버를 재시작해도 안되는데...
어디를 더 확인해봐야 할까요..
ROLE_ADMIN에 url 롤을 부여하였는데.. 접근이 거부되었다고 나오네요..
문제가 되는 것은 /sym/ccm/cca/ 입니다.
<?xml version="1.0" encoding="UTF-8"?>
<egov-security:config id="securityConfig"
loginUrl="/uat/uia/actionSecurityLogin.do"
logoutSuccessUrl="/uat/uia/actionMain.do"
loginFailureUrl="/uat/uia/actionSecurityLogin.do?login_error=1"
accessDeniedUrl="/sec/ram/accessDenied.do"
dataSource="egov.dataSource"
jdbcUsersByUsernameQuery="SELECT USER_ID, ESNTL_ID AS PASSWORD, 1 ENABLED, USER_NM, USER_ZIP,
USER_ADRES, USER_EMAIL, USER_SE, '-' ORGNZT_ID, ESNTL_ID,
'-' ORGNZT_NM FROM COMVNUSERMASTER WHERE CONCAT(USER_SE, USER_ID) = ?"
jdbcAuthoritiesByUsernameQuery="SELECT A.SCRTY_DTRMN_TRGET_ID USER_ID, A.AUTHOR_CODE AUTHORITY
FROM LETTNEMPLYRSCRTYESTBS A, COMVNUSERMASTER B
WHERE A.SCRTY_DTRMN_TRGET_ID = B.ESNTL_ID AND B.USER_ID = ?"
jdbcMapClass="egovframework.let.uat.uia.service.impl.EgovSessionMapping"
requestMatcherType="regex"
hash="plaintext"
hashBase64="false"
concurrentMaxSessons="1"
concurrentExpiredUrl="/uat/uia/actionMain.do"
defaultTargetUrl="/uat/uia/actionMain.do"
xssProtection="false"
csrf="true"
/>
<egov-security:secured-object-config id="securedObjectConfig"
sqlHierarchicalRoles="
SELECT a.CHLDRN_ROLE child, a.PARNTS_ROLE parent
FROM LETTNROLES_HIERARCHY a LEFT JOIN LETTNROLES_HIERARCHY b on (a.CHLDRN_ROLE = b.PARNTS_ROLE)"
sqlRolesAndUrl="
SELECT a.ROLE_PTTRN url, b.AUTHOR_CODE authority
FROM LETTNROLEINFO a, LETTNAUTHORROLERELATE b
WHERE a.ROLE_CODE = b.ROLE_CODE AND a.ROLE_TY = 'url'
ORDER BY a.ROLE_SORT"
..
/>
<egov-security:initializer id="initializer" supportMethod="true" supportPointcut="false" />
</beans>
사용중인 context-security.xml 입니다.
여기서 sqlRolesAndUrl의 속성값 쿼리로 쿼리해보면,
# URL AUTHORITY
1 /sym/ccm/cca/.*.do.* ROLE_ADMIN
URL 패턴이 이렇게 있는데.. 여기로 들어가면 접근이 거부되네요..
롤을 지웠다가 다시주고 서버를 재시작해도 안되는데...
어디를 더 확인해봐야 할까요..
A
안녕하세요.
표준프레임워크센터 입니다.
공통컴포넌트에서
다음 위키를 참고하실수 있습니다.
롤관리에서 롤을 추가하셔야 합니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:com:v3.8:sec:%EB%A1%A4%EA%B4%80%EB%A6%AC
권한관리 > 권한롤관리에서
권한에 롤을 등록하시면 됩니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:com:v3.8:sec:%EA%B6%8C%ED%95%9C%EB%B3%84_%EB%A1%A4%EA%B4%80%EB%A6%AC
위 사항이 핵심 입니다.
위키페이지에 관련 테이블도 명시되어 있으니
참고하시면 될듯 합니다.
감사합니다.
표준프레임워크센터 입니다.
공통컴포넌트에서
다음 위키를 참고하실수 있습니다.
롤관리에서 롤을 추가하셔야 합니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:com:v3.8:sec:%EB%A1%A4%EA%B4%80%EB%A6%AC
권한관리 > 권한롤관리에서
권한에 롤을 등록하시면 됩니다.
https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:com:v3.8:sec:%EA%B6%8C%ED%95%9C%EB%B3%84_%EB%A1%A4%EA%B4%80%EB%A6%AC
위 사항이 핵심 입니다.
위키페이지에 관련 테이블도 명시되어 있으니
참고하시면 될듯 합니다.
감사합니다.