根据Spring文档
将此注释添加到@Configuration类中,以WebSecurityConfigurer通过扩展WebSecurityConfigurerAdapter基类并覆盖单个方法以任何可能的方式定义Spring Security配置:
@Configuration
WebSecurityConfigurer
WebSecurityConfigurerAdapter
或者如本图所示@EnableWebSecurity,用于在我们的项目中启用SpringSecurity。
@EnableWebSecurity
但是我的问题是,即使我不使用我的班级中的任何内容来注释@EnableWebSecurity用户名和密码(默认行为)。
因此@EnableWebSecurity,无论是否使用,我都会收到相同的行为@EnableWebSecurity。
有人可以解释一下此注释的确切含义吗?
该@EnableWebSecurity是一个标记注释。它允许Spring查找(@Configuration因此,是和@Component)并将类自动应用于global WebSecurity。
@Component
WebSecurity
如果我不对班级中的任何人进行注释,@EnableWebSecurity那么应用程序仍会提示输入用户名和密码。
是的,这是默认行为。如果查看类路径,则可以找到其他带有该注释标记的类(取决于您的依赖项):
SpringBootWebSecurityConfiguration
FallbackWebSecurityAutoConfiguration
WebMvcSecurityConfiguration
仔细考虑它们,关闭所需的配置,或覆盖其行为。