NTLM support

NTLM support

There is support for NTLM (NT LAN Manager) for <cfsharepoint>, <cfinvoke>, and <cfobject> tags, and CreateObject function. NTLM is a suite of Microsoft security protocols that provides authentication, integrity, and confidentiality to users.

Unlike Basic Auth, NTLM is embedded in the application protocol and does not depend on the SSL (Secure Sockets Layer) to protect passwords during transmission. It saves the hash values of the password and discards the original password. Later the hashed value of the password is used to encrypt a challenge sent by the server to the client. The value is then used to authenticate the user.

If the authType attribute is NTLM, specify the ntlmdomain attribute.

<cfsharepoint> tag

There are new NTLM attributes in this tag.

<cfsharepoint
authType="NTLM"
action="webservice action"
params="parameter structure"
domain="domain name"
ntlmdomain="domain where user is registered"
workstation="workstation name"
name="result variable name"
password="connection password"
username="user ID"
wsdl="WSDL file path">

or,

<cfsharepoint 
    action="webservice action" 
    params="parameter structure" 
    login = "credentials structure" 
    name ="result variable name" 
    wsdl="WSDL file path">

Where,

authType

The authentication type to use. You can use NTLM or BASIC.

ntlmdomain

Domain in which a user is registered.

workstation

Host name of the client machine.

Note:

When the login attribute is used, then the NTLM attributes must go into the login struct. For example,

<cfscript>
loginStruct = {domain="myDomain", username="user name", password="pa$$w0rd", authtype="ntlm", ntlmdomain="myNTLMDomain"};
cfsharepoint(action="getlistcollection", login=loginStruct, name="myResult");
writeDump(myResult);
</cfscript>

<cfinvoke> tag

There are new NTLM attributes in this tag.

<cfinvoke
authType="NTLM"
webservice="Web service name or WSDL URL"
ntlmdomain="domain name"
workstation="workstation name"
method="operation name"
password="password"
proxyPassword="password for proxy server"
proxyPort="port on proxy server"
proxyServer="WSDL proxy server URL"
proxyUser="user ID for proxy server"
returnVariable="variable name"
refreshWSDL=""yes|no"
servicePort="WSDL port name"
timeout="request timeout in seconds"
username="username"
wsdl2javaargs="argument string">

Where,

authType

The authentication type to use. You can use NTLM or BASIC.

ntlmdomain

Host name of the domain controller.

workstation

Host name of the client machine.

<cfobject> tag

There are new NTLM attributes in this tag.

<cfobject
authType="NTLM"
ntlmdomain="domain name"
workstation="workstation name"
type="webservice" 
name="ws"
webservice="WSDL URL" 
username = "user name"
password = "password">

Where,

authType

The authentication type to use. You can use NTLM or BASIC.

ntlmdomain

Host name of the domain controller.

workstation

Host name of the client machine.

CreateObject function

This function includes support for NTLM.

For example,

wsobj = createObject("webservice", "http://localhost/AxisWs/services/Converter?wsdl",{refreshwsdl=true,username="user name",password="password",
authtype="NTLM",workstation="workstation",ntlmdomain="ntlmdomain",wsversion=2});

Where,

authType

The authentication type to use. You can use NTLM or BASIC.

ntlmdomain

Host name of the domain controller.

workstation

Host name of the client machine.

Get help faster and easier

New user?