1

使用 javascript 和 activeX (CAPICOM Store api),我试图通过 IE 11 从用户存储中删除证书。

我使用的 javascript 代码如下:

[...]
oldCertificate.PrivateKey.Delete();
userCertificateStore.Remove(oldCertificate);
[...]

oldCertificate 是一个 Capicom 证书对象,而 userCertificateStore 是一个 Capicom 存储对象。

为了进行测试,我之前在 Windows 8.1 触摸板和金雅拓智能卡读卡器上使用带有 TPM 和密钥存储的智能卡作为假 VSC。一切正常。

现在我在触摸板上安装了 VSC,当我尝试删除 VSC 上的证书时,我在 Windows 安全提示上收到错误,允许我选择智能卡(即:智能卡选择

当我选择我的 VSC 时,它说:“安全驱动程序需要不在系统中的飞行员。请联系您的管理员。”。

这似乎是一个相当普遍的错误......

我试图在 MSDN 网站上的 X509 Store 上查找文档,因为不推荐使用 Capicom,但无法获取对象方法或属性。

为了暂时绕过这个问题,我决定将存档证书属性设置为 true,以便从每个证书选择列表和用户存储中隐藏它。这行得通,但是系统上仍然存在密钥容器......这可能会导致容器限制数量出现问题!

任何人都知道要安装哪个飞行员或哪个安全选项可以使我的 javascript 代码删除 VSC 上的密钥存储?

或者,如果有人有使用 X509 商店删除证书的工作示例,那就太好了!甚至是包含对象方法和属性的完整文档的链接。

谢谢

4

0 回答 0