两者之间有什么区别?什么时候可以使用另一个?
在Spring Security Documentation中,它表示WebMvcConfigurer
具有以下功能:
要求对应用程序中的每个URL进行身份验证
HttpSecurity中显示的WebSecurityConfigurerAdapter
示例说:
确保对我们应用程序的任何请求都需要对用户进行身份验证。
不是吗?
编辑
这两种类型的配置似乎有不同的用途,我只是不太了解何时使用哪种配置:每种配置类型的两种不同情况是什么?
在 HttpSecuriy 部分的简介中,
Spring Security如何知道我们要要求所有用户进行身份验证? Spring Security如何知道我们要支持基于表单的身份验证?
所以我现在正在思考:第一个提示对用户进行身份验证时会发生什么,第二个提示在什么情况下需要对用户进行身份验证。正确吗?
例如,第一个配置“为您生成登录表单”,第二个配置确定何时显示该登录表单?
答案 0 :(得分:1)
这似乎是文档错误(https://github.com/spring-projects/spring-security/issues/6809):
这使人们对WebMvcConfigurer在Spring Security中的角色以及WebMvcConfigurer与WebSecurityConfigurerAdapter的用例感到困惑。
该示例中的意图很可能是:
@EnableWebSecurity
public class WebSecurityConfig implements WebSecurityConfigurerAdapter {
代替
@EnableWebSecurity
public class WebSecurityConfig implements WebMvcConfigurer {