无法读取Windows Server 2008上的p12文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法读取Windows Server 2008上的p12文件相关的知识,希望对你有一定的参考价值。
我需要从磁盘位置读取一个p12文件,在我的本地环境中一切正常,但是当我将该站点发布到Windows Server 2008时,我收到以下错误:
System.Security.Cryptography.CryptographicException:发生内部错误。
System.Security.Cryptography.X509Certificates的System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32hr)at System.Security.Cryptography.X509Certificates.X509Utils._LoadCertFromFile(String fileName,IntPtr password,UInt32 dwFlags,Boolean persistKeySet,SafeCertContextHandle&pCertCtx) System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(String fileName,String password,X509KeyStorageFlags keyStorageFlags)中的.X509Certificate.LoadCertificateFromFile(String fileName,Object password,X509KeyStorageFlags keyStorageFlags)
我的代码是:
var certP12 = new X509Certificate2(
@"C: empfile.p12",
"123456",
X509KeyStorageFlags.Exportable | X509KeyStorageFlags.PersistKeySet);
我已经为具有p12文件的文件夹设置了完全权限。
任何人都可以帮忙吗?
可能的欺骗,并有一个可能的答案:
"An internal error occurred." when loading pfx file with X509Certificate2
简而言之,在您的本地环境中,它可能会尝试将证书放在您的本地用户存储中,但是您的网站无法访问该存储。它需要被告知要去机器商店。
以上是关于无法读取Windows Server 2008上的p12文件的主要内容,如果未能解决你的问题,请参考以下文章
无法让 nservicebus 性能计数器在 Windows Server 2008 R2 上的开发/自主机中工作
连接到 Windows Server 2008 上的 MS Access accdb 文件