Coo*_*blu 2 spring spring-security
我有两种模式,要应用相同的过滤器.
<security:filter-chain pattern="/home.do*" filters="a,b,c,d" />
<security:filter-chain pattern="/login.do*" filters="a,b,c,d" />
Run Code Online (Sandbox Code Playgroud)
除了上述两个之外,还有许多其他独特的模式和通用模式/**/*.do*/**.
我可以在模式属性中指定逗号分隔的多个模式,如下所示:
<security:filter-chain pattern="/home.do*, /login.do*" filters="a,b,c,d" />
是的,你可以,但实现取决于你正在使用的Spring Security版本.
在3.0中,您可以使用path-type属性:
<security:filter-chain-map path-type="regex">
<security:filter-chain pattern="^/(test|home)\.do$" filters="a,b,c,d" />
<!-- other patterns -->
<security:filter-chain-map path-type="regex">
Run Code Online (Sandbox Code Playgroud)在3.1中,您可以使用request-matcher属性(path-type在以前的示例中弃用,仅更改路径类型以请求匹配器),或者您可以将多个http元素与request-matcher-refbean一起使用并执行以下操作:
<http pattern="test.do,home.do" security="none" <!-- 'none' as example -->
request-matcher-ref="requestMatcher" />
<bean id="requestMatcher" class="com.example.CommaSeparatedRequestMatcher" />
Run Code Online (Sandbox Code Playgroud)
根据您的自定义实现CommaSeparatedRequestMatcher(根据请求和triest创建的URL分割以匹配任何字符串),例如,RegexRequestMatcher.
| 归档时间: |
|
| 查看次数: |
5037 次 |
| 最近记录: |