如何为URL禁用所有自定义和核心SpringSec过滤器?

时间:2014-05-13 16:09:22

标签: spring-security

使用Spring Security 3.0.5,我创建了一个自定义过滤器。

的web.xml

<filter>
    <filter-name>springSecurityFilterChain</filter-name>
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>

<filter-mapping>
    <filter-name>springSecurityFilterChain</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

<filter>
    <filter-name>XAuthToken</filter-name>
    <filter-class>com.mckesson.security.filters.XAuthToken</filter-class>
</filter>
<filter-mapping>
    <filter-name>XAuthToken</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>    

使用filters = "none",我尝试使用以下方法禁用所有(Spring Security核心和自定义过滤器):

弹簧security.xml文件

<http auto-config="true">
    <intercept-url pattern="/**/foo/bar" filters="none" />  
    <intercept-url pattern="/**/**"/>
    <logout logout-success-url="/login.jsp" logout-url="/logout" />
</http>

但是,当我访问http://localhost:8080/app/.../foo/bar时,我的Tomcat日志中会显示一条打印语句,表明我的自定义过滤器已运行。

如何禁用所有自定义和核心Spring Security过滤器?

1 个答案:

答案 0 :(得分:0)

由于您想要登录,但不想要保护任何内容,因此您的确无法完成。但是,您可以创建一个单独的域(您可以在一个配置中包含多个<http&gt;标记)并完全关闭安全性:

<http pattern="/unsecured/**" security="none"/>

显然,模式可以是你想要的任何东西。 我不确定这是不是你要问的。