WebMvcConfigurerAdapter中的addResourceHandlers方法映射了访问静态资源地址,不用Spring Security如何添加校验
时间: 2024-12-11 07:22:15 浏览: 8
spring-security-project.zip- Spring Security实现RBAC权限模型demo
WebMvcConfigurerAdapter中的`addResourceHandlers`方法主要用于配置Spring MVC对静态资源(如CSS、JS、图片等)的访问路径和映射。如果不需要使用Spring Security进行资源访问校验,你可以直接在WebMvcConfig类中自定义ResourceHandlerRegistration对象并配置它。
例如,下面是一个简单的示例:
```java
@Configuration
public class MyWebConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
// 不需要Spring Security的校验
registry.addResourceHandler("/static/**")
.addResourceLocations("classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "/webjars/");
}
}
```
在这个例子中,`/static/**`将匹配所有以"/static"开头的URL路径,`addResourceLocations`指定了静态资源文件的位置,包括类路径下的几个指定目录以及/webjars/用于管理依赖的WebJars库。
如果你只想针对某些特定的资源路径进行校验,可以在`ResourceHandler`对象中设置条件,比如添加一个`Predicate`来进行判断。
然而,如果你的应用确实需要对所有资源访问进行身份验证,尽管`addResourceHandlers`通常处理静态资源,你还是应该在更全局的地方(比如SecurityFilterChain或GlobalAuthenticationFilter)添加Spring Security的相关配置。
阅读全文