История изменений
Исправление CrazyAlex25, (текущая версия) :
ServerCertificateValidationCallback принимает делегат. Я его просто описал лямбдой. Примерно так можно обрабатывать разрешённые домены и сертификаты
...
ServicePointManager.ServerCertificateValidationCallback = ValidateCert;
....
protected static ValidateCert(object sender, X509Certificate cert, X509Chain chain, SslPolicyErrors errors)
{
// set a list of servers for which cert validation errors will be ignored
var overrideCerts = new string[]
{
"myproblemserver",
"someotherserver",
"localhost"
};
// if the server is in the override list, then ignore any validation errors
var serverName = cert.Subject.ToLower();
if (overrideCerts.Any(overrideName => serverName.Contains(overrideName))) return true;
// otherwise use the standard validation results
return errors == SslPolicyErrors.None;
}
Исходная версия CrazyAlex25, :
ServerCertificateValidationCallback принимает делегат. Я его просто описал лямбдой. Примерно так можно обрабатывать разрешённые домены и сертификаты
protected static ValidateCert(object sender, X509Certificate cert, X509Chain chain, SslPolicyErrors errors)
{
// set a list of servers for which cert validation errors will be ignored
var overrideCerts = new string[]
{
"myproblemserver",
"someotherserver",
"localhost"
};
// if the server is in the override list, then ignore any validation errors
var serverName = cert.Subject.ToLower();
if (overrideCerts.Any(overrideName => serverName.Contains(overrideName))) return true;
// otherwise use the standard validation results
return errors == SslPolicyErrors.None;
}