对于我公司内的研究项目,我想验证带有自定义CA证书的HTTPS WebClient连接,而不是将其永久添加到系统CA列表,或者通过ServerCertificateValidationCallback经常看到的示例完全禁用验证{return true;}
我在.pem文件中有CA公钥并且可以加载它,但是即使经过几个小时的查看,我也找不到使用它来验证与此证书的连接的方法。
只是用证书检查服务器的名称也有点蹩脚.......
我想象至少有以下一种可能:
a)将CA公共证书添加到“仅在内存中”的CA列表中 b)直接在“验证”电话中使用CA公共证书
到目前为止,没有运气。此外,我甚至无法“手动”验证,因为许多相关元素根本没有被X509Certificate(2)类导出。我错过了什么吗?
答案 0 :(得分:2)
如果您不介意第三方选项,我们的SecureBlackbox的PKIBlackbox包可以让您对证书链进行灵活的验证(包括CRL和OCSP检查),并且可以使用文件中的证书以及Windows证书存储和HSM证书存储。
SecureBlackbox还包括灵活的HTTP / HTTPS客户端,它不依赖于其他实现或库。 SecureBlackbox可用于.NET,Mono等。