S
- The type of SessionContext
being provided to the instance creatorM
- The authentication method factory typepublic interface UserAuthMethodFactory<S extends SessionContext,M extends UserAuthInstance<S>> extends NamedResource
Modifier and Type | Field and Description |
---|---|
static String |
HOST_BASED
Host-based authentication method
|
static String |
KB_INTERACTIVE
Keyboard interactive authentication method
|
static String |
PASSWORD
Password authentication method name
|
static String |
PUBLIC_KEY
Public key authentication method name
|
BY_NAME_COMPARATOR, NAME_EXTRACTOR
Modifier and Type | Method and Description |
---|---|
M |
createUserAuth(S session) |
static <S extends SessionContext,M extends UserAuthInstance<S>> |
createUserAuth(S session,
Collection<? extends UserAuthMethodFactory<S,M>> factories,
String name) |
static boolean |
isDataIntegrityAuthenticationTransport(SessionContext session) |
static boolean |
isSecureAuthenticationTransport(SessionContext session)
According to RFC 4252 - section 8:
|
findByName, findFirstMatchByName, getName, getNameList, getNames, ofName, removeByName, safeCompareByName
static final String PASSWORD
static final String PUBLIC_KEY
static final String KB_INTERACTIVE
static final String HOST_BASED
M createUserAuth(S session) throws IOException
session
- The session for which authentication is requiredIOException
- If failed to create the instancestatic <S extends SessionContext,M extends UserAuthInstance<S>> M createUserAuth(S session, Collection<? extends UserAuthMethodFactory<S,M>> factories, String name) throws IOException
S
- The type of SessionContext
being provided to the instance creatorM
- The authentication method factory typesession
- The session through which the request is being madefactories
- The available factoriesname
- The requested factory namenull
if no matching factoryIOException
- If failed to create the instancestatic boolean isSecureAuthenticationTransport(SessionContext session)
Both the server and the client should check whether the underlying transport layer provides confidentiality (i.e., if encryption is being used). If no confidentiality is provided ("none" cipher), password authentication SHOULD be disabled. If there is no confidentiality or no MAC, password change SHOULD be disabled.
session
- The SessionContext
being used for authenticationtrue
if the context is not null
and the ciphers have been established to anything
other than "none".CommonModuleProperties.ALLOW_INSECURE_AUTH
,
SessionContext.isSecureSessionTransport(SessionContext)
static boolean isDataIntegrityAuthenticationTransport(SessionContext session)
session
- The SessionContext
being used for authenticationtrue
if the context is not null
and the MAC(s) used to verify packet integrity
have been established.CommonModuleProperties.ALLOW_NON_INTEGRITY_AUTH
,
SessionContext.isDataIntegrityTransport(SessionContext)
Copyright © 2008–2024 The Apache Software Foundation. All rights reserved.