Using the .NET WCF BasicHttpBinding to access a web service using both Client Certificates AND Windows Authentication.
If you're using the WCF BasicHttpBinding to access a web service you may wish to connect using Windows Authentication over HTTPS but also present a client certificate to add an extra layer of security (two factor authentication). The problem is whilst you can add a client certificate it is ignored because settings the ClientCredentialType to Windows means that only Windows authentication is used. BasicHttpBinding basicBinding = new BasicHttpBinding(BasicHttpSecurityMode.Transport); basicBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Windows; SchedulerAccessWebServiceSoapClient server = new SchedulerAccessWebServiceSoapClient(binding, remoteAddress); server.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.LocalMachine, StoreName.My, X509FindType.FindByThumbprint, " be4bca8c388af02ee1c50c3f5f74d6a34fe97daf " ); When you try and access the web service when Require Client Certificates is enabled you see an error similar to this. S...