I'm using a SecurityFilterChain
to manage my Security:
First, added .cors().and() filter to my SecurityChain
JWTAuthenticationFilter jwtAuthenticationFilter = new JWTAuthenticationFilter();
jwtAuthenticationFilter.setAuthenticationManager(authManager);
jwtAuthenticationFilter.setFilterProcessesUrl("/login");
return http
.cors().and()
.csrf().disable()
.authorizeHttpRequests()
.anyRequest().authenticated()
.and()
.sessionManagement()
.sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and()
.addFilter(jwtAuthenticationFilter)
.addFilterBefore(jwtAuthorizationFilter, UsernamePasswordAuthenticationFilter.class)
.build();
Then, created a corsConfiguration bean but still doesn't work as expected
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("http://localhost:3000/")
.allowedMethods("GET", "OPTIONS", "POST")
.allowedHeaders("Authorization")
.allowCredentials(true);;
}
};
}