我使用Spring security 6.2版本,但是静态资源被忽略了

问题描述 投票:0回答:1

我将Spring Security版本升级到6.2,并按如下方式设置安全设置。

@Bean
public WebSecurityCustomizer webSecurityCustomizer() {
    return (web) -> web.ignoring().requestMatchers(
                    "/h2-console/**",
                    "/static/**",
                    "/img/**",
                    "/css/**",
                    "/js/**",
                    "/images/**",
                    "/favicon.ico",
                    "/error",
                    "/**/**.jsp",
                    "/misc/**"
            )

并且我使用了拦截器来记录URL,但是在上传版本之前,只记录了屏幕的URL。

上传版本后

[https|GET][/static/js/placeholders.min.js]
[https|GET][/static/css/admin.css][200](00:00:00.031)
[https|GET][/static/js/jquery-3.7.1.min.js]

下面的静态资源URL也被记录下来。是安全设置不正确,还是改版本没有忽略静态资源?

CSS是通过忽略过滤器中的静态资源来应用的,但是我很好奇为什么拦截器中会显示/static请求信息。

java spring spring-boot filter spring-security
1个回答
0
投票

使用下面提到的以下模式并确保添加资源,因为所有静态文件都存储在资源文件夹下。

.requestMatchers("/",
                "/js/**",
                "/css/**",
                "/img/**",
                "/webjars/**",
                "/resources/**")
© www.soinside.com 2019 - 2024. All rights reserved.