Indy 9 | Content | Index | Reference

TIdNTLMAuthentication
Hierarchy, Properties, Methods, See Also, Unit: IdAuthenticationNTLM
Implements the NTLM Authentication Scheme for HTTP.

    TIdNTLMAuthentication = class(TIdAuthentication)

Unit
IdAuthenticationNTLM
Description
TIdNTLMAuthentication is a TIdAuthentication that implements the NTLM Authentication Scheme for HTTP. The NTLM Authentication Scheme is not as secure as Digest and some other schemes, but it is slightly better than the Basic authentication scheme. The NTLM Challenge/Response scheme is described at:

- Microsoft NTLM, MSDN Platform SDK (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/security/hh/secpack/ntlmssp_0k19.asp)

Note: NTLM Authentication is not an http authentication scheme; it is a connection authentication scheme which happens to (mis-)use http status codes and headers (and even those incorrectly).

TIdNTLMAuthentication.Authentication
TIdNTLMAuthentication
Constructs the authorization credentials for the authentication scheme.

    function Authentication: String; override;

Return Value
String - Contents of the binary authentication message.
Description
Authentication is an overridden String function that constructs the authorization credentials using the binary message types required by the authentication scheme.

TIdNTLMAuthentication.Create
TIdNTLMAuthentication
Constructor for the object instance.

    constructor Create; override;

Description
Create is the constructor for the object instance, and calls the inherited Create method.

Create also initializes the OpenSSL library used for constructing binary message packets used by the protocol by calling IdSSLOpenSSLHeaders.Load. If the OpenSSL library cannot be loaded, the constructor aborts creation of the object instance.

TIdNTLMAuthentication.KeepAlive
TIdNTLMAuthentication
Indicates if the connection should open for Challenge/Response negotiations.

    function KeepAlive: Boolean; override;

Description
KeepAlive is an overridden Boolean function that indicates if the connection used for Challenge/Response negotiation should remain open during the steps for the process. NTLM is a mutli-step connection-based authentication method, so the connection cannot close during usage.

TIdNTLMAuthentication.Reset
TIdNTLMAuthentication
Indicates the authentication process should revert to the initial step in the process.

    procedure Reset; override;

Description
Reset is an overridden procedure in TIdNTLMAuthentication that calls the inherited method prior to setting the value in Status to 1. Reset inicates the authentication process should revert to the initial step in the Challenge/Response ptotocol.

Created with Doc-O-Matic 2 donated to Project JEDI. Commercial license available from the Doc-O-Matic site.