1

为什么 SYSTEM 帐户无法访问用户的证书存储?

同时SYSTEM帐户能够从智能卡读取证书(通过CSP dll)并将其放入证书存储区(在这种情况下, winlogon.exe正在使用CSP ,所以我猜是winlogon.exe里面有一些魔法)。

CertOpenSystemStore( NULL, L"MY" )比如在系统账号下调用会成功,但是CertFindCertificateInStore()什么都找不到,因为看起来商店是空的。当我登录时,CertFindCertificateInStore()会找到请求的证书。

4

2 回答 2

2

每个用户都有不同的 MY Store,因此如果您能够在 USER A 登录 My Store 中找到某些内容,您可能无法从 User 2 那里获得该内容。尝试使用 MMC 访问其他用户和服务帐户的证书存储。

于 2012-02-01T19:50:53.360 回答
0

Either you need to put the relevant certificates in the SYSTEM cert store or you need to impersonate the user whose store you wish to access. Impersonation can be done in multiple ways, I would suggest start looking at MSDN.

于 2016-02-10T08:57:28.910 回答