WebSecurityConfigurerAdapter代替
时间: 2023-10-26 09:27:57 浏览: 443
WebSecurityConfigurerAdapter可以用@Bean的方式注入,来代替直接继承WebSecurityConfigurerAdapter的方式。这样做的目的是避免同时出现WebSecurityConfigurerAdapter和SecurityFilterChain的异常报错。
具体来说,通过定义一个新的配置类,并在其中使用@Bean注解来创建一个自定义的SecurityFilterChain对象,可以实现WebSecurityConfigurerAdapter的替代功能。在创建SecurityFilterChain对象时,需要指定相关的安全配置。
另外,有人尝试给WebSecurityConfig添加@Order注解来指定加载顺序,但是并没有生效。这可能是由于缓存或其他原因造成的。所以,在替代WebSecurityConfigurerAdapter的时候,我们不必使用@Order注解来指定加载顺序。
总结起来,通过使用@Bean注解来创建自定义的SecurityFilterChain对象,可以代替直接继承WebSecurityConfigurerAdapter的方式,从而避免出现异常报错。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
相关问题
WebSecurityConfigurerAdapter 过期了 代替方式是什么
WebSecurityConfigurerAdapter 类是 Spring Security 框架中的一个重要类,用于配置和定制 Web 应用程序的安全性。如果该类在使用中被标记为过期,意味着有新的替代方式供使用。
在 Spring Security 5.x 版本中,推荐使用 SecurityFilterChain 替代 WebSecurityConfigurerAdapter。SecurityFilterChain 是一个接口,它允许自定义一组过滤器以实现特定的安全需求。
下面是一个简单的示例,展示了如何使用 SecurityFilterChain 替代 WebSecurityConfigurerAdapter:
```java
@Configuration
public class SecurityConfig {
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/public/**").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.and()
.logout();
return http.build();
}
}
```
在上述示例中,我们创建了一个名为 SecurityConfig 的配置类,并定义了一个名为 securityFilterChain 的 Bean。在该 Bean 中,我们可以使用 HttpSecurity 对象来配置我们的安全策略。这里的配置与之前在 WebSecurityConfigurerAdapter 中的配置方式相似。
需要注意的是,SecurityFilterChain 是一个接口,因此你可以根据自己的需求实现它,并根据具体的安全配置返回不同的实现类。
希望这个答案对你有帮助!如果还有其他问题,请随时提问。
WebSecurityConfigurerAdapter 已经弃用,用什么代替
WebSecurityConfigurerAdapter已经弃用,可以使用WebSecurityConfigurer来代替。WebSecurityConfigurer是一个接口,可以实现它来自定义Spring Security的配置,实现类似于WebSecurityConfigurerAdapter的功能。
阅读全文