Überprüfen der Verbindung zum privaten Schlüssel eines Zertifikate (z.B. bei Einsatz eines Hardware Security Moduls)

Für einen Fuktionstest, oder bei einer Fehlersuche kann es sinnvoll sein, zu überprüfen, ob der private Schlüssel eines Zertifikats verwendbar ist. Ist der Schlüssel beispielsweise mit einem Hardware Security Modul (HSM) gesichert, gibt es deutlich mehr Abhängigkeiten und Möglichkeiten für Fehler als bei einem Software-Schlüssel.

Identifikation des Zertifikats

Zunächst muss der SHA1-Fingerabdruck (Thumbprint) des Zertifikats ermittelt werden. In der Windows PowerShell ist dies beispielsweise mit folgendem Befehl möglich.

Für Computer-Zertifikate

Get-ChildItem -Path Cert:\LocalMachine\My

Für Benutzer-Zertifikate:

Get-ChildItem -Path Cert:\CurrentUser\My 

In der Verwaltungskonsole für Zertifikate des Computer-Speichers (certlm.msc) kann dies durch Auswahl des Zertifikats und Wechsel in den "Details" Karteireiter erfolgen. Die Information befindet sich unter "Trhumbprint".

Überprüfung vornehmen

Kennen Sie TameMyCerts? TameMyCerts ist ein Add-On für die Microsoft Zertifizierungsstelle (Active Directory Certificate Services). Es erweitert die Funktion der Zertifizierungsstelle und ermöglicht die Anwendung von Regelwerken, um die sichere Automatisierung von Zertifikat-Ausstellungen zu realisieren. TameMyCerts ist einzigartig im Microsoft-Ökosystem, hat sich bereits in unzähligen Unternehmen auf der ganzen Welt bewährt und steht unter einer freien Lizenz. Es kann über GitHub heruntergeladen und kostenlos verwendet werden. Professionelle Wartung wird ebenfalls angeboten.

Anschließend kann die Überprüfung des privaten Schlüssels mit folgendem Befehl vorgenommen werden.

Für Computer-Zertifikate:

certutil -verifystore my {Thumbprint}

Für Benutzer-Zertifikate:

certutil -user -verifystore my {Thumbprint}

Es ist erforderlich, dass der Benutzer, der den privaten Schlüssel überprüft, berechtigt ist, den Schlüssel zu nutzen. Gerade wenn ein Hardware Security Modul verwendet wird, ist dies nicht bei jedem Hersteller der Fall. Ein Konto, welches immer Zugriff auf den privaten Schlüssel haben muss, ist das SYSTEM-Konto, da unter dessen Sicherheitskontext der Zertifizierungsstellen-Dienst ausgeführt wird. Wie man eine Überprüfung in diesem Kontext durchführt wird im weiteren Verlauf des Artikels beschrieben.

Überprüfung vornehmen (SYSTEM-Kontext)

Um die Überprüfung im SYSTEM-Kontext durchzuführen bietet sich die Erstellung eines geplanten Aufgabe an, da hier das Konto, unter welchem sie ausgeführt wird, angegeben werden kann. Zunächst wird eine Batchdatei erzeugt, die den Befehl zur Überprüfung beinhaltet.

Um die Kommandozeilen-Ausgabe abzufangen, wird diese in eine Textdatei umgeleitet.

certutil -verifystore my {Thumbprint} > {Pfad}\{Datei}.txt

Es muss unbedingt der absolute Pfad angegeben werden, da die Textdatei andernfalls in C:\Windows\System32 abgespeichert wird.

Anschließend wird über die Aufgabenplanund eine neue Aufgabe angelegt.

Im Karteireiter "General" wird ein aussagekräftiger Name vergeben. Als Identität wird NT-AUTORITÄT\SYSTEM eingetragen

Der Karteireiter "Triggers" kann übersprungen werden, da die Aufgabe von Hand gestartet wird. Im Karteireiter "Actions" wird eine neue Aktion "Start a program" erzeugt und der Pfad zur Scriptdatei angegeben.

Anschließend kann die Aufgabe manuell gestartet werden.

Nun sollte eine Textdatei erzeugt werden, die das Ergebnis der Prüfung beinhaltet.

Weiterführende Links:

Ein Gedanke zu „Überprüfen der Verbindung zum privaten Schlüssel eines Zertifikate (z.B. bei Einsatz eines Hardware Security Moduls)“

Kommentare sind geschlossen.

de_DEDeutsch