@Override
    public AuthenticationHandlerExecutionResult authenticate(final Credential credential, final Service service) throws Throwable {
        try {
            val addressCredential = (RemoteAuthenticationCredential) credential;
            val principalId = remoteCookieCipherExecutor.decode(addressCredential.getCookie());
            return new DefaultAuthenticationHandlerExecutionResult(this, addressCredential,
                principalFactory.createPrincipal(principalId));
        } catch (final Exception e) {
            LoggingUtils.error(LOGGER, e);
        }
        throw new FailedLoginException("Unable to accept cookie for authentication");
    }
This is {@link RemoteCookieAuthenticationHandler}.

@author Misagh Moayyed
@since 7.0.0
support/cas-server-support-generic-remote-webflow/src/main/java/org/apereo/cas/adaptors/generic/remote/RemoteCookieAuthenticationHandler.java