public abstract class AbstractRemoteVerificator extends AbstractVerificator
CredentialExchange
of choice. The implementation should obtain the
RemotelyAuthenticatedInput
(the actual coding should be done here) and before returning it should
be processed by #getResult(RemotelyAuthenticatedInput)
to obtain the final authentication result.
Additionally (to enable compatibility with sandbox authN facility) the extension must call
#startAuthnResponseProcessing(String...)
at the beginning of authN response verification and
#finishAuthnResponseProcessing(RemoteAuthnState, AuthenticationException, RemotelyAuthenticatedInput)
in case of any
exception produced during verification.
Modifier and Type | Class and Description |
---|---|
static interface |
AbstractRemoteVerificator.RemoteAuthnState
Marker interface only.
|
CredentialVerificator.VerificatorType
identityResolver, instanceName
Constructor and Description |
---|
AbstractRemoteVerificator(String name,
String description,
String exchangeId,
RemoteAuthnResultProcessor processor) |
Modifier and Type | Method and Description |
---|---|
protected void |
finishAuthnResponseProcessing(AbstractRemoteVerificator.RemoteAuthnState state,
Exception error)
Should be called at the end of failed verification.
|
protected AuthenticationResult |
getResult(RemotelyAuthenticatedInput input,
pl.edu.icm.unity.types.translation.TranslationProfile profile,
AbstractRemoteVerificator.RemoteAuthnState state)
This method is calling
#processRemoteInput(RemotelyAuthenticatedInput) and then
#assembleAuthenticationResult(RemotelyAuthenticatedContext) . |
static pl.edu.icm.unity.types.translation.TranslationProfile |
getTranslationProfile(UnityPropertiesHelper props,
String globalProfileNameKey,
String embeddedProfileKey) |
protected AbstractRemoteVerificator.RemoteAuthnState |
startAuthnResponseProcessing(SandboxAuthnResultCallback callback,
String... loggingFacilities)
Should be called at the beginning of authN response verification
|
getDescription, getExchangeId, getName, setIdentityResolver, setInstanceName
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getType
getSerializedConfiguration, setSerializedConfiguration
public AbstractRemoteVerificator(String name, String description, String exchangeId, RemoteAuthnResultProcessor processor)
protected AuthenticationResult getResult(RemotelyAuthenticatedInput input, pl.edu.icm.unity.types.translation.TranslationProfile profile, AbstractRemoteVerificator.RemoteAuthnState state) throws AuthenticationException
#processRemoteInput(RemotelyAuthenticatedInput)
and then
#assembleAuthenticationResult(RemotelyAuthenticatedContext)
.
Usually it is the only one that is used in subclasses, when RemotelyAuthenticatedInput
is obtained in an implementation specific way.input
- pl.edu.icm.unity.exceptions.EngineException
AuthenticationException
protected AbstractRemoteVerificator.RemoteAuthnState startAuthnResponseProcessing(SandboxAuthnResultCallback callback, String... loggingFacilities)
loggingFacilities
- logging facilities relevant for the verification processprotected void finishAuthnResponseProcessing(AbstractRemoteVerificator.RemoteAuthnState state, Exception error)
state
- error
- remoteInput
- can be null if failure was upon input assembly.public static pl.edu.icm.unity.types.translation.TranslationProfile getTranslationProfile(UnityPropertiesHelper props, String globalProfileNameKey, String embeddedProfileKey) throws eu.unicore.util.configuration.ConfigurationException
eu.unicore.util.configuration.ConfigurationException
Copyright © 2019 Unity. All rights reserved.