安全配置在添加“cors disable”时为所有匹配程序应用身份验证

kdfy810k  于 2021-10-10  发布在  Java
关注(0)|答案(1)|浏览(231)

当我这样配置我的安全性时:

httpSecurity
        .anonymous()
            .and()
        .authorizeRequests()
            .antMatchers("/**/mes-actus/**").authenticated()
            .anyRequest().permitAll()
            .and()
        // make sure we use stateless session; session won't be used to
        // store user's state.
        .addFilterBefore(headerUserRequestFilter, UsernamePasswordAuthenticationFilter.class);
}

它仅对包含以下内容的路由进行身份验证: mes-actus 允许所有其他人,那好!
但当我添加此说明时: .cors().and().csrf().disable() 然后,它要求对所有人进行身份验证,没有例外。
换句话说 .antMatchers("/**/mes-actus/**").authenticated() 被忽略了。
如果我删除。 cors().and().csrf().disable() 我得了403分

wwtsj6pe

wwtsj6pe1#

你能试试下面的代码吗:它允许所有 /**/mes-actus/** 电话:

http
    .authorizeRequests()
        .antMatchers("/**/mes-actus/**").permitAll()
        .anyRequest().authenticated();
http
    .csrf().disable()
    .cors().disable();

相关问题