使用“System.Security.Cryptography.X509Certificates”从证书中检索Issuer指纹

时间:2014-05-02 15:16:27

标签: ssl certificate powershell-v3.0

如果我使用“System.Security.Cryptography.X509Certificates”,是否可以从powershell脚本中的证书中检索颁发者指纹?

我有这个powershell脚本,可以将“my”存储中的所有证书都放在远程服务器上,然后将其输出到Format-Table。我希望能够知道具有相同脚本的发行者指纹是什么。

Param(

    [parameter(
    Mandatory=$true)]
    [String]$CSVFile
)

Set-ExecutionPolicy RemoteSigned

$Serveurs = import-csv $CSVFile
$Nom = $Serveurs.Nom

Foreach ($Serveur in $Serveurs){
        $x509store = new-object System.Security.Cryptography.X509Certificates.X509Store("\\$($Serveur.Nom)\My","LocalMachine")
        $x509store.Open('ReadOnly')
        $x509store.Certificates | Format-Table -Property FriendlyName,NotAfter,Thumbprint,Issuer,Subject
}

谢谢!

1 个答案:

答案 0 :(得分:0)

我建议使用powershell为你的证书商店提供的psdrive。

Get-ChildItem -Path Cert:\LocalMachine\My | 
Format-Table -Property FriendlyName,NotAfter,Thumbprint,Issuer,Subject

更新

我没有注意到这是针对远程机器的。你可以在Invoke-Command里面说出那个cmd。

Invoke-Command -ComputerName "Computer1","Computer2",... -ScriptBlock {Get-ChildItem -Path Cert:\LocalMachine\My}