本文介绍了我怎么能重新加载 websecurityconfig 运行时的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用 Spring Security 的 WebSecurityConfig
来管理权限.和权限只在 spring 应用程序启动时加载一次.
I've use Spring Security's WebSecurityConfig
to manager permissions.and permissions just loaded once when the spring application started.
那么当权限改变时,我怎么能在运行时手动重新加载WebSecurityConfig
?
so how could I manually reload WebSecurityConfig
in runtime when permission is changed?
这是我的WebSecurityConfig
代码:
@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter
{
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/css/**").permitAll()
.antMatchers("/js/**").permitAll()
.antMatchers("/rest/login").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/boss/login")
.permitAll()
.and()
.logout()
.permitAll();
http.csrf().disable();
}
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth.authenticationProvider(authProvider);
}
}
推荐答案
只需将任何您需要的注入到 WebSecurityConfig 中即可.您可以在 WebSecurityConfig 中使用 @Autowire 和 @Value.
Just get injected into WebSecurityConfig whatever you need. You can use @Autowire and @Value inside the WebSecurityConfig.
这篇关于我怎么能重新加载 websecurityconfig 运行时的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!