# Class: AuthProvider

## vertx-auth-common-js/auth_provider~ AuthProvider

#### new AuthProvider()

  User-facing interface for authenticating users.
  Source:
    - auth_provider.js, line 31

### Methods

#### authenticate(authInfo, resultHandler)

  Authenticate a user.

  The first argument is a JSON object containing information for authenticating the user. What this actually contains depends on the specific implementation. In the case of a simple username/password based authentication it is likely to contain a JSON object with the following structure:

           {
             "username": "tim",
             "password": "mypassword"
           }

  For other types of authentication it contain different information - for example a JWT token or OAuth bearer token.

  If the user is successfully authenticated a User object is passed to the handler in an AsyncResult. The user object can then be used for authorisation.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `authInfo` | Object | The auth information
  `resultHandler` | function | The result handler

  Source:
    - auth_provider.js, line 57