Ich verwende Microsoft HTTP Client Libraries von NuGet und versuche grundsätzlich, TLS zuzulassen Authentifizierung in HttpClient mit X509Certificate2-Zertifikaten.
Ich habe versucht, den Client so zu erstellen:
%Vor% Allerdings funktioniert certHandler.ClientCertificates
nicht, da dieser Getter nicht in Mono implementiert, so bekomme ich eine NotImplementedException von diesem. (Ich bin mir nicht sicher, warum das immer noch ein TODO ist.)
Bisher habe ich kein Glück. Irgendwelche Ideen wie kann ich einfach ein Client-Zertifikat auf HttpClient in Mono-Umgebung setzen?
Es sieht so aus, als ob es nur darum geht, die Clientzertifikatsammlung an die HttpWebRequest in CreateWebRequest zu übergeben. Da die Vererbung nicht funktioniert, kopiere ich einfach die Klasse von mono und füge die Implementierung hinzu.
%Vor%Verwenden Sie in Ihrem Code jetzt einen WebRequestHandlerWithClientCertificates anstelle eines WebRequestHandler
Tags und Links c# mono dotnet-httpclient