Spring Security除了匿名之外都是罗尔

时间:2013-08-28 13:09:41

标签: spring-security anonymous

我有一个弹簧安全应用程序

<http auto-config="true">
    <intercept-url pattern="/**" />
    <form-login authentication-failure-handler-ref="authenticationFailureHandler" authentication-success-handler-ref="authenticationSuccessHandler" login-page="${loginUrl}" authentication-failure-url="${loginUrl}" />
    <logout logout-url="/logout" invalidate-session="true" success-handler-ref="logoutSuccessHandler" />
    <anonymous enabled='false'/>
</http>

但匿名用户未被拦截,我如何允许所有角色但不允许ROLE_ANONYMOUS?

1 个答案:

答案 0 :(得分:2)

尝试IS_AUTHENTICATED_FULLY

<intercept-url pattern="/**" access="IS_AUTHENTICATED_FULLY" />

您可以使用SpEL表达式执行相同的操作:

<http auto-config="true" use-expressions="true">
    ...        
    <intercept-url pattern="/**" access="isAuthenticated()" />        
    ...
</http>

列出所有可用的表达式here。 通常,SpEL表达式更灵活。