在C#中处理非验证SSL证书的最佳方法是什么?

我正在使用以下代码来确保所有证书都通过,甚至是无效证书,但我想知道是否有更好的方法,因为这个事件被全局调用,我只希望证书通过某个HTTP调用而不是任何其他异步发生的事情.

// This delegate makes sure that non-validating SSL certificates are passed
ServicePointManager.ServerCertificateValidationCallback = delegate(object certsender, X509Certificate cert, X509Chain chain, System.Net.Security.SslPolicyErrors error)
{
   return true;
};

上面的代码只是忽略证书上任何非验证的示例.我遇到的问题是它是一个全球性的事件.我无法看到事件正在发生的会话.我可能会有几个http请求通过,我想要求用户为每个请求执行操作.

最佳答案 certsender论点怎么样?它是否包含任何合理的内容,以便您可以确定回调发生的连接是什么?我检查了.NET API,但它没有说明该参数应该包含什么…

点赞