Class DigestAuthMechanism
- java.lang.Object
-
- org.restheart.security.plugins.mechanisms.DigestAuthMechanism
-
- All Implemented Interfaces:
io.undertow.security.api.AuthenticationMechanism,ConfigurablePlugin,Plugin,AuthMechanism
public class DigestAuthMechanism extends Object implements AuthMechanism
HttpHandlerto handle HTTP Digest authentication, both according to RFC-2617 and draft update to allow additional algorithms to be used.- Author:
- Darran Lofthouse
-
-
Field Summary
Fields Modifier and Type Field Description static StringSILENT_HEADER_KEYstatic StringSILENT_QUERY_PARAM_KEY
-
Constructor Summary
Constructors Constructor Description DigestAuthMechanism()DigestAuthMechanism(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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description io.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, wait
-
Methods inherited from interface org.restheart.plugins.security.AuthMechanism
getMechanismName
-
-
-
-
Field Detail
-
SILENT_HEADER_KEY
public static final String SILENT_HEADER_KEY
- See Also:
- Constant Field Values
-
SILENT_QUERY_PARAM_KEY
public static final String SILENT_QUERY_PARAM_KEY
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
DigestAuthMechanism
public DigestAuthMechanism() throws ConfigurationException- Throws:
ConfigurationException
-
DigestAuthMechanism
public 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
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)
-
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
public DigestAuthMechanism(String realmName, String domain, String mechanismName)
-
-
Method Detail
-
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)
-
-