【发布时间】:2019-09-15 17:01:46
【问题描述】:
我正在使用 Spring boot 和 WebSecurityConfigurerAdapter 来配置安全性。
配置忽略安全antMatches的方法如下:
@Override
public void configure(final WebSecurity web) {
web
.ignoring()
.antMatchers("/items")
.antMatchers("/items/{itemId}")
{itemId} 是 UUID 格式
问题在于,使用此配置,/items/report、/items/images 等端点也会打开,但它们不应该打开。
有没有办法只对带有路径变量的uri应用忽略规则?
【问题讨论】:
-
框架应该如何知道
/items/report或/items/images和/items/{itemId}之间的区别?它如何知道report或images不是/items/{itemId}路由中itemId的值?您必须首先为每个 not-allowed-value 声明一个限制,例如/items/report和/items/images,然后允许/items/{itemId}。 -
对于其余的请求模式,你需要把authenicated,比如.antMatchers("/items/report").authenticated()
标签: java spring spring-boot spring-security