Certmgr.exe (Certificate Manager-Tool)Certmgr.exe (Certificate Manager Tool)

Mit dem Certificate Manager-Tool (Certmgr.exe) können Sie Zertifikate, Zertifikatvertrauenslisten (Certificate Trust Lists, CTLs) und Zertifikatsperrlisten (Certificate Revocation Lists, CRLs) verwalten.The Certificate Manager tool (Certmgr.exe) manages certificates, certificate trust lists (CTLs), and certificate revocation lists (CRLs).

Das Certificate Manager-Tool wird automatisch mit Visual Studio installiert.The Certificate Manager is automatically installed with Visual Studio. Verwenden Sie zum Starten des Tools die Eingabeaufforderungen.To start the tool, use the Command Prompts.

Hinweis

Das Certificate Manager-Tool (Certmgr.exe) ist ein Befehlszeilendienstprogramm, wohingegen "Zertifikate" (Certmgr.msc) ein MMC-Snap-In (Microsoft Management Console) ist.The Certificate Manager tool (Certmgr.exe) is a command-line utility, whereas Certificates (Certmgr.msc) is a Microsoft Management Console (MMC) snap-in. Da sich „Certmgr.msc“ normalerweise im Windows-Systemverzeichnis befindet, kann durch die Eingabe von certmgr in der Befehlszeile das MMC-Snap-In „Zertifikate“ geladen werden, auch wenn Sie die Developer-Eingabeaufforderung für Visual Studio geöffnet haben.Because Certmgr.msc is usually found in the Windows System directory, entering certmgr at the command line may load the Certificates MMC snap-in even if you have opened the Developer Command Prompt for Visual Studio. Dies geschieht, weil der Pfad zum Snap-In dem Pfad für das Certificate Manager-Tool in der PATH-Umgebungsvariablen vorangestellt ist.This occurs because the path to the snap-in precedes the path to the Certificate Manager tool in the PATH environment variable. Wenn dieses Problem auftritt, können Sie "Certmgr.exe"-Befehle ausführen, indem Sie den Pfad zu der ausführbaren Datei angeben.If you encounter this problem, you can execute Certmgr.exe commands by specifying the path to the executable.

Dieses Tool wird automatisch mit Visual Studio installiert.This tool is automatically installed with Visual Studio. Verwenden Sie die Developer-Eingabeaufforderung für Visual Studio (oder die Visual Studio-Eingabeaufforderung in Windows 7), um das Tool auszuführen.To run the tool, use the Developer Command Prompt for Visual Studio (or the Visual Studio Command Prompt in Windows 7). Weitere Informationen finden Sie unter Eingabeaufforderungen.For more information, see Command Prompts.

Einen Überblick über X.509-Zertifikate finden Sie unter Arbeiten mit Zertifikaten.For an overview of X.509 certificates, see Working with Certificates.

Geben Sie an der Eingabeaufforderung Folgendes ein:At the command prompt, type the following:

SyntaxSyntax

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

ParameterParameters

