gpt4 book ai didi

c# - 加密异常 : Access denied - How to give access on User store?

转载 作者:可可西里 更新时间:2023-11-01 10:57:53 55 4
gpt4 key购买 nike

我正在尝试从 WPF 应用程序中的 pfx 文件加载证书,但出现拒绝访问错误。

using (FileStream stream = System.IO.File.OpenRead(certificatePath))
{
using (BinaryReader reader = new BinaryReader(stream))
{
buffer = reader.ReadBytes((int)stream.Length);
}
}

X509Certificate2 certificate = new X509Certificate2(buffer, password);

System.Security.Cryptography.CryptographicException: Access denied.
at System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32 hr) at System.Security.Cryptography.X509Certificates.X509Utils._LoadCertFromBlob(Byte[] rawData, IntPtr password, UInt32 dwFlags, Boolean persistKeySet, SafeCertContextHandle& pCertCtx) at System.Security.Cryptography.X509Certificates.X509Certificate.LoadCertificateFromBlob(Byte[] rawData, Object password, X509KeyStorageFlags keyStorageFlags) at System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(Byte[] rawData, String password) at HelloWorld.HelloClient.Models.Infrastructure.ReadCertificateFromPfxFile(String certificatePath, String password)

片段中的最后一行导致异常,如果我以管理员身份运行它,它工作正常。问题似乎是 X509Certificate2 的默认构造函数试图将私钥放入用户存储中。我没有使用网络应用程序。 this帖子不能解决我的问题。我认为当前用户可能无法访问他自己的私钥存储。但是我怎样才能授予该访问权限?

最佳答案

如果有人正在寻找类似问题的解决方案,请发布修复程序。我跑了 sysinternal process monitor并意识到构造函数调用是在机器 key 文件夹中创建一个 key ,并授予用户写入机器 key 的权限。

关于c# - 加密异常 : Access denied - How to give access on User store?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37998580/

55 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com