Spring Security 6 配置方法,废弃 WebSecurityConfigurerAdapter
Spring Security 6 已经不推荐使用 WebSecurityConfigurerAdapter
来进行配置。在 Spring Security 6 中,推荐使用 WebSecurityCustomizer
和 SecurityConfigurer
的方式来配置安全规则。
以下是一个简单的例子,展示如何在 Spring Security 6 中配置安全规则:
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityCustomizer;
import org.springframework.security.web.SecurityFilterChain;
@EnableWebSecurity
public class SecurityConfig implements WebSecurityCustomizer {
@Override
public void customize(HttpSecurity http) throws Exception {
http
.authorizeRequests(authorize -> authorize
.anyRequest().authenticated()
)
.formLogin(withDefaults()); // 使用默认的表单登录配置
}
// 返回 SecurityFilterChain,这是配置的结果
@Override
public SecurityFilterChain build() throws Exception {
HttpSecurity http = HttpSecurity.httpBuilder();
customize(http);
return http.build();
}
}
在这个例子中,我们定义了一个 SecurityConfig
类,实现了 WebSecurityCustomizer
接口。我们在 customize
方法中配置了安全规则,包括启用表单登录。build
方法返回了一个 SecurityFilterChain
对象,这个对象是基于我们配置的安全规则构建的。
Spring Security 6 推荐使用这种方式配置,因为它更加灵活和简洁。
评论已关闭