ArgumentArgument BeschreibungDescription
sourceStorenamesourceStorename Der Zertifikatspeicher, der die vorhandenen Zertifikate, die CTLs oder CRLs enthält, die hinzugefügt, gelöscht, gespeichert oder angezeigt werden sollen.The certificate store that contains the existing certificates, CTLs, or CRLs to add, delete, save, or display. Dabei kann es sich um eine Speicherdatei oder einen Systemspeicher handeln.This can be a store file or a systems store.
destinationStorenamedestinationStorename Der Ausgabezertifikatsspeicher bzw. die Ausgabedatei.The output certificate store or file.
OptionOption BeschreibungDescription
/add/add Fügt einem Zertifikatsspeicher Zertifikate, CTLs und CRLs hinzu.Adds certificates, CTLs, and CRLs to a certificate store.
/all/all Fügt bei der Verwendung mit /add alle Einträge hinzu.Adds all entries when used with /add. Löscht bei der Verwendung mit /del alle Einträge. Zeigt bei der Verwendung ohne die Option /add oder /del alle Einträge an.Deletes all entries when used with /del. Displays all entries when used without the /add or /del options. Die Option /all kann nicht mit /put verwendet werden.The /all option cannot be used with /put.
/c/c Fügt bei der Verwendung mit /add Zertifikate hinzu.Adds certificates when used with /add. Löscht Zertifikate bei der Verwendung mit /del. Speichert Zertifikate bei der Verwendung mit /put.Deletes certificates when used with /del. Saves certificates when used with /put. Zeigt bei der Verwendung ohne die Optionen /add, /del und /put Zertifikate an.Displays certificates when used without the /add, /del, or /put option.
/CRL/CRL Fügt bei der Verwendung mit /add CRLs hinzu.Adds CRLs when used with /add. Löscht CRLs bei der Verwendung mit /del. Speichert CRLs bei der Verwendung mit /put.Deletes CRLs when used with /del. Saves CRLs when used with /put. Zeigt bei der Verwendung ohne die Optionen /add, /del und /put CRLs an.Displays CRLs when used without the /add, /del, or /put option.
/CTL/CTL Fügt bei der Verwendung mit /add CTLs hinzu.Adds CTLs when used with /add. Löscht CTLs bei der Verwendung mit /del. Speichert CTLs bei der Verwendung mit /put.Deletes CTLs when used with /del. Saves CTLs when used with /put. Zeigt bei der Verwendung ohne die Option /add, /del oder /put CTLs an.Displays CTLs when used without the /add, /del, or /put option.
/del/del Löscht Zertifikate, CTLs und CRLs aus einem Zertifikatspeicher.Deletes certificates, CTLs, and CRLs from a certificate store.
/e encodingType/e encodingType Gibt den Codierungstyp des Zertifikats an.Specifies the certificate encoding type. Die Standardeinstellung ist X509_ASN_ENCODING.The default is X509_ASN_ENCODING.
/f dwFlags/f dwFlags Gibt das Flag zum Öffnen des Speichers an.Specifies the store open flag. Dies ist der an CertOpenStore übergebene Parameter dwFlags.This is the dwFlags parameter passed to CertOpenStore. Der Standardwert ist CERT_SYSTEM_STORE_CURRENT_USER.The default value is CERT_SYSTEM_STORE_CURRENT_USER. Diese Option wird nur bei der Verwendung der Option /y berücksichtigt.This option is considered only if the /y option is used.
/h[elp]/h[elp] Zeigt Befehlssyntax und Optionen für das Tool an.Displays command syntax and options for the tool.
/n nam/n nam Gibt den allgemeinen Namen des Zertifikats an, das hinzugefügt, gelöscht oder gespeichert werden soll.Specifies the common name of the certificate to add, delete, or save. Diese Option kann nur für Zertifikate und nicht für CTLs und CRLs verwendet werden.This option can only be used with certificates; it cannot be used with CTLs or CRLs.
/put/put Speichert ein X.509-Zertifikat, eine CTL oder eine CRL aus einem Zertifikatspeicher in einer Datei.Saves an X.509 certificate, CTL, or CRL from a certificate store to a file. Die Datei wird im Format X.509 gespeichert.The file is saved in X.509 format. Sie können die Option /7 zusammen mit der Option /put verwenden, um die Datei im PKCS #7-Format zu speichern.You can use the /7 option with the /put option to save the file in PKCS #7 format. Auf die Option /put muss entweder /c, /CTL oder /CR folgen.The /put option must be followed by either /c, /CTL, or /CRL. Die Option /all kann nicht mit /put verwendet werden.The /all option cannot be used with /put.
/r location/r location Gibt den Speicherort des Systemspeichers in der Registrierung an.Identifies the registry location of the system store. Diese Option wird nur berücksichtigt, wenn Sie die Option /s angeben.This option is considered only if you specify the /s option. Für location muss einer der folgenden Werte angegeben werden:location must be one of the following:

- currentUser gibt an, dass sich der Zertifikatspeicher unter dem Schlüssel HKEY_CURRENT_USER befindet.- currentUser indicates that the certificate store is under the HKEY_CURRENT_USER key. Dies ist die Standardeinstellung.This is the default.
- localMachine gibt an, dass sich der Zertifikatspeicher unter dem Schlüssel HKEY_LOCAL_MACHINE befindet.- localMachine indicates that the certificate store is under the HKEY_LOCAL_MACHINE key.
/s/s Gibt an, dass der Zertifikatspeicher ein Systemspeicher ist.Indicates that the certificate store is a system store. Wenn Sie diese Option nicht angeben, wird angenommen, dass der Speicher vom Typ StoreFile ist.If you do not specify this option, the store is considered to be a StoreFile.
/sha1 sha1Hash/sha1 sha1Hash Gibt den SHA1-Hash des Zertifikats, der CTL oder der CRL an, das bzw. die hinzugefügt, gelöscht oder gespeichert werden soll.Specifies the SHA1 hash of the certificate, CTL, or CRL to add, delete, or save.
/v/v Gibt den ausführlichen Modus an und zeigt detaillierte Informationen über Zertifikate, CTLs und CRLs an.Specifies verbose mode; displays detailed information about certificates, CTLs, and CRLs. Diese Option kann nicht mit den Optionen /add, /del und /put verwendet werden.This option cannot be used with the /add, /del, or /put options.
/y provider/y provider Gibt den Namen des Speicheranbieters an.Specifies the store provider name.
/7/7 Speichert den Zielspeicher als PKCS #7-Objekt.Saves the destination store as a PKCS #7 object.
/?/? Zeigt Befehlssyntax und Optionen für das Tool an.Displays command syntax and options for the tool.

