Мы сталкиваемся с следующей ошибкой во время переноса нашего проекта на Spring Boot 3.1.8: < /p>
орг.springframework.beans.factory.unsatisfiedDependencyException: Ошибка создания Bean с именем «WebseCurityConfig»: неудовлетворенная зависимость. 'org.springframework.security.config.annotation.web.builders.websecurity' Доступно: Ожидается не менее 1 боба, который считается кандидатом на аутовиру. Аннотации зависимости: {} < /p>
Подробности класса: < /p>
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.authentication.AuthenticationManager;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.web.SecurityFilterChain;
import org.springframework.security.core.userdetails.User;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.security.web.SecurityFilterChain;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
@Configuration
@EnableWebSecurity
public class WebSecurityConfig {
@Value("${swaggerUserName}")
private String userName;
@Value("${swaggerPassword}")
private String password;
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http
.securityMatcher("/api/**")
.authorizeRequests()
.anyRequest().authenticated() // All requests under /api/** require authentication
.and()
.httpBasic(); // Use HTTP Basic Authentication
return http.build();
}
@Bean
public AuthenticationManager authenticationManager(HttpSecurity http) throws Exception {
AuthenticationManagerBuilder authenticationManagerBuilder =
http.getSharedObject(AuthenticationManagerBuilder.class);
authenticationManagerBuilder
.inMemoryAuthentication()
.withUser(User.builder()
.username(userName)
.password(passwordEncoder().encode(password))
.roles("USER")
.build());
return authenticationManagerBuilder.build();
}
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
}
< /code>
pom.xml
org.springframework.security
spring-security-web
org.springframework.security
spring-security-config
org.springframework.boot
spring-boot-starter-security
Подробнее здесь: https://stackoverflow.com/questions/795 ... yexception