web-dev-qa-db-ja.com

インストールされた個人証明書をバッチでリストする

アクセスするためにPFX証明書をインストールする必要があるいくつかの安全なWebサイトを使用しています。これを行うコンピュータが複数あり、証明書をインストールする必要があるコンピュータをすばやく判別する方法が必要です。

バッチコマンドを使用して個人ストア内のすべての証明書を一覧表示できる方法はありますか?コマンドをリモートで実行することはできますが、それらを一覧表示する方法はわかりません。

" Windowsにインストールされている証明書のリストを取得するにはどうすればよいですか? "も同様の質問ですが、コマンドラインに固有のソリューションを探しています。そこでの答えはすべて、GUIまたはPowershellを使用することです。

enter image description here

9
user201262

最初にPowerShellを起動せずに、Windows 7のcmd.exeシェルから実行する方法は次のとおりです。

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

次に、出力を他のコマンド(どのコマンドですか?ええと、それについての質問ではないので、詳しくは説明しません)またはファイルにパイプで出力できます。そこから、探している特定の証明書がインストールされているかどうかを特定できます。

Windows 7を使用しているとのことですが、PowerShellがインストールされていると思います。 PowerShellを使用しない場合は、明示的にアンインストールする必要があります。また、PowerShellがアンインストールされている、または使用できない、またはPowerShellが存在しないVistaより前のWindowsでソリューションが機能する必要があることを質問に述べていません。

13
allquixotic

Powershellは必要ありません。

また、提案されたソリューションは、OPによって要求された個人ストアだけでなく生データもダンプします。

N.B.次は、管理者コマンドプロンプトシェルで実行されました

C:\ windows\system32> systeminfo | findstr/B/C: "OS名"/C: "OSバージョン"

OS Name:                   Microsoft Windows 7 Enterprise

OS Version:                6.1.7601 Service Pack 1 Build 7601

C:\ windows\system32> certutil -store My

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
3
NetScr1be