批量列出已安装的个人证书

批量列出已安装的个人证书

我使用一些安全网站,这些网站要求我安装 PFX 证书才能访问。我有多台计算机可以访问这些网站,我需要一种快速确定哪些计算机仍需要安装证书的方法。

有没有办法使用批处理命令列出个人存储中的所有证书?我可以远程运行该命令,但我不知道有任何方法可以列出它们。

如何获取 Windows 上已安装的证书列表?“是一个类似的问题,但我正在寻找特定于命令行的解决方案。那里的答案都涉及使用 GUI 或 Powershell。

在此处输入图片描述

答案1

下面介绍了如何在 Windows 7 上从 shell 执行此操作cmd.exe,而无需先启动 PowerShell:

C:\> powershell -Command Get-ChildItem -Recurse Cert:

然后,您可以将输出通过管道传输到其他命令(哪些命令?好吧,您的问题与此无关,所以我就不详细阐述了)或文件。从那里,您可以确定要查找的特定证书是否已安装。

由于您说您使用的是 Windows 7,因此我假设已安装 PowerShell。要不使用 PowerShell,必须明确卸载它,而您在问题中没有提到 PowerShell 已卸载或不可用,或者该解决方案必须在没有 PowerShell 的 Vista 之前的 Windows 上运行。

答案2

不需要 Powershell。

此外,提出的解决方案不仅转储原始数据,还转储 OP 请求的个人存储。

注意:以下命令在管理员命令提示符 shell 中运行

C:\windows\system32>systeminfo | findstr /B /C:“操作系统名称”/C:“操作系统版本”

OS Name:                   Microsoft Windows 7 Enterprise

OS Version:                6.1.7601 Service Pack 1 Build 7601

C:\windows\system32>certutil -store 我的

My   <<< Certificate Store Name

================ Certificate 0 ================

Serial Number: ****************************  *<<< asterisks = mask for post. You will see cert info*

Issuer: ****************************

NotBefore: ****************************

NotAfter: ****************************

Subject: CN=****************************

Non-root Certificate

Template: ****************************

Cert Hash(sha1): ****************************

Simple container name: ****************************

  Provider = Microsoft RSA SChannel Cryptographic Provider

Private key is NOT exportable

Encryption test passed

相关内容