Spring Boot with Security不提供我的静态内容

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Boot with Security不提供我的静态内容相关的知识,希望对你有一定的参考价值。

嗨这里是我的安全配置文件,我正在使用Spring Boot 2.0.6.RELEASE和我的静态内容文件只在静态文件夹中static-> css,js,images,fonts

我已经尝试了所有其他帖子解决方案,但没有一个为我工作,仍然静态内容是安全的样式没有得到应用等提前感谢

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    private final String[] PUBLIC_MATCHER = {"/css/**","/js/**","/fonts/**","/images/**", "/"};

    @Override
    protected void configure(HttpSecurity http) throws Exception {

        http
            .authorizeRequests()
            .antMatchers(PUBLIC_MATCHER)
            .permitAll().anyRequest().authenticated()
            .and()
            .csrf().disable().cors().disable()
            .formLogin().failureUrl("/login?error").defaultSuccessUrl("/dashboard")
            .loginPage("/login").permitAll()
            .and()
            .logout().logoutRequestMatcher(new AntPathRequestMatcher("/logout"))
            .logoutSuccessUrl("/?logout").deleteCookies("remember-me").permitAll()
            .and()
            .rememberMe();

       }
    }
 }
答案

在安全配置文件中添加此方法,希望它可以工作

//this method allows static resources to be neglected by spring security
        @Override
        public void configure(WebSecurity web) throws Exception {
            web
                .ignoring()
                .antMatchers("/resources/**", "/static/**","/css/**","/js/**","/fonts/**","/images/**");
        }

以上是关于Spring Boot with Security不提供我的静态内容的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot with Security不提供我的静态内容

How to use JDBC-Authentication of Spring Boot/Spring Security with Flyway

Spring Boot Security PreAuthenticated Scenario with Anonymous access

Spring Security with Spring Boot:使用过滤器时允许未经身份验证的用户访问特定端点

Spring Boot 2 和 Security With JWT 无法提供 Angular 构建的静态内容

Angular 基本身份验证 Spring Boot