ASP.NET MVC:"发生内部错误."使用X509Certificate2加载证书字节时

app*_*eak 3 exception x509certificate2 asp.net-mvc-3

我已经花了几个小时来解决这个错误.奇怪的是当我独立使用这个库时,它工作得非常好但是当我将它们与我的ASP .NET MVC网站集成时,它开始抛出以下异常.我也根据建议在这里使用了MachineKeySet标志,但仍然没有运气.任何人都可以帮我摆脱这个例外.谢谢.

发生了内部错误.

描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.

异常详细信息:System.Security.Cryptography.CryptographicException:发生内部错误.

来源错误:

第194行:if(string.IsNullOrEmpty(p12FilePassword))第196行:certificate = new X509Certificate2(p12FileBytes,"",X509KeyStorageFlags.MachineKeySet); 第197行:否则

app*_*eak 8

我在这里找到了解决方案.看起来像一个已知问题.我X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable一起使用旗帜,问题消失了.其他解决方案是将应用程序池的标识更改为LOCALSERVICE.