diff --git a/docs/modules/ROOT/pages/servlet/authentication/passkeys.adoc b/docs/modules/ROOT/pages/servlet/authentication/passkeys.adoc
index dabb1d699fb..8f21a7b12a6 100644
--- a/docs/modules/ROOT/pages/servlet/authentication/passkeys.adoc
+++ b/docs/modules/ROOT/pages/servlet/authentication/passkeys.adoc
@@ -10,7 +10,7 @@ After the credential is registered, it can be used to authenticate by xref:servl
[[passkeys-dependencies]]
== Required Dependencies
-To get started, add the `webauthn4j-core` dependency to your project.
+To get started, add the `spring-security-webauthn` dependency to your project.
[NOTE]
====
@@ -26,12 +26,7 @@ Maven::
----
org.springframework.security
- spring-security-web
-
-
- com.webauthn4j
- webauthn4j-core
- {webauthn4j-core-version}
+ spring-security-webauthn
----
@@ -40,8 +35,7 @@ Gradle::
[source,groovy,role="secondary",subs="verbatim,attributes"]
----
dependencies {
- implementation "org.springframework.security:spring-security-web"
- implementation "com.webauthn4j:webauthn4j-core:{webauthn4j-core-version}"
+ implementation "org.springframework.security:spring-security-webauthn"
}
----
======
diff --git a/web/src/main/java/org/springframework/security/web/savedrequest/CookieRequestCache.java b/web/src/main/java/org/springframework/security/web/savedrequest/CookieRequestCache.java
index 7ea903cf20e..9e8bbad3c50 100644
--- a/web/src/main/java/org/springframework/security/web/savedrequest/CookieRequestCache.java
+++ b/web/src/main/java/org/springframework/security/web/savedrequest/CookieRequestCache.java
@@ -93,6 +93,7 @@ public void saveRequest(HttpServletRequest request, HttpServletResponse response
.setServerPort(port)
.setMethod(request.getMethod())
.setLocales(Collections.list(request.getLocales()))
+ .setParameters(request.getParameterMap())
.build();
}
diff --git a/web/src/test/java/org/springframework/security/web/savedrequest/CookieRequestCacheTests.java b/web/src/test/java/org/springframework/security/web/savedrequest/CookieRequestCacheTests.java
index ca8ea2cf190..8862e5ca94b 100644
--- a/web/src/test/java/org/springframework/security/web/savedrequest/CookieRequestCacheTests.java
+++ b/web/src/test/java/org/springframework/security/web/savedrequest/CookieRequestCacheTests.java
@@ -108,6 +108,21 @@ public void getRequestWhenRequestContainsSavedRequestCookieThenReturnsSaveReques
assertThat(savedRequest.getRedirectUrl()).isEqualTo(redirectUrl);
}
+ @Test
+ public void getRequestWhenRequestContainsSavedRequestCookieThenSavedRequestContainsRequestParameters() {
+ CookieRequestCache cookieRequestCache = new CookieRequestCache();
+ MockHttpServletRequest request = new MockHttpServletRequest();
+ request.setCookies(new Cookie(DEFAULT_COOKIE_NAME, encodeCookie("https://abc.com/destination")));
+ request.setParameter("single", "first");
+ request.addParameter("multi", "second");
+ request.addParameter("multi", "third");
+ SavedRequest savedRequest = cookieRequestCache.getRequest(request, new MockHttpServletResponse());
+ assertThat(savedRequest).isNotNull();
+ assertThat(savedRequest.getParameterValues("single")).containsExactly("first");
+ assertThat(savedRequest.getParameterValues("multi")).containsExactly("second", "third");
+ assertThat(savedRequest.getParameterMap()).containsKeys("single", "multi");
+ }
+
@Test
public void matchingRequestWhenRequestDoesNotContainSavedRequestCookieThenReturnsNull() {
CookieRequestCache cookieRequestCache = new CookieRequestCache();