我想创建扩展WebSecurityConfigurerAdapter的WebSecurityConfig类,但总是收到错误“无法解析符号'WebSecurityConfigurerAdapter'"。我已经尝试添加不同的依赖项。这是我的gradle文件
dependencies {
runtimeOnly 'org.postgresql:postgresql'
implementation group: 'org.postgresql', name: 'postgresql', version: '42.5.1'
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-data-jpa', version: '3.0.0'
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-data-rest', version: '3.0.0'
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-tomcat', version: '3.0.0'
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-web', version: '3.0.0'
implementation group: 'io.jsonwebtoken', name: 'jjwt-api', version: '0.11.5'
implementation group: 'org.postgresql', name: 'postgresql', version: '42.5.1'
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-validation', version: '3.0.0'
implementation group: 'org.springframework.security', name: 'spring-security-core', version: '6.0.0'
implementation group: 'org.springframework.security', name: 'spring-security-config', version: '6.0.0'
implementation group: 'org.springframework.security', name: 'spring-security-web', version: '6.0.0'
implementation group: 'org.springframework.security', name: 'spring-security-oauth2-jose', version: '6.0.0'
implementation group: 'org.springframework.security', name: 'spring-security-oauth2-resource-server', version: '6.0.0'
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-security', version: '3.0.0'
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-thymeleaf', version: '3.0.0'
implementation group: 'org.thymeleaf.extras', name: 'thymeleaf-extras-springsecurity5', version: '3.1.0.RELEASE'
}
可能有些简单的东西我不懂。你能帮我一下吗?我已经花了两天的时间了
堆栈溢出(Cannot resolve symbol WebSecurityConfigurerAdapter)也有同样的问题,但它对我没有帮助。
import nsu.project.springserver.security.jwt.AuthEntryPointJwt;
import nsu.project.springserver.security.jwt.AuthTokenFilter;
import nsu.project.springserver.security.services.UserDetailsServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
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.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.http.SessionCreationPolicy;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
....
}
2条答案
按热度按时间ruarlubt1#
已在Spring-boot 3中删除WebsecurityConfigurerAdapter。
请改为公开SecurityFilterChain bean。打开手册或查看those tutorials。
ldxq2e6h2#
视频来自Dan Vega:
What's new in Spring Security 6
Spring安全性:升级过时的
WebSecurityConfigurerAdapter
配置HTTP安全性更重要的是,如果我们想避免HTTP安全性的过时,我们可以创建一个
SecurityFilterChain
bean。例如,假设我们希望根据角色来保护端点,并且只为登录保留匿名入口点。我们还将任何删除请求限制为管理员角色。我们将使用基本身份验证:
HTTP安全性将构建一个
DefaultSecurityFilterChain
对象来加载请求匹配器和筛选器。spring Security: Upgrading the Deprecated WebSecurityConfigurerAdapter