Spring 安全 : How to rename the "_spring_security_remember_me" checkbox field?

标签 spring spring-mvc spring-security

在 Spring MVC 3.1 应用程序中,我尝试实现 remember-me 功能(信息保存在数据库中)。

这是我目前拥有的:

  • 我创建了一个 persistent_logins表。
  • 我的安全上下文文件中有这个:

    <form-login login-page="/login" 
            authentication-failure-url="/login?err=true"
            default-target-url="/" 
            username-parameter="username" 
            password-parameter="password"
            login-processing-url="/validatelogin" />
    
    <remember-me key="some_random_key" 
             token-validity-seconds="31536000" 
             data-source-ref="dataSource" />
    
  • 在我的 login.jsp 中,我有:

    <form action="/validatelogin" method="post">
        username : <input type='text' id='username' name='username' value='${SPRING_SECURITY_LAST_EXCEPTION.authentication.principal}' />
        <br />
        password : <input type='password' id='password' name='password' />
        <br /><br />
        remember me : <input type="checkbox" name="_spring_security_remember_me" />
        <br /><br />
        <input type="submit" value="submit" />
    </form>
    

在“”bean 中,我已经能够使用 username-parameter密码参数。但我找不到重命名“_spring_security_remember_me”复选框字段的方法。

知道如何重命名吗?

最佳答案

这是使用 parameter 设置的RememberMeServices 的属性(property).

遗憾的是,这不能使用命名空间配置进行设置。您可以通过以下几种方式进行设置:

  1. 创建一个自定义的 RememberMeServices 并通过 <remember-me services-ref="myRememberMeServices"> 使用它.在你的 bean 上设置属性。

  2. Use a BeanPostProcessor (see 1.8)将属性设置为默认 RememberMeServices .

关于 Spring 安全 : How to rename the "_spring_security_remember_me" checkbox field?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10368727/

相关文章:

java - REST - 使用 Spring MVC 返回创建的对象

java - 使用自定义 AuthenticationFailureHandler 时为 302 而不是 200

java - Spring MVC 中 Controller 类未重新初始化

java - 标准 API IN 与 ArrayList

java - Spring框架上的多线程(或异步)计算

java - Spring OAuth2 OIDC - 获取用户信息和AD组信息进行授权

hibernate - Spring Security 3 : Salting password issue

java - LocalDateTime 的 Spring + Thymeleaf ConversionFailedException

java - Spring REST 将字段添加到 404 响应代码

java - Spring MVC 返回 HTTP 406 响应