无法创建C#x509Certificate2

时间:2014-05-19 08:24:22

标签: c# visual-studio certificate x509certificate2

我通过我从Apple .p12文件制作的字节数组创建证书。

X509Certificate2 cert = new X509Certificate2(AppleCertBytes, ApplePassword);

这样可以正常工作并创建证书,但只有当我在localhost上时才会创建。

当我构建WebService并将其发布到服务器时,它不起作用。

我在任何地方都放置了日志,我注意到在运行此行时请求已经消失了。

我的服务器没有响应,有时甚至得到Err: connection_reset。 当我调试过程时,我没有看到任何错误,我想也许.dll文件是问题错误我认为我检查了11次不同的日志,它似乎随时更新。

修改 没有例外。

这里有什么我想念的吗? ApplicationPool也许,插件或其他?

请注意。

我不想要任何创建证书的插件,我想要一个可能的结果。 感谢。

1 个答案:

答案 0 :(得分:2)

您需要使用另一个overload of the constructor将私钥存储在本地计算机存储中。

您的构造函数应为:

var cert = new X509Certificate2(
                        AppleCertBytes, 
                        ApplePassword,
                        X509KeyStorageFlags.MachineKeySet);