## org.apache.http.impl.auth
Class NTLMScheme

    java.lang.Object
      org.apache.http.impl.auth.AuthSchemeBase
          org.apache.http.impl.auth.NTLMScheme

All Implemented Interfaces:
  AuthScheme, ContextAwareAuthScheme

    @NotThreadSafe
    public class NTLMScheme

extends AuthSchemeBase

NTLM is a proprietary authentication scheme developed by Microsoft and optimized for Windows platforms.

Since:
  4.0

Constructor Summary
`NTLMScheme(NTLMEngine engine)`

Method Summary
`Header` `authenticate(Credentials credentials, HttpRequest request)` 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
`protected void` `parseChallenge(CharArrayBuffer buffer, int beginIndex, int endIndex)`

Methods inherited from class org.apache.http.impl.auth.AuthSchemeBase
`authenticate, getChallengeState, isProxy, processChallenge, toString`

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

Constructor Detail

### NTLMScheme

    public NTLMScheme(NTLMEngine engine)

Method Detail

### getSchemeName

    public String getSchemeName()

  Description copied from interface: `AuthScheme`
  Returns textual designation of the given authentication scheme.

  Returns:
    the name of the given authentication scheme

### getParameter

    public String getParameter(String name)

  Description copied from interface: `AuthScheme`
  Returns authentication parameter with the given name, if available.

  Parameters:
    `name` - The name of the parameter to be returned
  Returns:
    the parameter with the given name

### getRealm

    public String getRealm()

  Description copied from interface: `AuthScheme`
  Returns authentication realm. If the concept of an authentication realm is not applicable to the given authentication scheme, returns `null`.

  Returns:
    the authentication realm

### isConnectionBased

    public boolean isConnectionBased()

  Description copied from interface: `AuthScheme`
  Tests if the authentication scheme is provides authorization on a per connection basis instead of usual per request basis

  Returns:
    `true` if the scheme is connection based, `false` if the scheme is request based.

### parseChallenge

    protected void parseChallenge(CharArrayBuffer buffer,
                                  int beginIndex,
                                  int endIndex)
                           throws MalformedChallengeException

  Specified by:
    `parseChallenge` in class `AuthSchemeBase`
  Throws:
    `MalformedChallengeException`

### authenticate

    public Header authenticate(Credentials credentials,
                               HttpRequest request)
                        throws AuthenticationException

  Description copied from interface: `AuthScheme`
  Produces an authorization string for the given set of `Credentials`.

  Parameters:
    `credentials` - The set of credentials to be used for athentication
    `request` - The request being authenticated
  Returns:
    the authorization string
  Throws:
    `AuthenticationException` - if authorization string cannot be generated due to an authentication failure

### isComplete

    public boolean isComplete()

  Description copied from interface: `AuthScheme`
  Authentication process may involve a series of challenge-response exchanges. This method tests if the authorization process has been completed, either successfully or unsuccessfully, that is, all the required authorization challenges have been processed in their entirety.

  Returns:
    `true` if the authentication process has been completed, `false` otherwise.

Copyright © 1999-2013 The Apache Software Foundation. All Rights Reserved.