Ошибка в Bean при попытке адаптировать WebSecurityConfigurerAdapter
Я пытаюсь внедрить систему входа в систему на своем небольшом веб-сайте, созданном с помощью SpringBoot 3, я смотрел несколько видеороликов AmigosCode и следил за вашим руководством. Когда вы создаете класс WebSecurityConfig, он расширяет класс WebSecurityConfigureradapter, который устарел в текущей версии SpringBoot. Немного изучив, я нашел несколько возможных решений, и, следуя руководству, я создал Bean, который создает для меня проблемы. Если вы знаете, как решить эту проблему или как-то лучше войти в систему, это будет очень полезно. Я не нашел много информации или руководств по системе входа в SpringBoot 3.
@Bean
protected void configure(AuthenticationManagerBuilder auth) {
auth.authenticationProvider(daoAuthenticationProvider());
}
Это Боб.
@Configuration
@AllArgsConstructor
@EnableWebSecurity
public class WebSecurityConfig {
private final AppUserService appUserService;
private final BCryptPasswordEncoder bCryptPasswordEncoder;
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception{
http
.authorizeHttpRequests((requests) -> requests
.requestMatchers("/", "/productos").permitAll()
.anyRequest().authenticated()
).formLogin((form) -> form
.loginPage("/login")
.permitAll()
)
.logout((logout) -> logout.permitAll());
return http.build();
}
@Bean
protected void configure(AuthenticationManagerBuilder auth) {
auth.authenticationProvider(daoAuthenticationProvider());
}
@Bean
public DaoAuthenticationProvider daoAuthenticationProvider() {
DaoAuthenticationProvider provider = new DaoAuthenticationProvider();
provider.setPasswordEncoder(bCryptPasswordEncoder);;
provider.setUserDetailsService(appUserService);
return provider;
}
}
Это класс.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'configure' defined in class path resource [com/mishop/main/security/config/WebSecurityConfig.class]: Invalid factory method 'configure' on class [com.mishop.main.security.config.WebSecurityConfig]: needs to have a non-void return type!
И это исключение.