列出所有系统证书库

时间:2011-09-28 17:52:54

标签: c# certificate pki

我正在寻找一种方法来获取所有系统证书存储,包括任何locationCurrentUserLocalMachine)。

StoreLocation枚举显然不包括使用X509Store(String)X509Store(String, StoreLocation)创建的用户定义的证书库。此外,这不会定义other standard stores,例如SPCRequest

我查看了crypto32.dll API,除了注册/取消注册外,我看不到任何相关内容。

基于非文件系统的商店出现在注册表中(例如HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\Root)。 PowerShell Certificate Provider可以询问商店。这是 - 查询注册表 - 它在幕后做了什么?这样的手动解决方案是否可以在XP / Vista / 7/8之间移植?

1 个答案:

答案 0 :(得分:2)

好吧,我们的SecureBlackbox产品通过CryptoAPI实现了您所需要的功能,即CertEnumSystemStore()功能。但它有很多参数。