【发布时间】:2011-07-11 23:03:30
【问题描述】:
我有 url 级别的安全性,还有方法级别。但是一旦用户在 url 级别进行了身份验证,我的方法级别的安全性就会被绕过!我进一步查看了这个,似乎以下 url 级别的安全性:
intercept-url pattern="/**" access="ROLE_USER"
将覆盖我的任何方法级别的安全性(例如下面的代码 sn-p)。
@PreAuthorize("hasRole('ROLE_SUPERVISOR')")
public String supervisorRoleOnly()
{
return "success!!!" ;
}
我认为这个方法会抛出一个拒绝访问错误,但是不,任何 ROLE_USER 一旦他们已经在 url 级别进行了身份验证,就可以访问这个方法。
我的security-config.xml 里确实有这个:
<global-method-security pre-post-annotations="enabled" >
<expression-handler ref="expressionHandler"/>
</global-method-security>
我错过了什么?
【问题讨论】:
标签: spring-security