This documentation is archived and is not being maintained.

HttpTransportBindingElement.UnsafeConnectionNtlmAuthentication Property

Gets or sets a value that indicates whether Unsafe Connection Sharing is enabled on the server. If enabled, NTLM authentication is performed once on each TCP connection.

Namespace:  System.ServiceModel.Channels
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

public bool UnsafeConnectionNtlmAuthentication { get; set; }

Property Value

Type: System.Boolean
true if Unsafe Connection Sharing is enabled; otherwise, false. The default is false.

When this property is set to true and the first request over a particular connection is authenticated using NTLM, subsequent requests over the same connection are processed using the authentication information in IIdentity of the initial request.

This property has no effect when NTLM is not the authentication protocol.


While setting this property to true increases performance because additional NTLM authentication challenges are not sent, there is a security risk in not requiring all requests to provide authentication information. You must determine whether the increase in performance is worth this risk.

For more information, see UnsafeConnectionNtlmAuthentication.

The following example sets the property to enable Unsafe Connection Sharing.


HttpTransportBindingElement httpBinding = new HttpTransportBindingElement();
httpBinding.AuthenticationScheme = AuthenticationSchemes.Ntlm;
httpBinding.UnsafeConnectionNtlmAuthentication = true;

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0