Interface RemoteAuthnResultTranslator
public interface RemoteAuthnResultTranslator
Processes
RemotelyAuthenticatedInput
by applying a translation profile to it and
returns RemotelyAuthenticatedPrincipal
or AuthenticationResult
depending whether
caller wants to have a possibility to postprocess the translation profile output or not.- Author:
- K. Benedyczak
-
Method Summary
Modifier and TypeMethodDescriptionassembleAuthenticationResult
(RemotelyAuthenticatedPrincipal remoteContext, String registrationForm, boolean allowAssociation) Tries to resolve the primary identity from the previously createdRemotelyAuthenticatedPrincipal
(usually via#processRemoteInput(RemotelyAuthenticatedInput)
) and returns a finalAuthenticationResult
depending on the success of this action.getTranslatedResult
(RemotelyAuthenticatedInput input, String profile, boolean dryRun, Optional<pl.edu.icm.unity.base.identity.IdentityTaV> identity, String registrationForm, boolean allowAssociation) This method is calling#processRemoteInput(RemotelyAuthenticatedInput)
and then#assembleAuthenticationResult(RemotelyAuthenticatedPrincipal)
.getTranslatedResult
(RemotelyAuthenticatedInput input, pl.edu.icm.unity.base.translation.TranslationProfile profile, boolean dryRun, Optional<pl.edu.icm.unity.base.identity.IdentityTaV> identity, String registrationForm, boolean allowAssociation) Equivalent to#getResult(RemotelyAuthenticatedInput, String, boolean, Optional)
but translation profile is given directlytranslateRemoteInput
(RemotelyAuthenticatedInput input, pl.edu.icm.unity.base.translation.TranslationProfile profile, boolean dryRun, Optional<pl.edu.icm.unity.base.identity.IdentityTaV> identity) Invokes the configured translation profile on the remotely obtained authentication input.
-
Method Details
-
getTranslatedResult
RemoteAuthenticationResult getTranslatedResult(RemotelyAuthenticatedInput input, String profile, boolean dryRun, Optional<pl.edu.icm.unity.base.identity.IdentityTaV> identity, String registrationForm, boolean allowAssociation) throws RemoteAuthenticationException This method is calling#processRemoteInput(RemotelyAuthenticatedInput)
and then#assembleAuthenticationResult(RemotelyAuthenticatedPrincipal)
. Usually it is the only one that is used, whenRemotelyAuthenticatedInput
is obtained in an implementation specific way.- Throws:
RemoteAuthenticationException
-
getTranslatedResult
RemoteAuthenticationResult getTranslatedResult(RemotelyAuthenticatedInput input, pl.edu.icm.unity.base.translation.TranslationProfile profile, boolean dryRun, Optional<pl.edu.icm.unity.base.identity.IdentityTaV> identity, String registrationForm, boolean allowAssociation) throws RemoteAuthenticationException Equivalent to#getResult(RemotelyAuthenticatedInput, String, boolean, Optional)
but translation profile is given directly- Throws:
RemoteAuthenticationException
-
assembleAuthenticationResult
RemoteAuthenticationResult assembleAuthenticationResult(RemotelyAuthenticatedPrincipal remoteContext, String registrationForm, boolean allowAssociation) throws RemoteAuthenticationException Tries to resolve the primary identity from the previously createdRemotelyAuthenticatedPrincipal
(usually via#processRemoteInput(RemotelyAuthenticatedInput)
) and returns a finalAuthenticationResult
depending on the success of this action.- Throws:
RemoteAuthenticationException
-
translateRemoteInput
RemotelyAuthenticatedPrincipal translateRemoteInput(RemotelyAuthenticatedInput input, pl.edu.icm.unity.base.translation.TranslationProfile profile, boolean dryRun, Optional<pl.edu.icm.unity.base.identity.IdentityTaV> identity) throws pl.edu.icm.unity.base.exceptions.EngineException Invokes the configured translation profile on the remotely obtained authentication input. Then assembles theRemotelyAuthenticatedPrincipal
from the processed input containing the information about what from the remote data is or can be meaningful in the local DB.- Parameters:
identity
- if not empty then fixes the identity for which the profile is executed.- Throws:
pl.edu.icm.unity.base.exceptions.EngineException
-