【发布时间】:2016-06-23 18:22:42
【问题描述】:
我们什么时候使用antMatcher() 和antMatchers()?
例如:
http
.antMatcher("/high_level_url_A/**")
.authorizeRequests()
.antMatchers("/high_level_url_A/sub_level_1").hasRole('USER')
.antMatchers("/high_level_url_A/sub_level_2").hasRole('USER2')
.somethingElse()
.anyRequest().authenticated()
.and()
.antMatcher("/high_level_url_B/**")
.authorizeRequests()
.antMatchers("/high_level_url_B/sub_level_1").permitAll()
.antMatchers("/high_level_url_B/sub_level_2").hasRole('USER3')
.somethingElse()
.anyRequest().authenticated()
.and()
...
我期待的是,
- 任何与
/high_level_url_A/**匹配的请求都应经过身份验证 +/high_level_url_A/sub_level_1仅适用于 USER,/high_level_url_A/sub_level_2仅适用于 USER2 - 任何与
/high_level_url_B/**匹配的请求都应经过身份验证 +/high_level_url_B/sub_level_1用于公共访问,/high_level_url_A/sub_level_2仅用于 USER3。 - 我不关心的任何其他模式 - 但应该公开吗?
这些天我看到最新的例子不包括antMatcher()。这是为什么? antMatcher() 是否不再需要?
【问题讨论】:
标签: spring-mvc spring-security spring-security4