[Spring Security] JSP 파일에서 Custom Tag를 이용한 권한 체크

2018. 4. 25. 14:56JAVA/Spring Security

Spring Security 설정 파일에서 다음과 같이 설정한다.


@Configuration

@Import({SecurityBeanConfig.class})

@EnableWebSecurity

public class SecurityConfig extends WebSecurityConfigurerAdapter {


  ...


@Autowired

private FilterSecurityInterceptor filterSecurityInterceptor;


  ...


@Override

public void configure(WebSecurity web) throws Exception {

web

.ignoring()

.antMatchers("/resources/**")

.and()

.privilegeEvaluator(webInvocationPrivilegeEvaluator());

}  


   ...


/**

* Cusome Tag를 사용하여 Web 페이지에서 권한을 체크하고 싶을 때 사용함.

*

* <code>

* <sec:authorize url="/admin/stats/index.jsp">

* <a href="<spring:url value="/admin/stats/index.jsp"/>">link</a>

* </sec:authorize>

* </code>

*

* @return

*/

@Bean

public WebInvocationPrivilegeEvaluator webInvocationPrivilegeEvaluator(){

return new DefaultWebInvocationPrivilegeEvaluator(filterSecurityInterceptor);

}

}


사용은 위의  주석과 같이


체크하고자 하는 경로를 넣어 주면 접근이 가능한지 여부를 판단하여 준다.


<sec:authorize url="/admin/stats/index.jsp">

<a href="<spring:url value="/admin/stats/index.jsp"/>">link</a>

</sec:authorize>