mirror of
https://github.com/spring-projects/spring-security.git
synced 2025-07-10 04:13:31 +00:00
Set cookie domain for cancel remember-me
Fixes gh-3871
This commit is contained in:
parent
ede521dc8d
commit
c261975be0
@ -364,7 +364,9 @@ public abstract class AbstractRememberMeServices implements RememberMeServices,
|
|||||||
Cookie cookie = new Cookie(cookieName, null);
|
Cookie cookie = new Cookie(cookieName, null);
|
||||||
cookie.setMaxAge(0);
|
cookie.setMaxAge(0);
|
||||||
cookie.setPath(getCookiePath(request));
|
cookie.setPath(getCookiePath(request));
|
||||||
|
if (cookieDomain != null) {
|
||||||
|
cookie.setDomain(cookieDomain);
|
||||||
|
}
|
||||||
response.addCookie(cookie);
|
response.addCookie(cookie);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -253,6 +253,8 @@ public class AbstractRememberMeServicesTests {
|
|||||||
@Test
|
@Test
|
||||||
public void logoutShouldCancelCookie() throws Exception {
|
public void logoutShouldCancelCookie() throws Exception {
|
||||||
MockRememberMeServices services = new MockRememberMeServices(uds);
|
MockRememberMeServices services = new MockRememberMeServices(uds);
|
||||||
|
services.setCookieDomain("spring.io");
|
||||||
|
|
||||||
MockHttpServletRequest request = new MockHttpServletRequest();
|
MockHttpServletRequest request = new MockHttpServletRequest();
|
||||||
request.setContextPath("contextpath");
|
request.setContextPath("contextpath");
|
||||||
request.setCookies(createLoginCookie("cookie:1:2"));
|
request.setCookies(createLoginCookie("cookie:1:2"));
|
||||||
@ -265,6 +267,10 @@ public class AbstractRememberMeServicesTests {
|
|||||||
services.logout(request, response, null);
|
services.logout(request, response, null);
|
||||||
|
|
||||||
assertCookieCancelled(response);
|
assertCookieCancelled(response);
|
||||||
|
|
||||||
|
Cookie returnedCookie = response.getCookie(
|
||||||
|
AbstractRememberMeServices.SPRING_SECURITY_REMEMBER_ME_COOKIE_KEY);
|
||||||
|
assertThat(returnedCookie.getDomain()).isEqualTo("spring.io");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test(expected = CookieTheftException.class)
|
@Test(expected = CookieTheftException.class)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user