2222
2323package eu .webeid .example .security ;
2424
25+ import eu .webeid .example .config .WebEidMobileProperties ;
2526import eu .webeid .security .authtoken .SupportedSignatureAlgorithm ;
2627import eu .webeid .security .authtoken .WebEidAuthToken ;
2728import eu .webeid .security .challenge .ChallengeNonceStore ;
@@ -56,10 +57,12 @@ public class WebEidAuthenticationProvider implements AuthenticationProvider {
5657
5758 private final AuthTokenValidator tokenValidator ;
5859 private final ChallengeNonceStore challengeNonceStore ;
60+ private final WebEidMobileProperties webEidMobileProperties ;
5961
60- public WebEidAuthenticationProvider (AuthTokenValidator tokenValidator , ChallengeNonceStore challengeNonceStore ) {
62+ public WebEidAuthenticationProvider (AuthTokenValidator tokenValidator , ChallengeNonceStore challengeNonceStore , WebEidMobileProperties webEidMobileProperties ) {
6163 this .tokenValidator = tokenValidator ;
6264 this .challengeNonceStore = challengeNonceStore ;
65+ this .webEidMobileProperties = webEidMobileProperties ;
6366 }
6467
6568 @ Override
@@ -81,6 +84,11 @@ public Authentication authenticate(Authentication auth) throws AuthenticationExc
8184 .map (WebEidAuthToken ::getSupportedSignatureAlgorithms )
8285 .orElse (null );
8386
87+ if (webEidMobileProperties .requestSigningCert ()) {
88+ LOG .info ("request-signing-cert=true -> Skipping signing certificate in authentication (demo mode)" );
89+ return WebEidAuthentication .fromCertificate (userCertificate , null , null , authorities );
90+ }
91+
8492 return WebEidAuthentication .fromCertificate (userCertificate , signingCertificate , supportedSignatureAlgorithms , authorities );
8593 } catch (AuthTokenException e ) {
8694 throw new AuthenticationServiceException ("Web eID token validation failed" , e );
0 commit comments