Nuñito de la Calzada :
Tengo una aplicación básica SpringBoot 2.0.5.RELEASE. Utilizando Spring inicializador, JPA, incrustado Tomcat, motor de plantillas thymeleaf, y el paquete como un archivo JAR ejecutable.
He creado un filtro de seguridad basada JwtFilter personalizada JWT:
@Provider
public class JwtAuthorizationTokenFilter extends OncePerRequestFilter {
...
}
Pero quiero Bypass este filtro sólo para 1 solicitud específica / método: "/api/v1/menus"
cuando es unaPOST
Pero no sé si es posible en el WebSecurityConfigurerAdapter
:
JwtAuthorizationTokenFilter authenticationTokenFilter = new JwtAuthorizationTokenFilter(userDetailsService(), jwtTokenUtil, tokenHeader);
httpSecurity
.addFilterBefore(authenticationTokenFilter, UsernamePasswordAuthenticationFilter.class)
.antMatcher("/api/v1/menus")
tom:
Puede sustituir el shouldNotFilter
método de la OncePerRequestFilter de la siguiente manera:
@Provider
public class JwtAuthorizationTokenFilter extends OncePerRequestFilter {
@Override
protected boolean shouldNotFilter(HttpServletRequest request) throws ServletException {
return new AntPathMatcher().match("/api/v1/menus", request.getServletPath());
}
}