Spring Security 并没有超越登录页面

jdg4fx2g  于 2021-06-30  发布在  Java
关注(0)|答案(1)|浏览(319)

我目前正在使用thymeleaf来实现我的springstarter安全性。
我试图实现的:成功登录后重定向到/userlist
配置文件

@Configuration
@EnableWebSecurity
public class SpringSecurityConfig extends WebSecurityConfigurerAdapter {

    // roles admin allow to access /admin/**
    // roles user allow to access /user/**
    // custom 403 access denied handler
    // @formatter:off
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        // @formatter:off
        http.authorizeRequests()
            .antMatchers("/", "/user/userList/*").permitAll().anyRequest().authenticated()
            .and()
            .formLogin()
                .loginPage("/login")
                .defaultSuccessUrl("/usersList", true).successHandler(new AuthenticationSuccessHandler() {
                    @Override
                    public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response,
                            Authentication authentication) throws IOException, ServletException {
                        System.out.print("enter");
                        request.getSession().setMaxInactiveInterval(60);
                        System.out.print("session expired");
                    }
                }).permitAll()
                    .and()
                .logout().permitAll();

        http.csrf().disable();
        http.headers().frameOptions().disable();
        http.sessionManagement().maximumSessions(1).expiredUrl("/login?expired=true");
    }
}

这个链接有我的回购
重新创建问题的步骤:
点击用户点击右上角
用户名是user,密码是在eclipse控制台上生成的
它将重定向到空白
检查浏览器
将显示错误代码
我尝试过:
我从这个链接尝试了这个方法,并将参数改为重定向到root

.defaultSuccessUrl("/", true)

但两种方法都奏效了。
预期结果:成功登录后重定向到/userlist.html

.defaultSuccessUrl("/usersList", true)

实际结果:浏览器控制台输出错误代码的空白页(见下图)

vwoqyblh

vwoqyblh1#

您可以使用servlet http会话,这是设置超时的代码:

HttpSession ss = request.getSession(); ss.setMaxInactiveInterval(100);

相关问题