From c8b79289c9fbebc08a4e0bb40490d59f28b4b6d5 Mon Sep 17 00:00:00 2001 From: Michael Cramer Date: Wed, 7 Jan 2015 14:20:44 +0100 Subject: [PATCH] add setter for using a custom name for the rememberMeParameter --- .../web/configurers/RememberMeConfigurer.java | 11 +++++++++++ .../NamespaceRememberMeTests.groovy | 18 ++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/config/src/main/java/org/springframework/security/config/annotation/web/configurers/RememberMeConfigurer.java b/config/src/main/java/org/springframework/security/config/annotation/web/configurers/RememberMeConfigurer.java index 495a8f65d6..8a739fdfb5 100644 --- a/config/src/main/java/org/springframework/security/config/annotation/web/configurers/RememberMeConfigurer.java +++ b/config/src/main/java/org/springframework/security/config/annotation/web/configurers/RememberMeConfigurer.java @@ -162,6 +162,17 @@ public final class RememberMeConfigurer> extend return this; } + /** + * The HTTP parameter used to indicate to remember the user at time of login. + * + * @param rememberMeParameter the HTTP parameter used to indicate to remember the user + * @return the {@link RememberMeConfigurer} for further customization + */ + public RememberMeConfigurer rememberMeParameter(String rememberMeParameter) { + this.rememberMeParameter = rememberMeParameter; + return this; + } + /** * Allows control over the destination a remembered user is sent to when they are successfully authenticated. * By default, the filter will just allow the current request to proceed, but if an diff --git a/config/src/test/groovy/org/springframework/security/config/annotation/web/configurers/NamespaceRememberMeTests.groovy b/config/src/test/groovy/org/springframework/security/config/annotation/web/configurers/NamespaceRememberMeTests.groovy index 835dd373e5..0df84d0620 100644 --- a/config/src/test/groovy/org/springframework/security/config/annotation/web/configurers/NamespaceRememberMeTests.groovy +++ b/config/src/test/groovy/org/springframework/security/config/annotation/web/configurers/NamespaceRememberMeTests.groovy @@ -252,6 +252,24 @@ public class NamespaceRememberMeTests extends BaseSpringSpec { ReflectionTestUtils.getField(findFilter(RememberMeAuthenticationFilter).rememberMeServices, "useSecureCookie") == true } + @Configuration + static class RememberMeParameterConfig extends BaseWebConfig { + protected void configure(HttpSecurity http) throws Exception { + http + .formLogin() + .and() + .rememberMe() + .rememberMeParameter("rememberMe") + } + } + + def "http/remember-me@remember-me-parameter"() { + when: "use custom rememberMeParameter" + loadConfig(RememberMeParameterConfig) + then: "custom rememberMeParameter will be used" + findFilter(RememberMeAuthenticationFilter).rememberMeServices.parameter == "rememberMe" + } + @Configuration static class UseSecureCookieConfig extends BaseWebConfig { protected void configure(HttpSecurity http) throws Exception {