如何将变量从URL传递给spring安全自定义登录表单?

时间:2017-10-27 10:31:42

标签: java spring web-applications spring-security

我有一个应用程序,它应该预先填写登录表单,其中包含从URL中获取的变量。我的安全配置:

@Override
protected void configure(HttpSecurity http) throws Exception {
    http.authorizeRequests()
    .antMatchers("/", "/home").access("hasRole('USER') or hasRole('ADMIN') or hasRole('MANAGER')")
    .antMatchers("/admin/**").access("hasRole('ADMIN') or hasRole('MANAGER')")
    .and().formLogin().loginPage("/login")
    .loginProcessingUrl("/login").usernameParameter("username").passwordParameter("password")
    .and().rememberMe().rememberMeParameter("remember-me").tokenRepository(tokenRepository)
    .tokenValiditySeconds(90*24*60*60).and().csrf().and().exceptionHandling().accessDeniedPage("/Access_Denied");
}

当我尝试使用网址访问应用时:"app.com/home" 我得到app.com/login,当然形式是空的 所以,我需要能够通过这样的URL传递他的标识符用户:app.com/home?user=test1并将此用户传递给我的自定义登录表单:

但目前我无法得到它 - 如何在代码中获取此路径变量,以及在哪里可以获得它。

0 个答案:

没有答案