public void ConfigureClientCredentials(ClientCredentials clientCredentials)
{
Trace.Information("Loading certificate from {0}", _certificatePemFile);
if (!File.Exists(_certificatePemFile))
{
Trace.Critical("Unable to load certificate from '{0}'.", _certificatePemFile);
throw new FileNotFoundException("The certificate could not be found.", _certificatePemFile);
}
clientCredentials.ServiceCertificate.Authentication.CertificateValidationMode =
X509CertificateValidationMode.Custom;
clientCredentials.ServiceCertificate.Authentication.CustomCertificateValidator =
new ServerX509CertificateValidator(_caCertificate);
clientCredentials.ServiceCertificate.Authentication.RevocationMode = X509RevocationMode.NoCheck;
X509Certificate2 cert = new X509Certificate2();
cert.LoadFromPemFile(_certificatePemFile);
clientCredentials.ClientCertificate.Certificate = cert;
}