Certmgr.exe (nástroj Certificate Manager)

Nástroj Správce certifikátů (Certmgr.exe) spravuje certifikáty, seznamy důvěryhodných certifikátů (CTL) a seznamy odvolaných certifikátů (CRL).

Správce certifikátů se nainstaluje se sadou SDK Windows 10. Ke spuštění nástroje použijte Visual Studio Developer Command Prompt nebo Visual Studio Developer PowerShell.

Poznámka

Správce certifikátů (Certmgr.exe) je nástroj příkazového řádku, zatímco Certifikáty (Certmgr.msc) jsou modulem snap-in konzoly MMC (Microsoft Management Console). Vzhledem k tomu, že Certmgr.msc se obvykle nachází v systémovém adresáři Windows, může zadání certmgr na příkazovém řádku načíst modul snap-in Certifikáty konzoly MMC i v případě, že jste otevřeli Developer Command Prompt pro Visual Studio. K tomu dochází, protože cesta k modulu snap-in předchází cestě k nástroji Správce certifikátů v Path proměnné prostředí. Pokud narazíte na tento problém, můžete příkazy Certmgr.exe spustit zadáním cesty ke spustitelnému souboru, například %ProgramFiles(x86)%\Windows Kits\10\bin\10.0.22000.0\arm64\certmgr.exe.

Přehled certifikátů X.509 najdete v tématu Práce s certifikáty.

Syntax

Na příkazovém řádku zadejte následující příkaz:

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

Parametry

Argument Popis
sourceStorename Úložiště certifikátů obsahuje aktuální certifikáty, soubory CTL nebo CRL, které lze přidat, odstranit, uložit nebo zobrazit. To může představovat soubor úložiště nebo systémové úložiště.
název_cílového_úložiště Výstupní úložiště certifikátů nebo soubor.
Možnost Popis
/Přidat Přidá certifikáty, soubory CTL a CRL do úložiště certifikátů.
/Všechny Přidá všechny položky při použití s /add. Odstraní všechny položky při použití s /del. Zobrazí všechny položky při použití bez možností /add nebo /del . Možnost /all nelze použít s parametrem /put.
/C Přidá certifikáty při použití s /add. Odstraní certifikáty při použití s /del. Při použití s /put uloží certifikáty. Zobrazí certifikáty bez možnosti /add, /del nebo /put .
/Seznamu crl Přidá seznamy CRL při použití s /add. Odstraní seznamy CRL při použití s /del. Při použití se souborem /put uloží seznamy CRL. Zobrazí seznamy CRL bez možnosti /add, /del nebo /put .
/CTL Přidá CTL při použití s /add. Odstraní CTL při použití s /del. Při použití se souborem /put uloží seznamy CTL. Zobrazí CTL při použití bez možnosti /add, /del nebo /put .
/Del Odstraní certifikáty, soubory CTL a CRL z úložiště certifikátů.
/eencodingType Určuje typ kódování certifikátu. Výchozí formát je X509_ASN_ENCODING.
/fdwFlags Určuje příznak pro otevření úložiště. Toto je parametr dwFlags předaný do CertOpenStore. Výchozí hodnota je CERT_SYSTEM_STORE_CURRENT_USER. Tato možnost je zvažovaná pouze v případě, že je použita možnost /y .
/h[elp] Zobrazí syntaxi příkazu a možnosti nástroje.
/nnam Určuje obecný název certifikátu, který se má přidat, odstranit nebo uložit. Tuto možnost lze použít u certifikátů. Nelze ji použít u souborů CTL nebo u CRL.
/Dát Uloží do souboru certifikát X.509, soubor CTL nebo CRL z úložiště certifikátů. Soubor je uložen ve formátu X.509. K uložení souboru ve formátu PKCS #7 můžete použít možnost /7 s možností /put . Za parametrem /put musí následovat /c, /CTL nebo /CRL. Možnost /all nelze použít s parametrem /put.
Umístění /r Určuje umístění registru v rámci systémového úložiště. Tato možnost je zvažovaná pouze v případě, že zadáte parametr /s . umístění musí být jedna z následujících:

