protected bool ValidateServerCertificate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { AppLog.Debug(string.Format("Validating remote certificate. Subject: {0}, Policy errors: {1}", certificate.Subject, sslPolicyErrors)); if (OnValidateCertificate != null) { // Validate Certificate Externally ValidateCertificateResult result = OnValidateCertificate(NetworkUri, certificate, chain, sslPolicyErrors); if (result == ValidateCertificateResult.Valid) { return(true); } if (result == ValidateCertificateResult.Invalid) { return(false); } } if (certificate != null && Certificate != null) { byte[] key1 = certificate.GetPublicKey(); byte[] key2 = Certificate.GetPublicKey(); if (key1.SequenceEqual(key2)) { return(true); } } return(false); }
bool ValidateRequestServerCertificate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { ValidateCertificateResult result = ValidateCertificateResult.NotValidated; if (certificate != null && OnValidateCertificate != null) { result = OnValidateCertificate(CurrentRequestTargetUri, certificate, chain, sslPolicyErrors); if (result == ValidateCertificateResult.Invalid) { return(false); } } return(true); }