为什么SYSTEM帐户无法访问用户的证书存储区?
同时,SYSTEM帐户可以从智能卡读取证书(通过CSP dll)并将其放入证书存储区( winlogon.exe 正在使用CSP)这种情况,所以我猜winlogon.exe里面有一些魔法。)
例如,在系统帐户下调用CertOpenSystemStore( NULL, L"MY" )
会成功,但CertFindCertificateInStore()
将找不到任何内容,因为它看起来像商店是空的。当我登录时,CertFindCertificateInStore()
将找到所请求的证书。
答案 0 :(得分:1)
每个用户都有不同的MY商店,因此如果您能够在USER A登录我的商店中找到某些内容,您可能无法从用户2获得该商品。 尝试使用MMC访问其他用户和服务帐户的证书存储。
答案 1 :(得分:0)
您需要将相关证书放在SYSTEM证书库中,或者您需要模拟您希望访问其商店的用户。模仿可以通过多种方式完成,我建议您开始查看MSDN。