Verifique springsecurity, obtener la solicitud es normal, publicar la solicitud error 403

La versión de Springboot utilizada en este artículo: 2.7.6

Después de introducir springsecurity, configure todas las solicitudes para que sean accesibles:

@Configuration
@EnableWebSecurity
public class SecurityConfig {
    
    
    @Bean
    public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
    
    
        http.authorizeRequests().anyRequest().permitAll();
        return http.build();
    }
}

Al enviar una solicitud de publicación, la respuesta es 403:

{
    
    
	"timestamp": "2023-08-03T06:56:00.277+00:00",
	"status": 403,
	"error": "Forbidden",
	"path": "/hi"
}

No hubo ningún mensaje de error relevante en la consola, así que activé la depuración y rastreé para ver los detalles específicos del error:

debug: true
trace: true

La solicitud se inició nuevamente y la información de error relevante se imprimió en la consola, que fue interceptada por el filtro CsrfFilter.

o.s.security.web.csrf.CsrfFilter         : Invalid CSRF token found for http://127.0.0.1:9001/hi
o.s.s.w.access.AccessDeniedHandlerImpl   : Responding with 403 status code
o.s.w.s.m.m.a.HttpEntityMethodProcessor  : Writing [{
    
    timestamp=Thu Aug 03 14:56:00 CST 2023, status=403, error=Forbidden, path=/hi}]

De acuerdo con la ruta de clase: ossecurity.web.csrf.CsrfFilter, verifique el código de CsrfFilter. Para evitar ataques csrf, CsrfFilter verificará la exactitud del csrftoken incluido en la solicitud. Si falla, responderá con 403. Algunos Códigos clave: Entonces, la
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí
solicitud de obtención es normal, publique. Se produjo un error 403 con la solicitud.

CSRF es un gigante dormido y necesita protección. Si no utiliza springsecurity csrftoken, simplemente desactive csrf:

http.authorizeRequests().anyRequest().permitAll().and().csrf().disable();

Supongo que te gusta

Origin blog.csdn.net/weixin_43275277/article/details/132083862
Recomendado
Clasificación