public class DigestAuthenticator extends AuthenticatorBase
| Modifier and Type | Field and Description |
|---|---|
protected static java.lang.String |
info
Descriptive information about this implementation.
|
protected java.lang.String |
key
Private key.
|
protected static MD5Encoder |
md5Encoder
The MD5 helper object for this class.
|
protected static java.security.MessageDigest |
md5Helper
MD5 message digest provider.
|
algorithm, cache, changeSessionIdOnAuthentication, context, DEFAULT_ALGORITHM, digest, disableProxyCaching, entropy, lifecycle, random, randomClass, REALM_NAME, securePagesWithPragma, SESSION_ID_BYTES, sm, sso, startedcontainer, containerLog, controller, domain, mserver, next, onameAFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, DESTROY_EVENT, INIT_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT| Constructor and Description |
|---|
DigestAuthenticator() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
authenticate(Request request,
Response response,
LoginConfig config)
Authenticate the user making this request, based on the specified
login configuration.
|
protected static java.security.Principal |
findPrincipal(Request request,
java.lang.String authorization,
Realm realm)
Parse the specified authorization credentials, and return the
associated Principal that these credentials authenticate (if any)
from the specified Realm.
|
protected java.lang.String |
generateNOnce(Request request)
Generate a unique token.
|
java.lang.String |
getInfo()
Return descriptive information about this Valve implementation.
|
protected java.lang.String |
parseUsername(java.lang.String authorization)
Parse the username from the specified authorization string.
|
protected static java.lang.String |
removeQuotes(java.lang.String quotedString)
Removes the quotes on a string.
|
protected static java.lang.String |
removeQuotes(java.lang.String quotedString,
boolean quotesRequired)
Removes the quotes on a string.
|
protected void |
setAuthenticateHeader(Request request,
Response response,
LoginConfig config,
java.lang.String nOnce)
Generates the WWW-Authenticate header.
|
addLifecycleListener, associate, findLifecycleListeners, generateSessionId, getAlgorithm, getCache, getChangeSessionIdOnAuthentication, getContainer, getDigest, getDisableProxyCaching, getEntropy, getRandom, getRandomClass, getSecurePagesWithPragma, invoke, reauthenticateFromSSO, register, removeLifecycleListener, setAlgorithm, setCache, setChangeSessionIdOnAuthentication, setContainer, setDisableProxyCaching, setEntropy, setRandomClass, setSecurePagesWithPragma, start, stopbackgroundProcess, createObjectName, event, getContainerName, getController, getDomain, getNext, getObjectName, getParentName, postDeregister, postRegister, preDeregister, preRegister, setController, setNext, setObjectName, toStringprotected static final MD5Encoder md5Encoder
protected static final java.lang.String info
protected static java.security.MessageDigest md5Helper
protected java.lang.String key
public java.lang.String getInfo()
getInfo in interface ValvegetInfo in class AuthenticatorBasepublic boolean authenticate(Request request, Response response, LoginConfig config) throws java.io.IOException
true if any specified
constraint has been satisfied, or false if we have
created a response challenge already.authenticate in class AuthenticatorBaserequest - Request we are processingresponse - Response we are creatingconfig - Login configuration describing how authentication
should be performedjava.io.IOException - if an input/output error occursprotected static java.security.Principal findPrincipal(Request request, java.lang.String authorization, Realm realm)
null.request - HTTP servlet requestauthorization - Authorization credentials from this requestrealm - Realm used to authenticate Principalsprotected java.lang.String parseUsername(java.lang.String authorization)
nullauthorization - Authorization string to be parsedprotected static java.lang.String removeQuotes(java.lang.String quotedString,
boolean quotesRequired)
protected static java.lang.String removeQuotes(java.lang.String quotedString)
protected java.lang.String generateNOnce(Request request)
request - HTTP Servlet requestprotected void setAuthenticateHeader(Request request, Response response, LoginConfig config, java.lang.String nOnce)
The header MUST follow this template :
WWW-Authenticate = "WWW-Authenticate" ":" "Digest"
digest-challenge
digest-challenge = 1#( realm | [ domain ] | nOnce |
[ digest-opaque ] |[ stale ] | [ algorithm ] )
realm = "realm" "=" realm-value
realm-value = quoted-string
domain = "domain" "=" <"> 1#URI <">
nonce = "nonce" "=" nonce-value
nonce-value = quoted-string
opaque = "opaque" "=" quoted-string
stale = "stale" "=" ( "true" | "false" )
algorithm = "algorithm" "=" ( "MD5" | token )
request - HTTP Servlet requestresponse - HTTP Servlet responseconfig - Login configuration describing how authentication
should be performednOnce - nonce tokenCopyright © 2000-2013 Apache Software Foundation. All Rights Reserved.