Class DigestAuthMechanism
java.lang.Object
org.restheart.security.mechanisms.DigestAuthMechanism
- All Implemented Interfaces:
io.undertow.security.api.AuthenticationMechanism,ConfigurablePlugin,Plugin,AuthMechanism
HttpHandler to handle HTTP Digest authentication,
both according to RFC-2617 and draft update to allow additional algorithms to
be used.- Author:
- Darran Lofthouse
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.undertow.security.api.AuthenticationMechanism
io.undertow.security.api.AuthenticationMechanism.AuthenticationMechanismOutcome, io.undertow.security.api.AuthenticationMechanism.ChallengeResult -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionDigestAuthMechanism(String realmName, String domain, String mechanismName)DigestAuthMechanism(String realmName, String domain, String mechanismName, io.undertow.security.idm.IdentityManager identityManager)DigestAuthMechanism(String mechanismName, List<io.undertow.security.idm.DigestAlgorithm> supportedAlgorithms, List<io.undertow.security.impl.DigestQop> supportedQops, String realmName, String domain, io.undertow.security.api.NonceManager nonceManager)DigestAuthMechanism(List<io.undertow.security.idm.DigestAlgorithm> supportedAlgorithms, List<io.undertow.security.impl.DigestQop> supportedQops, String realmName, String domain, io.undertow.security.api.NonceManager nonceManager, String mechanismName)DigestAuthMechanism(List<io.undertow.security.idm.DigestAlgorithm> supportedAlgorithms, List<io.undertow.security.impl.DigestQop> supportedQops, String realmName, String domain, io.undertow.security.api.NonceManager nonceManager, String mechanismName, io.undertow.security.idm.IdentityManager identityManager) -
Method Summary
Modifier and TypeMethodDescriptionio.undertow.security.api.AuthenticationMechanism.AuthenticationMechanismOutcomeauthenticate(io.undertow.server.HttpServerExchange exchange, io.undertow.security.api.SecurityContext securityContext)voidinit(Map<String,Object> args, PluginsRegistry pluginsRegistry)voidsendAuthenticationInfoHeader(io.undertow.server.HttpServerExchange exchange)io.undertow.security.api.AuthenticationMechanism.ChallengeResultsendChallenge(io.undertow.server.HttpServerExchange exchange, io.undertow.security.api.SecurityContext securityContext)Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.restheart.plugins.security.AuthMechanism
getMechanismName
-
Field Details
-
SILENT_HEADER_KEY
- See Also:
- Constant Field Values
-
SILENT_QUERY_PARAM_KEY
- See Also:
- Constant Field Values
-
-
Constructor Details
-
DigestAuthMechanism
- Throws:
ConfigurationException
-
DigestAuthMechanism
-
DigestAuthMechanism
-
DigestAuthMechanism
public DigestAuthMechanism(List<io.undertow.security.idm.DigestAlgorithm> supportedAlgorithms, List<io.undertow.security.impl.DigestQop> supportedQops, String realmName, String domain, io.undertow.security.api.NonceManager nonceManager, String mechanismName, io.undertow.security.idm.IdentityManager identityManager) -
DigestAuthMechanism
-
DigestAuthMechanism
-
-
Method Details
-
init
public void init(Map<String,Object> args, PluginsRegistry pluginsRegistry) throws ConfigurationException- Throws:
ConfigurationException
-
sendChallenge
public io.undertow.security.api.AuthenticationMechanism.ChallengeResult sendChallenge(io.undertow.server.HttpServerExchange exchange, io.undertow.security.api.SecurityContext securityContext)- Specified by:
sendChallengein interfaceio.undertow.security.api.AuthenticationMechanism- Specified by:
sendChallengein interfaceAuthMechanism
-
authenticate
public io.undertow.security.api.AuthenticationMechanism.AuthenticationMechanismOutcome authenticate(io.undertow.server.HttpServerExchange exchange, io.undertow.security.api.SecurityContext securityContext)- Specified by:
authenticatein interfaceio.undertow.security.api.AuthenticationMechanism- Specified by:
authenticatein interfaceAuthMechanism
-
sendAuthenticationInfoHeader
public void sendAuthenticationInfoHeader(io.undertow.server.HttpServerExchange exchange)
-