Delen via


Certmgr.exe (Hulpprogramma voor certificaatbeheer)

Het hulpprogramma Certificate Manager (Certmgr.exe) beheert certificaten, certificaatvertrouwenslijsten (CCL's) en certificaatintrekkingslijsten (CRL's).

Certificaatbeheer wordt geïnstalleerd met de Windows 10 SDK. Gebruik de Visual Studio Developer-opdrachtprompt of Visual Studio Developer PowerShell om het hulpprogramma te starten.

Notitie

Het hulpprogramma Certificate Manager (Certmgr.exe) is een opdrachtregelprogramma, terwijl Certificaten (Certmgr.msc) een MMC-module (Microsoft Management Console) is. Omdat Certmgr.msc meestal wordt gevonden in de map Windows System, kan het invoeren certmgr op de opdrachtregel de MMC-module Certificaten laden, zelfs als u de opdrachtprompt voor ontwikkelaars voor Visual Studio hebt geopend. Dit komt doordat het pad naar de module voorafgaat aan het pad naar het hulpprogramma Certificate Manager in de Path omgevingsvariabele. Als u dit probleem ondervindt, kunt u Certmgr.exe opdrachten uitvoeren door het pad naar het uitvoerbare bestand op te geven, bijvoorbeeld %ProgramFiles(x86)%\Windows Kits\10\bin\10.0.22000.0\arm64\certmgr.exe.

Zie Werken met certificaten voor een overzicht van X.509-certificaten.

Syntaxis

Voer bij de opdrachtprompt het volgende in:

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

Parameters

Argument Beschrijving
sourceStorename Het certificaatarchief dat de bestaande certificaten, CRL's of CRL's bevat om toe te voegen, te verwijderen, op te slaan of weer te geven. Dit kan een archiefbestand of een systeemarchief zijn.
destinationStorename Het uitvoercertificaatarchief of -bestand.
Optie Omschrijving
/toevoegen Voegt certificaten, CTL's en CRL's toe aan een certificaatarchief.
/alle Hiermee worden alle vermeldingen toegevoegd wanneer deze worden gebruikt met /add. Verwijdert alle vermeldingen wanneer deze worden gebruikt met /del. Geeft alle vermeldingen weer wanneer deze worden gebruikt zonder de opties /add of /del . De optie /all kan niet worden gebruikt met /put.
/c Voegt certificaten toe wanneer deze worden gebruikt met /add. Hiermee verwijdert u certificaten wanneer deze worden gebruikt met /del. Slaat certificaten op wanneer deze worden gebruikt met /put. Geeft certificaten weer wanneer deze worden gebruikt zonder de optie /add, /del of /put .
/CRL Voegt CRL's toe wanneer deze worden gebruikt met /add. Verwijdert CRL's wanneer deze worden gebruikt met /del. Slaat CRL's op wanneer deze worden gebruikt met /put. Geeft CRL's weer wanneer deze worden gebruikt zonder de optie /add, /del of /put .
/CTL Voegt CTL's toe wanneer deze worden gebruikt met /add. Verwijdert CTL's wanneer deze worden gebruikt met /del. Slaat CTL's op wanneer deze worden gebruikt met /put. Geeft CTL's weer wanneer deze worden gebruikt zonder de optie /add, /del of /put .
/Del Hiermee verwijdert u certificaten, CTL's en CRL's uit een certificaatarchief.
/e encodingType Hiermee geeft u het certificaatcoderingstype op. De standaardwaarde is X509_ASN_ENCODING.
/f dwFlags Hiermee geeft u de geopende store vlag. Dit is de dwFlags-parameter die wordt doorgegeven aan CertOpenStore. De standaardwaarde is CERT_SYSTEM_STORE_CURRENT_USER. Deze optie wordt alleen beschouwd als de optie /y wordt gebruikt.
/h[elp] Geeft de opdrachtsyntaxis en opties voor het hulpprogramma weer.
/n naam Hiermee geeft u de algemene naam van het certificaat toe te voegen, te verwijderen of op te slaan. Deze optie kan alleen worden gebruikt met certificaten; het kan niet worden gebruikt met CRL's of CRL's.
/zetten Slaat een X.509-certificaat, CTL of CRL op uit een certificaatarchief naar een bestand. Het bestand wordt opgeslagen in X.509-indeling. U kunt de optie /7 gebruiken met de optie /put om het bestand op te slaan in PKCS #7-indeling. De optie /put moet worden gevolgd door /c, /CTL of /CRL. De optie /all kan niet worden gebruikt met /put.
/r-locatie Identificeert de registerlocatie van het systeemarchief. Deze optie wordt alleen beschouwd als u de optie /s opgeeft. de locatie moet een van de volgende zijn:

