我遇到一个问题,即一旦对用户进行身份验证,该用户仍然可以通过访问localhost:8080 / login上的URL来访问登录页面。如果希望通过身份验证的用户再次尝试访问登录页面,我希望将其自动重定向到用户的登录页面。
我的SecurityConfig设置如下:
.csrf()
.and()
.authorizeRequests()
.antMatchers("/programme/**").hasRole("USER1")
.antMatchers("/programme1/**").hasRole("USER1")
.antMatchers("/project/**").hasRole("USER2")
.antMatchers("/").authenticated()
.and()
.formLogin()
.loginPage("/login")
.failureUrl("/login-error")
.successHandler(authenticationSuccessHandler)
.failureHandler(customAuthenticationFailureHandler() )
.permitAll()
.and()
.logout().logoutRequestMatcher(new AntPathRequestMatcher("/logout"))
.deleteCookies("JSESSIONID").invalidateHttpSession(true)
.and()
.rememberMe().key("uniqueAndSecret").userDetailsService(userDetailsService);