com.tibbo.aggregate.common.plugin.auth

## Interface AuthenticationPlugin

- All Superinterfaces:
    AggreGatePlugin
  All Known Implementing Classes:
    AbstractAuthenticationPlugin, AuthenticationPluginDecorator

      public interface AuthenticationPlugin
      extends AggreGatePlugin

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `AuthenticationResult` | `authenticate(java.util.Map<AuthenticationParams,java.lang.Object> params)` Tries to authenticate a user.
    `boolean` | `isAuthenticationByPassword()`
    `void` | `logout(java.util.Map<AuthenticationParams,java.lang.Object> params)` Logout external session
    `AuthenticationResult` | `refreshToken(com.google.common.collect.ImmutableMap<AuthenticationParams,java.lang.Object> params)`

    - ### Methods inherited from interface com.tibbo.aggregate.common.plugin.AggreGatePlugin

      `createGlobalConfigContext, createUserConfigContext, getDescription, getGlobalConfigContext, getId, getShortId, getSortIndex, getUserConfigContext, globalDeinit, globalInit, globalStart, globalStop, userDeinit, userInit`

- - ### Method Detail

    - #### authenticate

          AuthenticationResult authenticate(java.util.Map<AuthenticationParams,java.lang.Object> params)
                                     throws PluginException,
                                            ContextException

      Tries to authenticate a user. The external authentication plugin must check validity of user credentials and return an internal username of the authenticated user.
      Parameters:
        `params` - Authentication params
      Returns:
        Authentication result
      Throws:
        `PluginException`
        `ContextException`

    - #### isAuthenticationByPassword

          boolean isAuthenticationByPassword()

    - #### logout

          void logout(java.util.Map<AuthenticationParams,java.lang.Object> params)
               throws ContextException

      Logout external session
      Parameters:
        `params` -
      Throws:
        `ContextException`

    - #### refreshToken

          AuthenticationResult refreshToken(com.google.common.collect.ImmutableMap<AuthenticationParams,java.lang.Object> params)
                                     throws ContextException

      Throws:
        `ContextException`