SSLPinning на. net стандарт 2.1 - PullRequest
2 голосов
/ 12 марта 2020

Я хочу проверить сертификат во время согласования запроса HttpRequest, сделанного по Системе. Net .HttpChttpClient. Я обнаружил, что есть несколько способов сделать это, один из них:

ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(VerifyServer);

, который мне не нравится, потому что я хочу сделать это в соответствии с HttpClient. Я заметил, что могу внедрить HttpClientHandler через конструктор, но метод, который я хочу использовать для проверки отпечатка сертификата, скрыт:

[EditorBrowsable(EditorBrowsableState.Never)]
public Func<HttpRequestMessage, X509Certificate2, X509Chain, SslPolicyErrors, bool> ServerCertificateCustomValidationCallback { get; set; }

Есть ли конкретная c причина, почему скрыта ? Безопасно ли использовать этот метод для проверки сертификата?

Спасибо!

...