public class CredSspScheme extends AuthSchemeBase
Client implementation of the CredSSP protocol specified in [MS-CSSP].
Note: This is implementation is NOT GSS based. It should be. But there is no Java NTLM implementation as GSS module. Maybe the NTLMEngine can be converted to GSS and then this can be also switched to GSS. In fact it only works in CredSSP+NTLM case.
Based on [MS-CSSP]: Credential Security Support Provider (CredSSP) Protocol (Revision 13.0, 7/14/2016). The implementation was inspired by Python CredSSP and NTLM implementation by Jordan Borean.
Modifier and Type | Field and Description |
---|---|
static String |
SCHEME_NAME |
Constructor and Description |
---|
CredSspScheme() |
Modifier and Type | Method and Description |
---|---|
Header |
authenticate(Credentials credentials,
HttpRequest request)
Deprecated.
|
Header |
authenticate(Credentials credentials,
HttpRequest request,
HttpContext context)
Produces an authorization string for the given set of
Credentials . |
String |
getParameter(String name)
Returns authentication parameter with the given name, if available.
|
String |
getRealm()
Returns authentication realm.
|
String |
getSchemeName()
Returns textual designation of the given authentication scheme.
|
boolean |
isComplete()
Authentication process may involve a series of challenge-response exchanges.
|
boolean |
isConnectionBased()
Tests if the authentication scheme is provides authorization on a per
connection basis instead of usual per request basis
|
getChallengeState, isProxy, processChallenge, toString
public static final String SCHEME_NAME
public String getSchemeName()
AuthScheme
public String getParameter(String name)
AuthScheme
name
- The name of the parameter to be returnedpublic String getRealm()
AuthScheme
null
.public boolean isConnectionBased()
AuthScheme
true
if the scheme is connection based, false
if the scheme is request based.@Deprecated public Header authenticate(Credentials credentials, HttpRequest request) throws AuthenticationException
AuthScheme
Credentials
.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
ContextAwareAuthScheme
Credentials
.authenticate
in interface ContextAwareAuthScheme
authenticate
in class AuthSchemeBase
credentials
- The set of credentials to be used for athenticationrequest
- The request being authenticatedcontext
- HTTP contextAuthenticationException
- if authorization string cannot
be generated due to an authentication failurepublic boolean isComplete()
AuthScheme
true
if the authentication process has been completed,
false
otherwise.Copyright © 2010 - 2020 Adobe. All Rights Reserved