Interface IdentityResolver


  • public interface IdentityResolver
    Allows for resolving an identity into entity, returning also its credential.

    This interface is intended for an internal use, as it performs all operations without any authorization. It should be used by the authentication related components as credential validators or authenticators.

    Author:
    K. Benedyczak
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      boolean isEntityEnabled​(long entity)  
      EntityWithCredential resolveIdentity​(java.lang.String identity, java.lang.String[] identityTypes, java.lang.String credentialName)
      Resolves an identity for performing authentication.
      long resolveIdentity​(java.lang.String identity, java.lang.String[] identityTypes, java.lang.String target, java.lang.String realm)
      Simple version that only resolves, but doesn't establish any local credential.
    • Method Detail

      • resolveIdentity

        EntityWithCredential resolveIdentity​(java.lang.String identity,
                                             java.lang.String[] identityTypes,
                                             java.lang.String credentialName)
                                      throws pl.edu.icm.unity.exceptions.IllegalIdentityValueException,
                                             pl.edu.icm.unity.exceptions.IllegalTypeException,
                                             pl.edu.icm.unity.exceptions.IllegalGroupValueException,
                                             pl.edu.icm.unity.exceptions.EngineException
        Resolves an identity for performing authentication. It is guaranteed that the returned entity has not the disabled authentication state.
        Parameters:
        identity - raw identity value
        identityTypes - what are the types of the identity, in the preference order
        credentialName - what credential should be provided in the returned object. Can be null - then no credential is set in the returned object.
        Returns:
        the entity info with the credential value
        Throws:
        pl.edu.icm.unity.exceptions.IllegalIdentityValueException - if the given identity is not present in the db
        pl.edu.icm.unity.exceptions.IllegalGroupValueException
        pl.edu.icm.unity.exceptions.IllegalTypeException
        pl.edu.icm.unity.exceptions.EngineException
      • resolveIdentity

        long resolveIdentity​(java.lang.String identity,
                             java.lang.String[] identityTypes,
                             java.lang.String target,
                             java.lang.String realm)
                      throws pl.edu.icm.unity.exceptions.EngineException
        Simple version that only resolves, but doesn't establish any local credential. Useful for remote verificators.
        Parameters:
        identity -
        identityTypes -
        Returns:
        Throws:
        pl.edu.icm.unity.exceptions.EngineException
      • isEntityEnabled

        boolean isEntityEnabled​(long entity)