通过@Profile启用 WebSecurityConfigurer 不起作用
我认为,我有一个非常简单和基本的设置,用于在本地运行带有一些身份验证的Spring Boot Web应用程序。
我希望当我通过Spring Boot运行此应用程序时,我的自定义安全设置将在我指定配置文件时覆盖默认行为。local
mvn -Dspring.profiles.active="local" spring-boot:run
也许我指定了错误,但是当应用程序运行时,它仍然会吐出生成的密码以供使用,并且似乎不允许在没有所述身份验证的情况下访问该路径。profiles.active
/login
我也没有看到活动配置文件,这可能有点说明问题。/env
我有一个覆盖的,像这样:WebSecurityConfigurer
@Configuration
@EnableWebSecurity
@Profile("local")
@Order(SecurityProperties.ACCESS_OVERRIDE_ORDER)
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests().anyRequest().fullyAuthenticated().and().formLogin().permitAll();
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication().withUser("admin").password("admin").roles("ADMIN", "USER")
.and().withUser("user").password("user").roles("USER");
}
}
我的主要类是你的标准Spring Java风格的基本配置:@Configuration
@Configuration
@ComponentScan
@EnableAutoConfiguration
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}