作为正在进行的项目的一部分,我被要求创建一个PowerShell脚本,该脚本将大量加载.CSR文件,将其上载到我的内部使用的根签名证书颁发机构并生成签名证书。
模板已设置并正常工作 - 如果我想生成证书,我必须手动上传a。 CSR文件到localhost / certsrv /然后转到应用程序,签名并导出。费力的项目。
我在Powershell中遇到过Get-Certificate命令 - 但我似乎无法表达.CSR文件?非常感谢帮助。
谢谢!!
答案 0 :(得分:2)
使用PowerShell(或您选择的脚本语言,但我喜欢PS),您可以调用CertReq.exe命令来签署证书请求:
certreq -submit <Path to request file> <Path to output cert file>
所以对于批量你可以......
$CSRs = Get-ChildItem C:\CertificateRequests
$OutPath = New-Item C:\IssuedCertificates -ItemType Directory -Force
ForEach($CSR in $CSRs){
$FileOut = Join-Path $OutPath "$($CSR.BaseName).cer"
CertReq -submit $CSR.FullName $FileOut
}