我已经按照这些说明安装了 x509 证书; http://www.vandyke.com/products/vshell/docs/windows/Use_X.509_Certificates.htm 这会将其安装到受信任的根证书颁发机构存储区 AuthRoot 中。 试图找到证书时; 打开商店:X509Store store = new X509Store(StoreName.AuthRoot) 循环,找到一个带有 X 指纹的。当它安装到受信任的根证书授权存储中时,这工作正常。
当我尝试执行相同操作但将其安装到个人商店时,将打开商店更改为 X509Store store = new X509Store(StoreName.My) 我找不到证书。
查看 certmgr,我可以在个人->证书下看到它。
IIS7是否需要配置个人证书?任何人都可以帮助解释我所缺少的吗?
最佳答案
对于受信任的根证书颁发机构,它是 StoreName.Root,而不是 StoreName.AuthRoot。
对于个人商店,您必须使用带有 StoreLocation 参数的 X509Store 构造函数才能使用本地计算机个人商店,否则您将在当前用户个人商店中搜索。
尝试:
var store = new X509Store(StoreName.My, StoreLocation.LocalMachine);
关于c# - 在本地商店找不到证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5459740/