Interface UserAuthenticator

All Known Implementing Classes:
DefaultUserAuthenticator, JdbcUserAuthenticator, LdapUserAuthenticator, SshUserAuthenticator, WebServiceUserAuthenticator, WindowsUserAuthenticator

public interface UserAuthenticator
Interface that defines how to authenticate a remote client that wants to create an AceQL session.

Following built-in and ready to use classes are provided. No coding is required. See each Javadoc for more details:
Since:
5.0
Author:
Nicolas de Pomereu
  • Method Summary

    Modifier and Type Method Description
    boolean login​(String username, char[] password, String database, String ipAddress)
    Allows to authenticate the remote (username, password) couple sent by the client side.
  • Method Details

    • login

      boolean login​(String username, char[] password, String database, String ipAddress) throws IOException, SQLException
      Allows to authenticate the remote (username, password) couple sent by the client side.

      The AceQL HTTP Server will call the method in order to grant or not client access.

      Typical usage would be to check the (username, password) couple against a LDAP server or against a SSH server, etc. The method allows to retrieve:

      • The name of the database to which the client wants to connect.
      • The IP address of the client.
      Parameters:
      username - the username sent by the client
      password - the password to connect to the server
      database - the database name to which the client wants to connect
      ipAddress - the IP address of the client user
      Returns:
      true if the client is authenticated by the method. If false, the client side will not be authorized to send any command.
      Throws:
      IOException - if an IOException occurs
      SQLException - if a SQLException occurs