Certmgr.exe (証明書マネージャー ツール)

更新 : 2011 年 4 月

証明書マネージャー ツール (Certmgr.exe) は、証明書、証明書信頼リスト (CTL: Certificate Trust List)、および証明書失効リスト (CRL: Certificate Revocation List) を管理します。

メモメモ

証明書マネージャー ツール (Certmgr.exe) はコマンド ライン ユーティリティですが、証明書 (Certmgr.msc) は Microsoft 管理コンソール (MMC: Microsoft Management Console) スナップインです。通常、Certmgr.msc は Windows のシステム ディレクトリにあるので、コマンド ラインで「certmgr」と入力すると、Visual Studio コマンド プロンプトを開いていた場合でも証明書 MMC スナップインが読み込まれることがあります。これは、PATH 環境変数で、スナップインのパスが証明書マネージャー ツールのパスよりも前に指定されているためです。この問題が発生した場合は、実行可能ファイルのパスを指定して Certmgr.exe コマンドを実行できます。

このツールは Visual Studio および Windows SDK と一緒に自動的にインストールされます。 このツールを実行するには、Visual Studio コマンド プロンプトまたは Windows SDK コマンド プロンプト (CMD シェル) を使用することをお勧めします。 これらのユーティリティを使用すると、インストール フォルダーに移動することなくツールを簡単に実行できます。 詳細については、「Visual Studio と Windows SDK のコマンド プロンプト」を参照してください。

  • コンピューターに Visual Studio がインストールされている場合は、タスク バーの [スタート] ボタンをクリックし、[すべてのプログラム]、[Visual Studio]、[Visual Studio Tools]、[Visual Studio Command Prompt] の順にクリックします。

    または

    コンピューターに Windows SDK がインストールされている場合は、タスク バーの [スタート] ボタンをクリックし、[すべてのプログラム]、Windows SDK のフォルダー、[Command Prompt] (または [CMD Shell]) の順にクリックします。

  • コマンド プロンプトに次のように入力します。

certmgr [/add | /del | /put] [options]
[/s[/r registryLocation]] [sourceStorename]
[/s[/r registryLocation]] [destinationStorename]

パラメーター

引数

説明

sourceStorename

追加、削除、保存、または表示する既存の証明書、CTL、または CRL を含む証明書ストア。 ストア ファイルまたはシステム ストアを指定できます。

destinationStorename

出力証明書ストアまたはファイル。

オプション

説明

/add

証明書、CTL、および CRL を証明書ストアに追加します。

/all

/add を指定して使用した場合は、すべてのエントリを追加します。 /del を指定して使用した場合は、すべてのエントリを削除します。 /add/del のいずれのオプションも指定せずに使用した場合は、すべてのエントリを表示します。 /all オプションは、/put オプションと共に指定できません。

/c

/add を指定して使用した場合は、証明書を追加します。 /del を指定して使用した場合は、証明書を削除します。 /put を指定して使用した場合は、証明書を保存します。 /add/del/put のいずれのオプションも指定せずに使用した場合は、証明書を表示します。

/CRL

/add を指定して使用した場合は、CRL を追加します。 /del を指定して使用した場合は、CRL を削除します。 /put を指定して使用した場合は、CRL を保存します。 /add/del/put のいずれのオプションも指定せずに使用した場合は、CRL を表示します。

/CTL

/add を指定して使用した場合は、CTL を追加します。 /del を指定して使用した場合は、CTL を削除します。 /put を指定して使用した場合は、CTL を保存します。 /add/del/put のいずれのオプションも指定せずに使用した場合は、CTL を表示します。

/del

証明書、CTL、および CRL を証明書ストアから削除します。

/e encodingType

証明書のエンコード タイプを指定します。 既定値は、X509_ASN_ENCODING です。

/f dwFlags

ストア オープン フラグを指定します。 これは CertOpenStore に渡される dwFlags パラメーターです。 既定値は CERT_SYSTEM_STORE_CURRENT_USER です。 このオプションは /y オプションを使用した場合にだけ有効です。

/h[elp]

このツールのコマンド構文とオプションを表示します。

/n nam

追加、削除、または保存する証明書の共通名を指定します。 このオプションは証明書についてだけ使用できます。CTL または CRL については使用できません。

