在Windows PowerShell中迭代证书

时间:2017-01-19 06:43:11

标签: windows powershell certificate

Powershell以下列方式提供对Windows 7计算机上的证书的访问:

  PS C:\Users\z0017fjy> cd cert:
PS cert:\> dir


Location   : CurrentUser
StoreNames : {SmartCardRoot, UserDS, AuthRoot, CA...}

Location   : LocalMachine
StoreNames : {SmartCardRoot, AuthRoot, CA, Trust...}



PS cert:\> cd .\LocalMachine
PS cert:\LocalMachine> dir


Name : SmartCardRoot

Name : AuthRoot

Name : CA

Name : Trust

Name : Disallowed

Name : SMS

Name : My

Name : Root

Name : TrustedPeople

Name : TrustedDevices

Name : Remote Desktop

Name : TrustedPublisher

Name : REQUEST

现在我想使用以下伪代码迭代cert文件夹:

for each subfolder in cert:
  for each certstore in subfolder:
     for each cert in certstore:
        print cert.information

我如何在PowerShell中做到这一点?

1 个答案:

答案 0 :(得分:2)

证书存储库由PSProvider覆盖,可让您将其视为文件系统。还有注册表,wsman设置和其他提供程序。

为了您的目的: Get-ChildItem -Recurse -Path Cert:\

您可以通过Get-PSProvider查看其他可用的提供商。 https://technet.microsoft.com/en-us/library/ee176857.aspx