c#如何从不受信任的服务器读取证书信息
c# how to read the certificate information from an untrusted server
我找到了几个主题,关于如何从 URL 检索证书信息,例如这个:.
但所有这些解决方案仅在证书受信任时才有效。否则我在调用 request.GetResponse() 时会遇到异常。
但是,在不受信任的情况下,我需要获取证书颁发者和过期数据。
我想向我的应用程序的用户显示一个错误,并向他提供有关所提供的 ssl 证书的信息。
也许您可以连接到证书验证回调以检查证书的属性:
request.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => {
// investigate certificate parameter
X509Certificate2 x509 = new X509Certificate2(certificate);
Console.WriteLine("Certificate expired on: {0}", x509.NotAfter);
return true; // true to bypass, false otherwise
};
...
request.GetResponse();
我找到了几个主题,关于如何从 URL 检索证书信息,例如这个:.
但所有这些解决方案仅在证书受信任时才有效。否则我在调用 request.GetResponse() 时会遇到异常。 但是,在不受信任的情况下,我需要获取证书颁发者和过期数据。 我想向我的应用程序的用户显示一个错误,并向他提供有关所提供的 ssl 证书的信息。
也许您可以连接到证书验证回调以检查证书的属性:
request.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => {
// investigate certificate parameter
X509Certificate2 x509 = new X509Certificate2(certificate);
Console.WriteLine("Certificate expired on: {0}", x509.NotAfter);
return true; // true to bypass, false otherwise
};
...
request.GetResponse();