- currentUser označuje, že se úložiště certifikátů nachází pod klíčem HKEY_CURRENT_USER. Tato možnost je výchozí.
- localMachine označuje, že se úložiště certifikátů nachází pod klíčem HKEY_LOCAL_MACHINE.
/S Určuje, že je úložiště certifikátů systémovým úložištěm. Pokud tuto možnost nezadáte, bude úložiště považováno za StoreFile.
/sha1sha1Hash Určuje hodnotu hash SHA1 certifikátu, souboru CTl nebo CRl, který se má přidat, odstranit nebo uložit.
/V Určuje podrobný režim. Zobrazí detailní informace o certifikátech, souborech CTL a CRL. Tuto možnost nelze použít s možnostmi /add, /del nebo /put .
Poskytovatel /y Určuje název poskytovatele úložiště.
/7 Ukládá cílové úložiště jako objekt PKCS #7.
/? Zobrazí syntaxi příkazu a možnosti nástroje.

Poznámky

Nástroj Certmgr.exe vykonává následující základní funkce:

  • Zobrazí certifikáty, soubory CTL a CRL do konzoly.
  • Přidá certifikáty, soubory CTL a CRL do úložiště certifikátů.
  • Odstraní certifikáty, soubory CTL a CRL z úložiště certifikátů.
  • Uloží do souboru certifikát X.509, soubor CTL nebo CRL z úložiště certifikátů.

Certmgr.exe funguje se dvěma typy úložišť certifikátů: StoreFile a systémovým úložištěm. Není nutné zadávat typ úložiště certifikátů. Certmgr.exe může identifikovat typ úložiště a provádět příslušné operace.

Spuštěním nástroje Certmgr.exe bez určení jakýchkoli možností dojde ke spuštění modulu snap-in certmgr.msc, který obsahuje uživatelské rozhraní, které pomáhá s úlohami správy certifikátů, které jsou dostupné také z příkazového řádku. Uživatelské rozhraní poskytuje průvodce importováním, který zkopíruje certifikáty, soubory CTL a CRL z disku do úložiště certifikátů.

Názvy úložišť X509Certificate pro sourceStorename parametry a destinationStorename můžete najít kompilací a spuštěním následujícího kódu.

using System;
using System.Security.Cryptography.X509Certificates;

public class Example
{
   public static void Main()
   {
      foreach (var storeValue in Enum.GetValues(typeof(StoreName))) {
         X509Store store = new X509Store((StoreName) storeValue);
         store.Open(OpenFlags.ReadOnly);
         Console.WriteLine(store.Name);
      }
   }
}
Imports System.Security.Cryptography.X509Certificates

Module Example
    Public Sub Main()
        For Each storeValue In [Enum].GetValues(GetType(StoreName))
            Dim store As New X509Store(CType(storeValue, StoreName))
            store.Open(OpenFlags.ReadOnly)
            Console.WriteLine(store.Name)
        Next
    End Sub
End Module

Další informace o certifikátech najdete v tématu Práce s certifikáty.

Příklady

Následující příkaz zobrazí výchozí systémové úložiště s názvem my s podrobným výstupem.

certmgr /v /s my

Následující příkaz přidá všechny certifikáty v souboru s názvem myFile.ext do nového souboru s názvem newFile.ext.

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

Následující příkaz přidá certifikát do souboru s názvem testcert.cer do systémového my úložiště.

certmgr /add /c testcert.cer /s my

Následující příkaz přidá certifikát do souboru s názvem TrustedCert.cer do kořenového úložiště certifikátů.

certmgr /c /add TrustedCert.cer /s root

Následující příkaz uloží certifikát s běžným názvem myCert v systémovém úložišti my do souboru s názvem newCert.cer.

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

Následující příkaz odstraní všechny seznamy CTL v systémovém my úložišti a uloží výsledné úložiště do souboru s názvem newStore.str.

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

Následující příkaz uloží certifikát v systémovém my úložišti do souboru newFile. Zobrazí se výzva k zadání čísla certifikátu z mynewFilepole .

certmgr /put /c /s my newFile

Viz také