new ChainAuth()
Chain several auth providers as if they were one. This is useful for cases where one want to authenticate across
several providers, for example, database and fallback to passwd file.
Methods
append(other) → {ChainAuth}
Appends a auth provider to the chain.
Parameters:
Name | Type | Description |
---|---|---|
other |
AuthProvider | auth provider |
Returns:
self
- Type
- ChainAuth
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 |
clear()
Clears the chain.
remove(other) → {boolean}
Removes a provider from the chain.
Parameters:
Name | Type | Description |
---|---|---|
other |
AuthProvider | provider to remove |
Returns:
true if provider was removed, false if non existent in the chain.
- Type
- boolean