public abstract class AbstractScramAuthenticationManager<X extends AbstractScramAuthenticationManager<X>> extends ConfigModelPasswordManagingAuthenticationProvider<X> implements PasswordCredentialManagingAuthenticationProvider<X>, ScramSaslServerSource
AbstractConfiguredObject.CallableWithArgument<V,A>, AbstractConfiguredObject.ChainedListenableFuture<V>, AbstractConfiguredObject.ChainedSettableFuture<V>, AbstractConfiguredObject.DuplicateIdException, AbstractConfiguredObject.DuplicateNameException
ScramSaslServerSource.SaltAndPasswordKeys
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_ITERATION_COUNT |
static String |
PLAIN |
static String |
QPID_AUTHMANAGER_SCRAM_ITERATION_COUNT |
_users
SECURED_STRING_VALUE
CONTEXT, CREATED_BY, CREATED_TIME, DESCRIPTION, DESIRED_STATE, DURABLE, ID, LAST_UPDATED_BY, LAST_UPDATED_TIME, LIFETIME_POLICY, NAME, OVER_SIZED_ATTRIBUTE_ALTERNATIVE_TEXT, STATE, TYPE
Modifier | Constructor and Description |
---|---|
protected |
AbstractScramAuthenticationManager(Map<String,Object> attributes,
Broker broker) |
Modifier and Type | Method and Description |
---|---|
protected com.google.common.util.concurrent.ListenableFuture<Void> |
activate() |
AuthenticationResult |
authenticate(String username,
String password)
Authenticates a user using their username and password.
|
SaslServer |
createSaslServer(String mechanism,
String localFQDN,
Principal externalPrincipal)
Creates a SASL server for the specified mechanism name for the given
fully qualified domain name.
|
protected String |
createStoredPassword(String password) |
protected abstract String |
getDigestName() |
protected abstract String |
getHmacName() |
int |
getIterationCount() |
protected abstract String |
getMechanismName() |
List<String> |
getMechanisms()
Gets the SASL mechanisms known to this manager.
|
ScramSaslServerSource.SaltAndPasswordKeys |
getSaltAndPasswordKeys(String username) |
addChildAsync, authenticate, createUser, deleteUser, getSecurityManager, getUsers, recoverUser, reload, setPassword
doDelete, getBroker, getDisabledMechanisms, getPreferencesProvider, getSecureOnlyMechanisms, getSubjectCreator, getVirtualHostPortBindings, onOpen, onValidate, setPreferencesProvider, startQuiesced
addChangeListener, applyToChildren, asObjectRecord, attainState, attributeSet, authoriseCreate, authoriseCreateChild, authoriseDelete, authoriseSetAttributes, beforeClose, changeAttribute, changeAttributes, childAdded, childRemoved, close, closeAsync, closeChildren, create, createAsync, createChild, createChildAsync, decryptSecrets, delete, deleteAsync, deleted, doAfter, doAfter, doAfter, doAfter, doAfter, doAfter, doAfterAlways, doAfterAlways, doCreation, doOnConfigThread, doOpening, doResolution, doSync, doSync, doValidation, findConfiguredObject, forceUpdateAllSecureAttributes, getActualAttributes, getAttainedChildById, getAttainedChildByName, getAttribute, getAttributeNames, getCategoryClass, getChildById, getChildByName, getChildExecutor, getChildren, getContext, getContextKeys, getContextValue, getContextValue, getCreatedBy, getCreatedTime, getDescription, getDesiredState, getId, getLastOpenedTime, getLastUpdatedBy, getLastUpdatedTime, getLifetimePolicy, getModel, getName, getObjectFactory, getParent, getState, getStatistics, getTaskExecutor, getType, getTypeClass, handleExceptionOnOpen, isDurable, managesChildStorage, notifyStateChanged, onClose, onCreate, onExceptionInOpen, onResolve, open, openAsync, parentsMap, postResolve, postResolveChildren, registerWithParents, removeChangeListener, rethrowRuntimeExceptionsOnOpen, runTask, setAttribute, setAttributes, setAttributesAsync, setEncrypter, setState, start, startAsync, stop, toString, validateChange, validateOnCreate
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
createUser, deleteUser, getUsers, reload, setPassword
authenticate, getDisabledMechanisms, getPreferencesProvider, getSecureOnlyMechanisms, getSubjectCreator, getVirtualHostPortBindings, recoverUser, setPreferencesProvider
addChangeListener, asObjectRecord, close, closeAsync, createChild, createChildAsync, decryptSecrets, delete, deleteAsync, findConfiguredObject, getActualAttributes, getAttainedChildById, getAttainedChildByName, getAttribute, getAttributeNames, getCategoryClass, getChildById, getChildByName, getChildExecutor, getChildren, getContext, getContextKeys, getContextValue, getContextValue, getCreatedBy, getCreatedTime, getDescription, getDesiredState, getId, getLastOpenedTime, getLastUpdatedBy, getLastUpdatedTime, getLifetimePolicy, getModel, getName, getObjectFactory, getParent, getState, getStatistics, getTaskExecutor, getType, getTypeClass, isDurable, managesChildStorage, open, openAsync, removeChangeListener, setAttribute, setAttributes, setAttributesAsync
getPreferencesProvider, setPreferencesProvider
public static final String PLAIN
public static final String QPID_AUTHMANAGER_SCRAM_ITERATION_COUNT
public static final int DEFAULT_ITERATION_COUNT
protected com.google.common.util.concurrent.ListenableFuture<Void> activate()
activate
in class AbstractAuthenticationManager<X extends AbstractScramAuthenticationManager<X>>
public List<String> getMechanisms()
AuthenticationProvider
getMechanisms
in interface AuthenticationProvider<X extends AbstractScramAuthenticationManager<X>>
protected abstract String getMechanismName()
public SaslServer createSaslServer(String mechanism, String localFQDN, Principal externalPrincipal) throws SaslException
AuthenticationProvider
createSaslServer
in interface AuthenticationProvider<X extends AbstractScramAuthenticationManager<X>>
mechanism
- mechanism namelocalFQDN
- domain nameexternalPrincipal
- externally authenticated PrincipalSaslException
protected abstract String getDigestName()
public AuthenticationResult authenticate(String username, String password)
UsernamePasswordAuthenticationProvider
authenticate
in interface UsernamePasswordAuthenticationProvider<X extends AbstractScramAuthenticationManager<X>>
username
- usernamepassword
- passwordpublic int getIterationCount()
getIterationCount
in interface ScramSaslServerSource
protected abstract String getHmacName()
protected String createStoredPassword(String password)
createStoredPassword
in class ConfigModelPasswordManagingAuthenticationProvider<X extends AbstractScramAuthenticationManager<X>>
public ScramSaslServerSource.SaltAndPasswordKeys getSaltAndPasswordKeys(String username)
getSaltAndPasswordKeys
in interface ScramSaslServerSource
Copyright © 2006–2016 The Apache Software Foundation. All rights reserved.