我已花了几个小时来解决此错误。奇怪的是当我独立使用this库时,它工作得非常好但是当我将它们与我的ASP .NET MVC网站集成时,它开始抛出以下异常。我也根据建议here使用了MachineKeySet标志,但仍然没有运气。任何人都可以帮我摆脱这个例外。感谢。
发生内部错误。
描述:未处理的异常 在执行期间发生 当前的网络请求。请查看 堆栈跟踪以获取更多信息 错误及其来源 代码。
异常详细信息: System.Security.Cryptography.CryptographicException: 发生内部错误。
来源错误:
第194行:如果 (string.IsNullOrEmpty(p12FilePassword)) 第196行:certificate = new X509Certificate2(p12FileBytes,“”,X509KeyStorageFlags.MachineKeySet); 第197行:否则
答案 0 :(得分:8)
我找到了解决方案here。看起来像一个已知问题。我一起使用了X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable
个标志,问题就消失了。其他解决方案是将应用程序池的标识更改为LOCALSERVICE。