AnmerkungenRemarks

Von "Certmgr.exe" werden die folgenden Basisfunktionen ausgeführt:Certmgr.exe performs the following basic functions:

  • Zeigt Zertifikate, CTLs und CRLs in der Konsole an.Displays certificates, CTLs, and CRLs to the console.

  • Fügt einem Zertifikatsspeicher Zertifikate, CTLs und CRLs hinzu.Adds certificates, CTLs, and CRLs to a certificate store.

  • Löscht Zertifikate, CTLs und CRLs aus einem Zertifikatspeicher.Deletes certificates, CTLs, and CRLs from a certificate store.

  • Speichert ein X.509-Zertifikat, eine CTL oder eine CRL aus einem Zertifikatspeicher in einer Datei.Saves an X.509 certificate, CTL, or CRL from a certificate store to a file.

In „Certmgr.exe“ werden zwei Typen von Zertifikatspeichern verwendet: StoreFile und der Systemspeicher.Certmgr.exe works with two types of certificate stores: StoreFile and system store. Sie müssen den Typ des Zertifikatspeichers nicht angeben. "Certmgr.exe" kann den Speichertyp erkennen und die entsprechenden Operationen ausführen.It is not necessary to specify the type of certificate store; Certmgr.exe can identify the store type and perform the appropriate operations.

Wird "Certmgr.exe" ohne Angabe von Optionen ausgeführt, wird das Snap-In "Certmgr.msc" gestartet. Dessen grafische Benutzeroberfläche (GUI) erleichtert die Aufgaben der Zertifikatsverwaltung, die auch über die Befehlszeile zur Verfügung stehen.Running Certmgr.exe without specifying any options launches the certmgr.msc snap-in, which has a GUI that helps with the certificate management tasks that are also available from the command line. Die grafische Benutzeroberfläche bietet einen Import-Assistenten, der Zertifikate, CTLs und CRLs vom Datenträger in einen Zertifikatspeicher kopiert.The GUI provides an import wizard, which copies certificates, CTLs, and CRLs from your disk to a certificate store.

Sie können die Namen von "X509Certificate"-Speichern für die Parameter sourceStorename und destinationStorename suchen, indem Sie den folgenden Code kompilieren und ausführen.You can find the names of X509Certificate stores for the sourceStorename and destinationStorename parameters by compiling and running the following code.

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

Weitere Informationen zu Zertifikaten finden Sie unter Arbeiten mit Zertifikaten.For more information about certificates, see Working with Certificates.

BeispieleExamples

Mit dem folgenden Befehl wird der Standardsystemspeicher my mit ausführlicher Ausgabe angezeigt.The following command displays a default system store called my with verbose output.

certmgr /v /s my  

Mit dem folgenden Befehl werden alle Zertifikate in der Datei myFile.ext einer neuen Datei mit dem Namen newFile.ext hinzugefügt.The following command adds all the certificates in a file called myFile.ext to a new file called newFile.ext.

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

Mit dem folgenden Befehl wird das Zertifikat in der Datei testcert.cer zum Systemspeicher my hinzugefügt.The following command adds the certificate in a file named testcert.cer to the my system store.

certmgr /add /c testcert.cer /s my  

Mit dem folgenden Befehl wird das Zertifikat in der Datei TrustedCert.cer zum Stammzertifikatsspeicher hinzugefügt.The following command adds the certificate in a file named TrustedCert.cer to the root certificate store.

certmgr /c /add TrustedCert.cer /s root  

Mit dem folgenden Befehl wird ein Zertifikat mit dem allgemeinen Namen myCert im Systemspeicher my in die Datei newCert.cer gespeichert.The following command saves a certificate with the common name myCert in the my system store to a file called newCert.cer.

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

Mit dem folgenden Befehl werden alle CTLs im Systemspeicher my gelöscht. Der sich ergebende Speicher wird anschließend in der Datei newStore.str gespeichert.The following command deletes all CTLs in the my system store and saves the resulting store to a file called newStore.str.

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

Mit dem folgenden Befehl wird ein Zertifikat im Systemspeicher my in der Datei newFile gespeichert.The following command saves a certificate in the my system store in the file newFile. Sie werden aufgefordert, die Nummer des Zertifikats aus my einzugeben, das in newFile abgelegt werden soll.You will be prompted to enter the certificate number from my to put in newFile.

certmgr /put /c /s my newFile  

Siehe auchSee also