ServicePointManager.ServerCertificateValidationCallback и X509Certifcate2 - PullRequest
0 голосов
/ 25 марта 2019

Я использую свой пользовательский валидатор для SSL-сертификатов.Метод использует X509Certificate, а не X509Certifcate2.Я хочу показать удобные отпечатки Эмитента и Кому.

Я хотел бы использовать: certificate2.GetNameInfo (X509NameType.SimpleName, true).Я знаю, что могу конвертировать X509Certifcate в X509Certificate2.

ServicePointManager.ServerCertificateValidationCallback += OnCertificateValidationCallback

bool OnCertificateValidationCallback(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
{
 if (!(certificate is X509Certificate2 certificate2))
  {
     certificate2 = new X509Certificate2(certificate);
  }
}

MSDN сообщает, что может выдать исключение, если:

  1. Файл сертификата не существует.
  2. Неверный сертификат.
  3. Неверный пароль сертификата.

Когда будетсертификат относится к типу X509Certificate, и если да, могу ли я доверять этому коду для выполнения преобразования без исключения?

...