public class DefaultAuthProvider extends Object implements AuthProvider
ofUser
database table and supports plain text and digest authentication.
Because each call to authenticate() makes a database connection, the
results of authentication should be cached whenever possible.| Constructor and Description |
|---|
DefaultAuthProvider()
Constructs a new DefaultAuthProvider.
|
| Modifier and Type | Method and Description |
|---|---|
void |
authenticate(String username,
String password)
Returns if the username and password are valid; otherwise this
method throws an UnauthorizedException.
|
boolean |
checkPassword(String username,
String testPassword) |
int |
getIterations(String username) |
String |
getPassword(String username)
Returns the user's password.
|
String |
getSalt(String username) |
String |
getServerKey(String username) |
String |
getStoredKey(String username) |
boolean |
isScramSupported() |
void |
setPassword(String username,
String password)
Sets the users's password.
|
boolean |
supportsPasswordRetrieval()
Returns true if this UserProvider is able to retrieve user passwords from
the backend user store.
|
public DefaultAuthProvider()
public String getSalt(String username) throws UserNotFoundException
getSalt in interface AuthProviderUserNotFoundExceptionpublic int getIterations(String username) throws UserNotFoundException
getIterations in interface AuthProviderUserNotFoundExceptionpublic String getStoredKey(String username) throws UserNotFoundException
getStoredKey in interface AuthProviderUserNotFoundExceptionpublic String getServerKey(String username) throws UserNotFoundException
getServerKey in interface AuthProviderUserNotFoundExceptionpublic void authenticate(String username, String password) throws UnauthorizedException
AuthProviderauthenticate in interface AuthProviderusername - the username or full JID.password - the passwordUnauthorizedException - if the username and password do
not match any existing user.public String getPassword(String username) throws UserNotFoundException
AuthProvidergetPassword in interface AuthProviderusername - the username of the user.UserNotFoundException - if the given user's password could not be loaded.public boolean checkPassword(String username, String testPassword) throws UserNotFoundException
UserNotFoundExceptionpublic void setPassword(String username, String password) throws UserNotFoundException
AuthProvidersetPassword in interface AuthProviderusername - the username of the user.password - the new plaintext password for the user.UserNotFoundException - if the given user could not be loaded.public boolean supportsPasswordRetrieval()
AuthProviderAuthProvider.getPassword(String)
will throw an UnsupportedOperationException if invoked.supportsPasswordRetrieval in interface AuthProviderpublic boolean isScramSupported()
isScramSupported in interface AuthProviderCopyright © 2003–2019 Ignite Realtime. All rights reserved.