Csharp/C#教程:如何在自定义validation中调用默认的ServerCertificateValidationCallback?分享


如何在自定义validation中调用默认的ServerCertificateValidationCallback?

我想修改.Net的默认ServerCertificateValidationCallback以validation我公司的一些证书是真的,但保留其他证书的默认validation。

我似乎无法这样做,因为默认的ServerCertificateValidationCallback值为null。

 ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => validCertificatesSerialNumbers.Contains(certificate.GetSerialNumberString()) || defaultlCallback.Invoke(sender, certificate, chain, sslPolicyErrors) //How do I set defaultCallback? ; 

谢谢

从我在参考资料中可以看出,这是回调发挥作用的地方:

 if (ServicePointManager.ServerCertificateValidationCallback != null) { useDefault = false; return ServicePointManager.ServerCertValidationCallback. Invoke(m_Request, certificate, chain, sslPolicyErrors); } if (useDefault) return sslPolicyErrors == SslPolicyErrors.None; 

这意味着validation已经执行并且知道它是否通过您只需要检查sslPolicyErrors参数。 你会这样做:

上述就是C#学习教程:如何在自定义validation中调用默认的ServerCertificateValidationCallback?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

 ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => validCertificatesSerialNumbers.Contains(certificate.GetSerialNumberString()) || (sslPolicyErrors == SslPolicyErrors.None); 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1009549.html

(0)
上一篇 2021年12月29日
下一篇 2021年12月29日

精彩推荐