NTLMScheme (HttpClient 3.1 API)
Keywords: org.apache.commons.httpclient.auth.NTLMScheme class

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.httpclient.auth
Class NTLMScheme

    java.lang.Object
      org.apache.commons.httpclient.auth.NTLMScheme

All Implemented Interfaces:
  AuthScheme

    public class NTLMScheme

extends Object
implements AuthScheme

An implementation of the Microsoft proprietary NTLM authentication scheme. For a detailed explanation of the NTLM scheme please see http://davenport.sourceforge.net/ntlm.html.

Author:
  Remy Maucherat, Rodney Waldhoff, Jeff Dever, Ortwin Gl???ck, Sean C. Sullivan, Adrian Sutton, Mike Bowler, Oleg Kalnichevski

Constructor Summary
`NTLMScheme()` Default constructor for the NTLM authentication scheme.
`NTLMScheme(String challenge)` Constructor for the NTLM authentication scheme.

Method Summary
`String` | `authenticate(Credentials credentials, HttpMethod method)` Produces NTLM authorization string for the given set of `Credentials`.
`String` | `authenticate(Credentials credentials, String method, String uri)` Deprecated. Use `authenticate(Credentials, HttpMethod)`
`static String` | `authenticate(NTCredentials credentials, String challenge)` Deprecated. Use non-static `authenticate(Credentials, HttpMethod)`
`static String` | `authenticate(NTCredentials credentials, String challenge, String charset)` Deprecated. Use non-static `authenticate(Credentials, HttpMethod)`
`String` | `getID()` Deprecated. no longer used
`String` | `getParameter(String name)` Returns the authentication parameter with the given name, if available.
`String` | `getRealm()` The concept of an authentication realm is not supported by the NTLM authentication scheme.
`String` | `getSchemeName()` Returns textual designation of the NTLM authentication scheme.
`boolean` | `isComplete()` Tests if the NTLM authentication process has been completed.
`boolean` | `isConnectionBased()` Returns `true`.
`void` | `processChallenge(String challenge)` Processes the NTLM challenge.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### NTLMScheme

    public NTLMScheme()

  Default constructor for the NTLM authentication scheme.

  Since:
    3.0

### NTLMScheme

    public NTLMScheme(String challenge)
               throws MalformedChallengeException

  Constructor for the NTLM authentication scheme.

  Parameters:
    `challenge` - The authentication challenge
  Throws:
    `MalformedChallengeException` - is thrown if the authentication challenge is malformed

Method Detail

### processChallenge

    public void processChallenge(String challenge)
                          throws MalformedChallengeException

  Processes the NTLM challenge.

  Specified by:
    `processChallenge` in interface `AuthScheme`
  Parameters:
    `challenge` - the challenge string
  Throws:
    `MalformedChallengeException` - is thrown if the authentication challenge is malformed
  Since:
    3.0

### isComplete

    public boolean isComplete()

  Tests if the NTLM authentication process has been completed.

  Specified by:
    `isComplete` in interface `AuthScheme`
  Returns:
    `true` if Basic authorization has been processed, `false` otherwise.
  Since:
    3.0

### getSchemeName

    public String getSchemeName()

  Returns textual designation of the NTLM authentication scheme.

  Specified by:
    `getSchemeName` in interface `AuthScheme`
  Returns:
    `ntlm`

### getRealm

    public String getRealm()

  The concept of an authentication realm is not supported by the NTLM authentication scheme. Always returns `null`.

  Specified by:
    `getRealm` in interface `AuthScheme`
  Returns:
    `null`

### getID

    public String getID()

  Deprecated. no longer used

  Returns a String identifying the authentication challenge. This is used, in combination with the host and port to determine if authorization has already been attempted or not. Schemes which require multiple requests to complete the authentication should return a different value for each stage in the request.

  Additionally, the ID should take into account any changes to the authentication challenge and return a different value when appropriate. For example when the realm changes in basic authentication it should be considered a different authentication attempt and a different value should be returned.

  Specified by:
    `getID` in interface `AuthScheme`
  Returns:
    String a String identifying the authentication challenge. The returned value may be null.

### getParameter

    public String getParameter(String name)

  Returns the authentication parameter with the given name, if available.

  There are no valid parameters for NTLM authentication so this method always returns `null`.

  Specified by:
    `getParameter` in interface `AuthScheme`
  Parameters:
    `name` - The name of the parameter to be returned
  Returns:
    the parameter with the given name

### isConnectionBased

    public boolean isConnectionBased()

  Returns `true`. NTLM authentication scheme is connection based.

  Specified by:
    `isConnectionBased` in interface `AuthScheme`
  Returns:
    `true`.
  Since:
    3.0

### authenticate

    public static String authenticate(NTCredentials credentials,
                                      String challenge)
                               throws AuthenticationException

  Deprecated. Use non-static `authenticate(Credentials, HttpMethod)`

  Create a NTLM authorization string for the given challenge and NT credentials.

  Parameters:
    `challenge` - The challenge.
    `credentials` - `NTCredentials`
  Returns:
    a ntlm authorization string
  Throws:
    `AuthenticationException` - is thrown if authentication fails

### authenticate

    public static String authenticate(NTCredentials credentials,
                                      String challenge,
                                      String charset)
                               throws AuthenticationException

  Deprecated. Use non-static `authenticate(Credentials, HttpMethod)`

  Create a NTLM authorization string for the given challenge and NT credentials.

  Parameters:
    `challenge` - The challenge.
    `credentials` - `NTCredentials`
    `charset` - The charset to use for encoding the credentials
  Returns:
    a ntlm authorization string
  Throws:
    `AuthenticationException` - is thrown if authentication fails
  Since:
    3.0

### authenticate

    public String authenticate(Credentials credentials,
                               String method,
                               String uri)
                        throws AuthenticationException

  Deprecated. Use `authenticate(Credentials, HttpMethod)`

  Produces NTLM authorization string for the given set of `Credentials`.

  Specified by:
    `authenticate` in interface `AuthScheme`
  Parameters:
    `credentials` - The set of credentials to be used for athentication
    `method` - Method name is ignored by the NTLM authentication scheme
    `uri` - URI is ignored by the NTLM authentication scheme
  Returns:
    an NTLM authorization string
  Throws:
    `InvalidCredentialsException` - if authentication credentials are not valid or not applicable for this authentication scheme
    `AuthenticationException` - if authorization string cannot be generated due to an authentication failure
  See Also:
    `HttpMethod.getName()`, `HttpMethod.getPath()`

### authenticate

    public String authenticate(Credentials credentials,
                               HttpMethod method)
                        throws AuthenticationException

  Produces NTLM authorization string for the given set of `Credentials`.

  Specified by:
    `authenticate` in interface `AuthScheme`
  Parameters:
    `credentials` - The set of credentials to be used for athentication
    `method` - The method being authenticated
  Returns:
    an NTLM authorization string
  Throws:
    `InvalidCredentialsException` - if authentication credentials are not valid or not applicable for this authentication scheme
    `AuthenticationException` - if authorization string cannot be generated due to an authentication failure
  Since:
    3.0

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2007 Apache Software Foundation. All Rights Reserved.