Share via


Certmgr.exe (憑證管理員工具)

更新:2011 年 4 月

憑證管理員工具 (Certmgr.exe) 可以管理憑證、憑證信任清單 (CTL) 和憑證撤銷清單 (CRL)。

注意事項注意事項

憑證管理工具 (Certmgr.exe) 是一個命令列公用程式,而憑證 (Certmgr.msc) 則是 Microsoft Management Console (MMC) 嵌入式管理單元。因為 Certmgr.msc 通常在 Windows 系統目錄中,在命令列中輸入 certmgr 可能會載入憑證 MMC 嵌入管理單元,即使您已開啟 Visual Studio 命令提示符號也一樣。發生這種情況是因為嵌入式管理單元的路徑在 PATH 環境變數中位於憑證管理員工具的路徑之前。如果您遇到此問題,可以透過指定可執行檔的路徑來執行 Certmgr.exe 指令。

這個工具會自動隨 Visual Studio 和 Windows SDK 一起安裝。 若要執行工具,建議您使用 Visual Studio 命令提示字元或 Windows SDK 命令提示字元。 這些公司可讓您輕鬆地執行工具,而不需瀏覽至安裝資料夾。 如需詳細資訊,請參閱Visual Studio 和 Windows SDK 命令提示字元

  • 如果您已經在電腦上安裝 Visual Studio:在工作列上,依序按一下 Start、All Programs、Visual Studio、Visual Studio Tools,然後按一下 Visual Studio Command Prompt。

    -或-

    如果您已經在電腦上安裝 Windows SDK:在工作列上,依序按一下 Start、All Programs、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

指定存放區的開放旗標。 這是傳遞到 CertOpenStoredwFlags 參數。 預設值是 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 必須是下列其中一項:

  • currentUser 表示憑證存放區是在 HKEY_CURRENT_USER 機碼下方。 這是預設值。

  • localMachine 表示憑證存放區是在 HKEY_LOCAL_MACHINE 機碼下方。

/s

指示憑證存放區是一個系統存放區。 如果不指定此選項,會認為存放區是StoreFile

/sha1 sha1Hash

指定憑證、CTL 或 CRL 的 SHA1 雜湊來進行加入、刪除或儲存。

/v

指定詳細資訊模式;顯示憑證、CTL 和 CRL 的詳細資訊。 這個選項無法與 /add/del/put 選項一起使用。

/y provider

指定存放區提供者名稱。

/7

將目的存放區儲存成 PKCS #7 物件。

/?

顯示工具的命令語法和選項。

備註

Certmgr.exe 執行下列幾種基本功能:

  • 將憑證、CTL 和 CRL 顯示到主控台 (Console)。

  • 將憑證、CTL 和 CRL 加入憑證存放區。

  • 從憑證存放區刪除憑證、CTL 和 CRL。

  • 將 X.509 憑證、CTL 或 CRL 從憑證存放區儲存到檔案。

Certmgr.exe 可使用於兩種憑證存放區類型:StoreFile 和系統存放區。 您沒有必要指定憑證存放區的類型,Certmgr.exe 會識別存放區類型,並執行適當的作業。

在沒有指定任何選項的情況下執行 Certmgr.exe 將會啟動 certmgr.msc 嵌入式管理單元,這個單元含有 GUI,會幫助憑證管理工作,您也可以從命令列使用這些憑證管理工作。 GUI 提供一個可從磁碟將憑證、CTL 和 CRL 複製到憑證存放區的匯入精靈。

如需憑證的詳細資訊,請參閱 Microsoft Platform 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 月

已更新語法,並加入一些範例。

客戶回函。