Olá turma,
Estou tendo um problema para receber o token na classe de Filter. Ele sempre chega null na classe quando chamo request.getHeader("Authorization". Eu rodei debugando e fui avaliar a request e dentro do objeto, realmente, não está chegando o header Authorization. Estou esquecendo de algo? Abaixo, detalhes das configs:
Classe de SecurityConfiguration:
@Configuration
@EnableWebSecurity
public class SecurityConfiguration {
@Bean
public SecurityFilterChain configure(HttpSecurity http) {
return http.csrf(AbstractHttpConfigurer::disable)
.sessionManagement(sm -> sm.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
.authorizeHttpRequests(req -> {
req.requestMatchers("/auth").permitAll();
req.anyRequest().authenticated();
})
.build();
}
@Bean
public AuthenticationManager authConfigurer(AuthenticationConfiguration authConfig) {
return authConfig.getAuthenticationManager();
}
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
}
Classe de Filtro:
@Component
public class AuthFilter extends OncePerRequestFilter {
@Autowired
private TokenService tokenService;
@Autowired
private UsuarioRepository repository;
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException {
String tokenJWT = request.getHeader("Authorization");
System.out.println("tokenJWT: " + tokenJWT);
filterChain.doFilter(request, response);
}
}