我有一个需要在多个系统上导入的证书,并且我试图在该证书上设置高强度密钥保护,以便在使用该证书时,用户必须输入密码。我找到了这个 certutil 命令:
certutil -f -user -p <certPwd> -importPFX .\<certName>.pfx Protect
这有两个问题:
- 这会默认将安全性设置为中等。我可以选择“高”,然后系统会要求我设置密码,但我需要默认将密码设置为“高”
- 我需要通过命令传递密码,屏幕上不显示任何 UI。我不想在每个系统上手动设置密码,所以我希望通过 GPO 或 SCCM 来执行此操作,尽管如果需要,我也愿意使用其他方法。
我找不到任何方法通过命令行(无论是通过 certutil 还是 PowerShell)来严格设置它。我希望有人比我更了解?有人可以帮忙吗?
答案1
强密钥保护的目的是要求用户交互,以便用户明确确认密钥操作,并且未经用户明确批准,任何操作都不能编写脚本/自动化。这就是重点。因此,强密钥保护和密钥访问自动化是相互排斥的。
答案2
我使用 importpfx.exe 命令。您可以在这里找到它:http://home.fnal.gov/~jklemenc/importpfx.html
然后我向所有用户 tanks 申请一个登录脚本:
[path]\importpfx.exe -f [path]\MyPFXCertificate.pfx -p [CertificatePassword] -t USER -s MY