我明白这个问题的标题可能是一个重复的问题,但是我还没有找到我的情况的答案,所以在这里进行说明;
我有这段简单的代码:
// Convert the Filename to an X509 Certificate
X509Certificate2 cert = new X509Certificate2(certificateFilePath);
// Get the server certificate store
X509Store store = new X509Store(StoreName.TrustedPeople, StoreLocation.LocalMachine);
store.Open(OpenFlags.MaxAllowed);
store.Add(cert); // x509 certificate created from a user supplied filename
但是,仍然会出现“访问被拒绝”的异常。
我阅读了一些信息,建议使用StorePermissions可以解决我的问题,但我认为这与我的代码无关。 话虽如此,我确实进行了测试,但无法使其正常工作。
我还发现有人建议在Windows中更改文件夹权限,虽然这可能有效(未经测试),但对于将要分发的代码来说似乎不太实用。
我还必须补充说明,由于代码将作为服务器上的服务运行,因此向当前用户存储添加证书也似乎是错误的。
是否有办法以编程方式将证书添加到本地计算机存储中?