CloverDX Blog on Data Integration

Here's How to Call Web Services on Windows using NTLM authentication

Written by CloverDX | November 06, 2012

NTLM is a client-server authentication protocol designed by Microsoft that’s often used in its server software products. A server that’s part of a NTLM domain uses this protocol to grant access to secured resources to clients who are able to present a username and a password valid in said domain.

If you are calling web services provided by Microsoft products, it’s likely that such a call will require the NTLM authentication. Microsoft SharePoint Web Services is a prominent example. But there are many other such services, like Microsoft Analysis Services or Reporting Services provided by the Microsoft SQL Server as well.

CloverDX and NTLM

CloverDX 3.3 now supports these NTLM authenticated web services. Both versions   NTLMv1 and NTLMv2   of the protocol are supported. You can use the WebServiceClient component to call such a service. All you’ll need to do to enable the NTLM authentication is to set the Domain Name, Username, and Password. Notice that the Domain Name parameter is required for the NTLM authentication to work.

Altogether now, there are 3 types of authentication supported by WebServiceClient: NTLM, Digest, and Basic. NTLM is obviously the most secure of these three schemes, while Basic is the least secure. When the WebServiceClient component initiates a call to a secured Web Service, the server first indicates which authentication protocols it supports. The WebServiceClient then automatically chooses the most secure one, and, using the user-provided credentials, performs the actual authenticated web service call.