dotnet core 2.2 HttpClient не публичный подписанный сертификат - PullRequest
0 голосов
/ 27 сентября 2019

Dotnet Core 2.2.Я знаю, что это небезопасно, но я делаю это только в среде разработки.

на стороне сервера сертификаты были загружены с помощью:

options.Listen(IPAddress.Any, 44340, listenOptions =>
{
    listenOptions.UseHttps("GQ.pfx", "abcd1234");
});

На стороне клиента.Я загружаю сертификат

var ch = new HttpClientHandler();
ch.ClientCertificates.Add(new X509Certificates.X509Certificate2("GQ.pfx", "abcd1234"));
ch.ServerCertificateCustomValidationCallback =
    delegate { return true; };
var c = new HttpClient(ch);
c.GetAsyc(.........)

Использование приведенного выше кода может заставить HttpClient доверять всем сертификатам.Однако GetAsync () будет возвращает 404 .Нет проблем, если я установлю сертификаты в доверенное хранилище.

Если я не верну true в обратном вызове проверки, я получу ошибку ниже:

System.ComponentModel.Win32Exception: The certificate chain was issued by an authority that is not trusted

Могу ли я знать, что я сделал неправильно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...