根据 Spring 文档:
将此注释添加到
@Configuration
类,以在任何WebSecurityConfigurer
中定义 Spring Security 配置,或者更可能通过扩展WebSecurityConfigurerAdapter
个别基类方法:
或者正如这个 @EnableWebSecurity
描述的那样,用于在我们的项目中启用 SpringSecurity。
但我的问题是,即使我没有用 @EnableWebSecurity
注释我的任何班级—应用程序仍然提示输入用户名和密码。(默认行为)
所以我在使用 @EnableWebSecurity
而没有使用 @EnableWebSecurity
时收到相同的行为。
有人可以解释一下这个注释到底是做什么用的吗?
原文由 Mehraj Malik 发布,翻译遵循 CC BY-SA 4.0 许可协议
@EnableWebSecurity
是一个标记注释。它允许 Spring 查找(它是一个@Configuration
因此,@Component
)并自动将该类应用到全局WebSecurity
是的,这是默认行为。如果您查看类路径,您会发现其他标有该注释的类(取决于您的依赖项):
SpringBootWebSecurityConfiguration
;FallbackWebSecurityAutoConfiguration
;WebMvcSecurityConfiguration
。仔细考虑它们,关闭所需的配置,或覆盖其行为。