[英]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.