Spring boot обновление до 3.3.0
Обновил проэкт с spring boot 3.2.6 до 3.3.0 Появилось вот такое сообщение:
[WARN ] 2024-06-06 16:15:14.443 [restartedMain] InitializeUserDetailsBeanManagerConfigurer$InitializeUserDetailsManagerConfigurer - Global AuthenticationManager configured with an AuthenticationProvider bean. UserDetailsService beans will not be used for username/password login. Consider removing the AuthenticationProvider bean. Alternatively, consider using the UserDetailsService in a manually instantiated DaoAuthenticationProvider.
Конфигурация:
@Configuration
@EnableWebSecurity
@EnableMethodSecurity
@RequiredArgsConstructor
public class SecurityConfiguration {
private final JwtAuthFilter jwtAuthFilter;
private final MyUserDetails myUserDetails;
@Bean
SecurityFilterChain securityFilterChain(final HttpSecurity http) throws Exception {
return http
.cors(AbstractHttpConfigurer::disable)
.csrf(AbstractHttpConfigurer::disable)
.authorizeHttpRequests(
auth -> auth.requestMatchers("/public/**").permitAll()
.requestMatchers("/api/v1/token", "/api/v1/refreshToken").permitAll()
.anyRequest().authenticated()
)
.sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
.addFilterBefore(jwtAuthFilter, UsernamePasswordAuthenticationFilter.class)
.build();
}
@Bean
AuthenticationManager authenticationManager(AuthenticationConfiguration configuration) throws Exception {
return configuration.getAuthenticationManager();
}
@Bean
PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
@Bean
AuthenticationProvider authenticationProvider() {
var provider = new DaoAuthenticationProvider();
provider.setUserDetailsService(myUserDetails);
provider.setPasswordEncoder(passwordEncoder());
return provider;
}
}
Не могу понять что мне с этим делать
Куда копать даже не догадываюсь (
Ответы (1 шт):
Автор решения: Mike Menko
→ Ссылка
Согласно новой версии, AuthenticationProvider
может подтягиваться самостоятельно: источник
Решение простое: Удалить создание Bean
методом authenticationProvider()
(Just delete method of Bean registration)