如何使用脚本从 ADCS 创建自动安装基于用户的证书

如何使用脚本从 ADCS 创建自动安装基于用户的证书

我们有一个证书服务器,用户可以从以下 URL 下载他们的证书(用户模板):http://本地主机/certsrv

我现在想创建一个脚本来执行以下操作:

  1. 从个人证书存储中删除现有证书。
  2. 在个人证书存储中安装新证书。

我已经编写了脚本,它可以删除证书,但由于 Windows 7 不支持该命令,因此无法进行安装。

这是我的代码:

# User Details
$dom = $env:userdomain
$usr = $env:username
$fulname = ([adsi]"WinNT://$dom/$usr,user").fullname

#get certificate & Remove the certificate
$Cert = Get-ChildItem -Path Cert:\CurrentUser\My | Where-Object {$_.Subject -match "$fulname"} | Remove-Item

#Install new certificate
Get-Certificate -Template User -DnsName mydomain.com -CertStoreLocation cert:\CurrentUser\My

答案1

我相信您需要使用certutil.exeWindows 7 上的命令行工具。它的用法记录在这里:https://technet.microsoft.com/en-us/library/cc732443(v=ws.11).aspx并在安装证书服务时可用。

例如:

certutil -addstore -user -f "My" "Path to certificate\certificate.cer"

您可以在 PowerShell 脚本中使用此工具。

相关内容