code: @Override
      public AuthenticationResult authenticate(WebRequest webRequest) {
          AuthenticationResult authResult = handleTAI(webRequest, true);
          if ((authResult.getStatus() == AuthResult.CONTINUE) && continueAfterUnprotectedURI(webRequest)) {
              authResult = handleSSO(webRequest, null);
              if (authResult.getStatus() == AuthResult.CONTINUE) {
                  webRequest.setCallAfterSSO(true);
                  authResult = handleTAI(webRequest, false);
              }
          }
  
          return authResult;
  
      }
docs: /*
  This method is the main method calling by the WebAuthenticatorProxy to handle TAI and SSO