当我启动我的webapp时,我希望spring重定向到我的login.jsp,以便在它转到我的home.jsp之前进行身份验证,但是当app启动时,它会立即转到我的home.jsp。我创建了这个SecurityFilterChain,我原以为它会默认使用我的login.jsp进行身份验证。
@Configuration
public class SecurityConfiguration {
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/login", "/register").permitAll()
.and()
.formLogin()
.loginPage("/login").permitAll();
return http.build();
}
}
如果需要更多的信息,请让我知道。
1条答案
按热度按时间chhqkbe11#
Edit正如下面的jzheaux所指出的,方法的命名约定并不重要。修复的方法是添加.anyRequest().authenticated(),它确保除了我在上面指定的页面之外的任何其他页面都需要身份验证,然后才能访问它们。
我发现了问题所在。我使用的是filterChain而不是securityFilterChain。我还对该方法进行了一些修改,如下所示
一旦做了这些更改,应用程序默认打开我的login.jsp进行身份验证,然后再继续。谢谢大家的帮助。