/put

証明書ストアに含まれている X.509 証明書、CTL、または CRL をファイルに保存します。 ファイルは X.509 形式で保存されます。 /7 オプションを /put オプションと一緒に使用すると、ファイルを PKCS #7 形式で保存できます。 /put オプションの後ろには、/c/CTL/CRL のいずれかのオプションを指定する必要があります。 /all オプションは、/put オプションと共に指定できません。

/r location

システム ストアのレジストリの位置を指定します。 このオプションは、/s オプションを指定した場合にだけ有効です。 location には、次のいずれかを指定する必要があります。

  • 証明書ストアが HKEY_CURRENT_USER キーに含まれる場合は currentUser を指定します。 これは、既定の設定です。

  • 証明書ストアが HKEY_LOCAL_MACHINE キーに含まれる場合は localMachine を指定します。

/s

証明書ストアがシステム ストアであることを指定します。 このオプションを指定しない場合、ストアは StoreFile と見なされます。

/sha1 sha1Hash

追加、削除、または保存する証明書、CTL、または CRL の SHA1 ハッシュを指定します。

/v

詳細出力モードを指定します。このモードでは、証明書、CTL、および CRL に関する詳細情報が表示されます。 このオプションは、/add/del、または /put のオプションと共に指定できません。

/y provider

ストア プロバイダー名を指定します。

/7

出力証明書ストアを PKCS #7 オブジェクトとして保存します。

/?

このツールのコマンド構文とオプションを表示します。

解説

Certmgr.exe は次の基本的な機能を実行します。

  • 証明書、CTL、および CRL をコンソールに表示します。

  • 証明書、CTL、および CRL を証明書ストアに追加します。

  • 証明書、CTL、および CRL を証明書ストアから削除します。

  • 証明書ストアに含まれている X.509 証明書、CTL、または CRL をファイルに保存します。

Certmgr.exe は、StoreFile とシステム ストアという 2 つの種類の証明書ストアに対して機能します。 証明書ストアの種類を指定する必要はありません。Certmgr.exe がストアの種類を識別し、適切な操作を実行します。

オプションを何も指定せずに Certmgr.exe を実行すると、証明書の管理タスクの実行時に役立つ GUI を備えた certmgr.msc スナップインが起動します。これらのタスクはコマンド ラインでも実行できます。 この GUI には、証明書、CTL、および CRL をディスクから証明書ストアへとコピーする、インポート ウィザードが用意されています。

証明書の詳細については、プラットフォーム SDK の「About CryptoAPI」を参照してください。

既定のシステム ストアである my を詳細出力モードで表示するコマンドを次に示します。

certmgr /v /s my

myFile.ext という名前のファイルに含まれるすべての証明書を newFile.ext という名前の新しいファイルに追加するコマンドを次に示します。

certmgr /add /all /c myFile.ext newFile.ext

testcert.cer という名前のファイルに含まれる証明書をシステム ストア my に追加するコマンドを次に示します。

certmgr /add /c testcert.cer /s my

TrustedCert.cer という名前のファイルに含まれる証明書をルート証明書ストアに追加するコマンドを次に示します。

certmgr /c /add TrustedCert.cer /s root

システム ストア my に含まれていて共通名が myCert の証明書を newCert.cer という名前のファイルに保存するコマンドを次に示します。

certmgr /add /c /n myCert /s my newCert.cer

システム ストア my に含まれるすべての CTL を削除し、その結果得られるストアを newStore.str という名前のファイルに格納するコマンドを次に示します。

certmgr /del /all /ctl /s my newStore.str

システム ストア my に含まれる証明書をファイル newFile に保存するコマンドを次に示します。 my から newFile に保存する証明書の番号を入力するためのプロンプトが表示されます。

certmgr /put /c /s my newFile

参照

参照

Makecert.exe (証明書作成ツール)

Visual Studio と Windows SDK のコマンド プロンプト

その他の技術情報

.NET Framework ツール

履歴の変更

日付

履歴

理由

2011 年 4 月

Visual Studio と Windows SDK のコマンド プロンプトの使用に関する情報を追加。

情報の拡充

2010 年 5 月

構文を更新し、いくつかの例を追加。

カスタマー フィードバック