- currentUser geeft aan dat het certificaatarchief zich onder de HKEY_CURRENT_USER-sleutel bevindt. Dit is de standaardinstelling.
- localMachine geeft aan dat het certificaatarchief zich onder de HKEY_LOCAL_MACHINE sleutel bevindt.
/s Geeft aan dat het certificaatarchief een systeemarchief is. Als u deze optie niet opgeeft, wordt het archief beschouwd als een StoreFile.
/sha1 sha1Hash Hiermee geeft u de SHA1-hash van het certificaat, CTL of CRL op om toe te voegen, te verwijderen of op te slaan.
/v Hiermee geeft u uitgebreide modus; geeft gedetailleerde informatie weer over certificaten, CRL's en CRL's. Deze optie kan niet worden gebruikt met de opties /add, /del of /put .
/y-provider Hiermee geeft u de naam van de winkelprovider op.
/7 Slaat het doelarchief op als een PKCS #7-object.
/? Geeft de opdrachtsyntaxis en opties voor het hulpprogramma weer.

Opmerkingen

Certmgr.exe voert de volgende basisfuncties uit:

  • Geeft certificaten, CTL's en CRL's weer aan de console.
  • Voegt certificaten, CTL's en CRL's toe aan een certificaatarchief.
  • Hiermee verwijdert u certificaten, CTL's en CRL's uit een certificaatarchief.
  • Slaat een X.509-certificaat, CTL of CRL op uit een certificaatarchief naar een bestand.

Certmgr.exe werkt met twee typen certificaatarchieven: StoreFile en systeemarchief. Het is niet nodig om het type certificaatarchief op te geven; Certmgr.exe kan het winkeltype identificeren en de juiste bewerkingen uitvoeren.

Als u Certmgr.exe uitvoert zonder dat u opties opgeeft, wordt de module certmgr.msc gestart. Deze heeft een GUI die helpt bij de beheertaken voor certificaten die ook beschikbaar zijn vanaf de opdrachtregel. De GUI biedt een importwizard, waarmee certificaten, CTL's en CRL's van uw schijf worden gekopieerd naar een certificaatarchief.

U vindt de namen van X509Certificate-archieven voor de sourceStorename en destinationStorename parameters door de volgende code te compileren en uit te voeren.

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

Zie Werken met certificaten voor meer informatie over certificaten.

Voorbeelden

Met de volgende opdracht wordt een standaardsysteemarchief my met uitgebreide uitvoer weergegeven.

certmgr /v /s my

Met de volgende opdracht worden alle certificaten in een bestand met de naam myFile.ext toegevoegd aan een nieuw bestand met de naam newFile.ext.

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

Met de volgende opdracht wordt het certificaat in een bestand met de naam testcert.cer toegevoegd aan het my systeemarchief.

certmgr /add /c testcert.cer /s my

Met de volgende opdracht wordt het certificaat in een bestand met de naam TrustedCert.cer toegevoegd aan het basiscertificaatarchief.

certmgr /c /add TrustedCert.cer /s root

Met de volgende opdracht wordt een certificaat met de algemene naam myCert in het my systeemarchief opgeslagen in een bestand met de naam newCert.cer.

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

Met de volgende opdracht worden alle CCL's in het my systeemarchief verwijderd en wordt het resulterende archief opgeslagen in een bestand met de naam newStore.str.

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

Met de volgende opdracht wordt een certificaat opgeslagen in het my systeemarchief in het bestand newFile. U wordt gevraagd het certificaatnummer in te voeren van my waaruit u het certificaat wilt invoeren newFile.

certmgr /put /c /s my newFile

Zie ook