【发布时间】:2012-11-08 13:54:53
【问题描述】:
我想问一下如何处理(例如捕获、记录和重定向流)来自“安全注释”(@PreAuthorize、@Secured 等)的 AccessDeniedException?
我尝试设置自己的 AccessDeniedHandler:
<http auto-config="true" use-expressions="true">
...
<access-denied-handler ref="myAccessDeniedHandler" />
</http>
但它似乎只拦截当我尝试访问未经授权的资源时引发的异常。
但是来自
的异常@PreAuthorize("hasRole('ROLE_ADMIN')")
public void myMethod(){
System.out.println("Secret Method");
}
不是这样处理的。
【问题讨论】:
-
您确定您正确配置了方法保护吗?我的意思是
<global-method-security pre-post-annotation-handling="enabled"/>?你确定会抛出 AccessDeniedException 吗? -
是的,我配置了它
是的,“AccessDeniedException:访问被拒绝”抛出 -
展示你的整个spring安全配置
标签: jsf spring-security