@NotThreadSafe public class DigestScheme extends RFC2617Scheme
Since the digest username is included as clear text in the generated Authentication header, the charset of the username must be compatible with the HTTP element charset used by the connection.
challengeState| Constructor and Description |
|---|
DigestScheme() |
DigestScheme(ChallengeState challengeState)
Deprecated.
(4.3) do not use.
|
DigestScheme(java.nio.charset.Charset credentialsCharset) |
| Modifier and Type | Method and Description |
|---|---|
Header |
authenticate(Credentials credentials,
HttpRequest request)
|
Header |
authenticate(Credentials credentials,
HttpRequest request,
HttpContext context)
Produces a digest authorization string for the given set of
Credentials, method name and URI. |
static java.lang.String |
createCnonce()
Creates a random cnonce value based on the current time.
|
(package private) static java.lang.String |
encode(byte[] binaryData)
Encodes the 128 bit (16 bytes) MD5 digest into a 32 characters long
String according to RFC 2617. |
(package private) java.lang.String |
getA1() |
(package private) java.lang.String |
getA2() |
(package private) java.lang.String |
getCnonce() |
java.lang.String |
getSchemeName()
Returns textual designation of the digest authentication scheme.
|
boolean |
isComplete()
Tests if the Digest authentication process has been completed.
|
boolean |
isConnectionBased()
Returns
false. |
void |
overrideParamter(java.lang.String name,
java.lang.String value) |
void |
processChallenge(Header header)
Processes the Digest challenge.
|
java.lang.String |
toString() |
getCredentialsCharset, getCredentialsCharset, getParameter, getParameters, getRealm, parseChallengegetChallengeState, isProxypublic DigestScheme(java.nio.charset.Charset credentialsCharset)
@Deprecated public DigestScheme(ChallengeState challengeState)
DigestScheme with the given challenge
state.public DigestScheme()
public void processChallenge(Header header) throws MalformedChallengeException
processChallenge in interface AuthSchemeprocessChallenge in class AuthSchemeBaseheader - the challenge headerMalformedChallengeException - is thrown if the authentication challenge
is malformedpublic boolean isComplete()
true if Digest authorization has been processed,
false otherwise.public java.lang.String getSchemeName()
digestpublic boolean isConnectionBased()
false. Digest authentication scheme is request based.false.public void overrideParamter(java.lang.String name,
java.lang.String value)
@Deprecated public Header authenticate(Credentials credentials, HttpRequest request) throws AuthenticationException
ContextAwareAuthScheme.authenticate(
Credentials, HttpRequest, org.apache.http.protocol.HttpContext)AuthSchemeCredentials.credentials - The set of credentials to be used for athenticationrequest - The request being authenticatedAuthenticationException - if authorization string cannot
be generated due to an authentication failurepublic Header authenticate(Credentials credentials, HttpRequest request, HttpContext context) throws AuthenticationException
Credentials, method name and URI.authenticate in interface ContextAwareAuthSchemeauthenticate in class AuthSchemeBasecredentials - A set of credentials to be used for athenticationrequest - The request being authenticatedcontext - HTTP contextInvalidCredentialsException - if authentication credentials
are not valid or not applicable for this authentication schemeAuthenticationException - if authorization string cannot
be generated due to an authentication failurejava.lang.String getCnonce()
java.lang.String getA1()
java.lang.String getA2()
static java.lang.String encode(byte[] binaryData)
String according to RFC 2617.binaryData - array containing the digestnull if encoding failedpublic static java.lang.String createCnonce()
public java.lang.String toString()
toString in class AuthSchemeBase