如何使用 PowerShell 申请可导出证书?
How to request a exportable certificate using PowerShell?
参考Get-Certificate
我尝试使用 PowerShell 申请证书,它有效但证书不可导出,这是我的命令:
Get-Certificate -Template "MyComputer" -SubjectName "CN=corey.com" -CertStoreLocation cert:\LocalMachine\My
当我尝试导出证书时,失败了。
Export-PfxCertificate -Cert cert:\LocalMachine\My$Thumbprint -FilePath C:\corey.com.pfx -Password $mypwd
错误信息:
Export-PfxCertificate: Cannot export non-exportable private key.
我找不到像 Exportable
或 属性 这样的参数供我与 Get-Certificate
命令一起使用。有什么方法可以 request/make 使用 PowerShell 导出证书吗?
因为在使用 Get-Certificate
时没有参数使其可导出,所以我使用 certreq
作为替代来实现我的目标,在这里 post 希望可以帮助其他人.
首先准备一个信息文件,将Exportable
设为TRUE
。
$file = @'
[NewRequest]
Subject = "CN=corey.com"
KeyLength = 2048
Exportable = TRUE
[RequestAttributes]
CertificateTemplate = "MyTemplate"
'@
Set-Content temp.inf $file
其次,输入以下命令。
# create a new request from an .inf file
certreq -new temp.inf temp.req
# submit a request to the certificate authority
certreq -submit -config CAHostName\CAName temp.req temp.cer
# accept and install a response to a certificate request
certreq -accept temp.cer
最后,导出证书并为其分配密码。
$mypwd = ConvertTo-SecureString -String $password -Force -AsPlainText
Export-PfxCertificate -Cert cert:\LocalMachine\My$Thumbprint -FilePath C:\corey.com.pfx -Password $mypwd
参考Get-Certificate
我尝试使用 PowerShell 申请证书,它有效但证书不可导出,这是我的命令:
Get-Certificate -Template "MyComputer" -SubjectName "CN=corey.com" -CertStoreLocation cert:\LocalMachine\My
当我尝试导出证书时,失败了。
Export-PfxCertificate -Cert cert:\LocalMachine\My$Thumbprint -FilePath C:\corey.com.pfx -Password $mypwd
错误信息:
Export-PfxCertificate: Cannot export non-exportable private key.
我找不到像 Exportable
或 属性 这样的参数供我与 Get-Certificate
命令一起使用。有什么方法可以 request/make 使用 PowerShell 导出证书吗?
因为在使用 Get-Certificate
时没有参数使其可导出,所以我使用 certreq
作为替代来实现我的目标,在这里 post 希望可以帮助其他人.
首先准备一个信息文件,将Exportable
设为TRUE
。
$file = @'
[NewRequest]
Subject = "CN=corey.com"
KeyLength = 2048
Exportable = TRUE
[RequestAttributes]
CertificateTemplate = "MyTemplate"
'@
Set-Content temp.inf $file
其次,输入以下命令。
# create a new request from an .inf file
certreq -new temp.inf temp.req
# submit a request to the certificate authority
certreq -submit -config CAHostName\CAName temp.req temp.cer
# accept and install a response to a certificate request
certreq -accept temp.cer
最后,导出证书并为其分配密码。
$mypwd = ConvertTo-SecureString -String $password -Force -AsPlainText
Export-PfxCertificate -Cert cert:\LocalMachine\My$Thumbprint -FilePath C:\corey.com.pfx -Password $mypwd