客户端证书自动安装

时间:2018-06-21 16:03:16

标签: client-certificates certutil

我正在尝试自动安装root(及其CRL)和具有关联私钥的客户端证书。它们是在开发计算机中创建的,以将其安装在客户端计算机中。在开发计算机中,它可以工作,但是在生产/客户端计算机中,它无法安装客户端证书,因此我必须手动安装它,输入密码。

自动安装应用程序用C ++编写,使用PCCERT_CONTEXT安装根.cer和.crl文件,并使用certutil.exe安装客户端pfx文件:

certutil.exe -p password -user -addstore "My"-importpfx ClientTemp.pfx NoRoot

并创建证书:

echo Create a Certificate to Act as Your Root Certificate Authority
makecert -n "CN=RootCATest" -r -sv RootCATest.pvk RootCATest.cer

echo Create a Certificate Revocation List File from the Root Certificate
makecert -crl -n "CN=RootCATest" -r -sv RootCATest.pvk RootCATest.crl

echo Create and Install the Client Certificate for Authentication
makecert -iv RootCATest.pvk -n "CN=ClientTemp" -ic RootCATest.cer -pe -sr CurrentUser -ss my -sky signature -sv ClientTemp.pvk ClientTemp.cer

echo Create private key backup
pvk2pfx.exe -pvk ClientTemp.pvk -spc ClientTemp.cer -pfx ClientTemp.pfx -po password

是的,经过太多修改后试图创建和安装具有相关私钥的客户端证书(最初安装时没有密钥,我不得不手动修复它,以授予存储在pc中的私钥权限),这可能是一团糟,以及其他方式(我不记得了)。使用.cer和.crl安装root和crl,并使用.pfx安装客户端证书。但是,等等,它可以在装有Windows 7的虚拟机上运行,​​在我写这篇文章时,我想到certutil.exe不在客户端计算机上……ups(现在无法检查)。好吧,如果是这样,就像我花了很长时间写:)一样,也许有人有另一个想法。感谢您的阅读。

0 个答案:

没有答案