Package org.h2.security.auth

# Interface Authenticator

All Known Implementing Classes:
  `DefaultAuthenticator`

public interface Authenticator
Low level interface to implement full authentication process.

## Method Summary

Modifier and Type
Method
Description
`User`
`authenticate(AuthenticationInfo authenticationInfo, Database database)`
Perform user authentication.
`void`
`init(Database database)`
Initialize the authenticator.

## Method Details

### 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`