繁体   English   中英

如何绕过 tibco EMS .NET API 的证书验证

[英]How to Bypassing the certificate validation for tibco EMS .NET API

我正在尝试使用 ssl (ssl://host:port) 与 tibco 服务器连接,但我们需要绕过证书验证。

在 Java 中有一个 API 可用,例如

System.setProperty(BaseClient.TIBCO_STATSVCS_SSL_ALLOW_ANY_CERTIFICATE, "true");

我们在.Net API 中需要相同的功能。

尝试这个

System.Net.ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };

编辑:通过更改 ServerCertificateValidationCallback,您可以更改接受证书的逻辑(返回 true)或不接受证书(返回 false) 此代码只是跳过证书验证:任何证书都将被接受

您当然可以添加更多逻辑。

您需要创建自己的处理程序,这是一个与委托定义具有相同输入/输出的方法:

public delegate bool RemoteCertificateValidationCallback(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors);

因此,例如:

 public static bool MyCertificateValidationCallback(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) {
   //whatever
 }
 public static void Main() {
     System.Net.ServicePointManager.ServerCertificateValidationCallback = MyCertificateValidationCallback;
 }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM