org.h2.security.auth

## Interface Authenticator

All Known Implementing Classes:
  DefaultAuthenticator

    public interface Authenticator

Low level interface to implement full authentication process.

### Method Summary

All Methods Instance Methods Abstract Methods
`User` `authenticate(AuthenticationInfo authenticationInfo, Database database)` Perform user authentication.
`void` `init(Database database)` Initialize the authenticator.

### Method Detail

#### authenticate

    User authenticate(AuthenticationInfo authenticationInfo,
                      Database database)
               throws AuthenticationException

Perform user authentication.

Parameters:
  `authenticationInfo` - authentication info.
  `database` - target database instance.
Returns:
  valid database user or null if user doesn't exists in the database
Throws:
  `AuthenticationException` - on failure

#### init

    void init(Database database)
       throws AuthConfigException

Initialize the authenticator. This method is invoked by databases when the authenticator is set when the authenticator is set.

Parameters:
  `database` - target database
Throws:
  `AuthConfigException`