HttpTransportBindingElement.AuthenticationScheme Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets or sets the authentication scheme used to authenticate client requests being processed by an HTTP listener.

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

public AuthenticationSchemes AuthenticationScheme { get; set; }

Property Value

Type: System.Net.AuthenticationSchemes

One of the enumeration values of the AuthenticationSchemes enumeration that specifies the protocols used for client authentication. The default is Anonymous.

Exception Condition

The value for the AuthenticationSchemes was already set.

The authentication scheme can only be set once.

The following example sets this property to use when authenticating client requests.


interface ICalculator
            Int Add(int a, int b);

HttpTransportBindingElement httpBinding = new HttpTransportBindingElement();
httpBinding.AuthenticationScheme = AuthenticationSchemes.Digest;
CustomBinding binding = new CustomBinding(new TextMessageEncodingBindingElement(), httpBinding);

EndpointAddress endpoint = new EndpointAddress(address);
ChannelFactory<ICalculator> proxy = new ChannelFactory<ICalculator>(binding, endpoint);

proxy.Credentials.Windows.ClientCredential = new NetworkCredential("user", "password", "domain");
proxy.Credentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation;

ICalculator calc = proxy.CreateChannel();

int odd=calc.Add(5,4);

Universal Windows Platform
Available since 8
.NET Framework
Available since 3.0
Portable Class Library
Supported in: portable .NET platforms
Return to top