Browse Source

Fix missing session fixation protection for WebAuthn

Closes gh-18931

Signed-off-by: Ziqin Wang <ziqin@wangziqin.net>
pull/18932/head
Ziqin Wang 6 days ago
parent
commit
66fee6afd7
No known key found for this signature in database
GPG Key ID: B4A9D243A3DD5D9B
  1. 2
      config/src/main/java/org/springframework/security/config/annotation/web/configurers/WebAuthnConfigurer.java

2
config/src/main/java/org/springframework/security/config/annotation/web/configurers/WebAuthnConfigurer.java

@ -28,6 +28,7 @@ import org.springframework.security.authentication.ProviderManager; @@ -28,6 +28,7 @@ import org.springframework.security.authentication.ProviderManager;
import org.springframework.security.config.annotation.web.HttpSecurityBuilder;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.web.access.intercept.AuthorizationFilter;
import org.springframework.security.web.authentication.session.SessionAuthenticationStrategy;
import org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter;
import org.springframework.security.web.authentication.ui.DefaultResourcesFilter;
import org.springframework.security.web.authentication.www.BasicAuthenticationFilter;
@ -164,6 +165,7 @@ public class WebAuthnConfigurer<H extends HttpSecurityBuilder<H>> @@ -164,6 +165,7 @@ public class WebAuthnConfigurer<H extends HttpSecurityBuilder<H>>
WebAuthnAuthenticationFilter webAuthnAuthnFilter = new WebAuthnAuthenticationFilter();
webAuthnAuthnFilter.setAuthenticationManager(
new ProviderManager(new WebAuthnAuthenticationProvider(rpOperations, userDetailsService)));
webAuthnAuthnFilter.setSessionAuthenticationStrategy(http.getSharedObject(SessionAuthenticationStrategy.class));
WebAuthnRegistrationFilter webAuthnRegistrationFilter = new WebAuthnRegistrationFilter(userCredentials,
rpOperations);
PublicKeyCredentialCreationOptionsFilter creationOptionsFilter = new PublicKeyCredentialCreationOptionsFilter(

Loading…
Cancel
Save