공부/Spring
http태그의 use-expressions
Egomi
2017. 4. 10. 12:15
* 개인 공부 공간입니다. 옳지 않은 정보일 수도 있으니 참고바랍니다. *
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <http use-expressions="true"> <!-- 로그인 창을 알아서 마련하려면 auto-config="true"하면 자동 생성 --> <!-- 마이페이지는 인증 정보에따라 페이지를 분배해주는 라우터 역할 --> <form-login login-page="/joinus/login" default-target-url="/joinus/mypage" always-use-default-target="true"/> <logout logout-success-url="/index"/> <!-- 로그아웃 후 이동할 경로 --> <intercept-url pattern="/customer/notice-detail" access="hasRole('ROLE_USER')" /> <intercept-url pattern="/joinus/mypage" access="hasRole('ROLE_USER')" /> <!-- 관리자 권한 부여하기 --> <intercept-url pattern="/admin/**" access="hasRole('ROLE_ADMIN')" /> <!-- 강사의 권한 부여하기 --> <intercept-url pattern="/teacher/**" access="hasRole('ROLE_TEACHER')" /> </http> | cs |
use-expressions="true" 가 되면, Spring El 표기법을 사용하게 된다.
use-expressions 옵션은 사용자의 권한 뿐만 아니라, ip주소 등 검사 요소를 추가해 보안을 높여준다.
<http use-expressions="true">
<intercept-url pattern="/admin*"
access="hasRole('admin') and hasIpAddress('192.168.1.0/24')"/>
...
</http>
참고사이트 ) http://docs.spring.io/spring-security/site/docs/3.0.x/reference/el-access.html
주의할 점은, 기존에 access="권한" 해주었던 것을, hasRole('권한')으로 Spring El 표기법으로 바꿔줘야한다.