Certutil要求连接智能卡

use*_*487 7 ssl certificate ssl-certificate x509certificate2 windows-server-2012-r2

我正在尝试运行certutil -repairstore并不断收到有关智能卡的提示。这是AWS上的VM,并且不能选择智能卡。感谢您对如何绕过智能卡并完成维修的任何想法

小智 6

其他答案之一谈到了它,但我想添加一些上下文/细节,并且我花了很多时间寻找这个问题的根源。终止与智能卡相关的服务不起作用,使用 gpedit 禁用相关策略也不起作用。

当您使用该-repairstore选项运行 certutil 时,Windows 会运行其 CSP(配置服务提供程序)列表,其中之一是“Microsoft 智能卡密钥存储提供程序” - 这是导致提示输入您的智能卡的提供程序。正如上面的答案所述,最可能的原因是您正在尝试安装虚拟机上没有相应密钥的证书文件(.crt、.cer、.pem 等),因此 Windows 会循环遍历各种 CSP 正在寻找有效密钥,但找不到。此问题有两种可能的解决方案:

  1. 您应该通过IIS > 服务器证书 > 创建证书请求生成 CSR(证书签名请求)。这将确保密钥是在本地生成的并且适当的密钥存储知道它。使用该 CSR 从 GoDaddy 或您的提供商处获取证书,然后您应该能够转到IIS > 服务器证书 > 完整证书请求来安装证书并完全避免使用 certutil。

  2. 如果您仍然无法使其工作并且确定密钥是在本地生成的,则-cspcertutil 的选项将允许您在验证证书时指定要使用的 CSP,从而消除 Windows 尝试智能卡 CSP 的需要。您可以通过运行来获取系统上已安装的 CSP certutil -csplist- “Provider Name”值是您传递给 certutil 的值。例如,certutil -csp "Microsoft Software Key Storage Provider" -repairstore ...将强制 certutil 针对 Microsoft 软件密钥存储提供程序进行验证。确保使用引号,因为名称中存在空格。


小智 -3

尝试添加-silent到命令中