Im Laufe der Lebenszeit einer Zertifizierungsstelle werden Zertifizierungsstellen-Zertifikate gemäß der Planung für deren Lebenszyklus erneuert. Hierbei kann optional ein neues Schlüsselpaar verwendet werden. Die vorigen Zertifizierungsstellen-Zertifikate laufen ab oder werden widerrufen.
Abgelaufene Zertifizierungsstellen-Zertifikate können unter Umständen zum Problem werden, wenn beispielsweise die zugehörigen privaten Schlüssel auf alten Hardware Security Modulen (HSM) gespeichert sind, und diese nur unter größeren Schwierigkeiten auf neue Hardware migriert werden können.
In einem solchen Fall kann es sinnvoll sein, alte Zertifizierungsstellen-Zertifikate aus der Konfiguration der Zertifizierungsstelle zu entfernen.
Auf die Wiederherstellung archivierter Schlüssel von Zertifikaten, die von einem der alten Zertifizierungsstellen-Zertifikaten ausgestellt wurden, oder die mit einem Key Recovery Agenten Zertifikat verschlüsselt sind, welches von einem der alten Zertifizierungsstellen-Zertifikaten ausgestellt wurde, hat diese Operation keinen Einfluss.
Im folgenden Beispiel verfügt die Zertifizierungsstelle über vier Zertifizierungsstellen-Zertifikate, von denen bereits drei Zertifikate widerrufen wurden. Die Zielstellung ist, dass nach der Operation nur noch das aktuelle Zertifikat mitsamt privatem Schlüssel von der Zertifizierungsstelle verwendet wird. Der Zähler für die Version der Zertifizierungsstelle (CA Version, in diesem Fall "3") soll hierbei jedoch erhalten bleiben.
Umsetzung
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.
Hierzu muss die Konfiguration der Zertifizierungsstellen-Zertifikate in der Registry bearbeitet werden. Der Konfigurationseintrag befindet sich unter folgendem Schlüssel:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\{Name-der-Zertifizierungstelle}
Hier gibt es einen Wert namens CACertHash, der die Fingerabdrücke (Thumbprints) der Zertifizierungsstellen-Zertifikate beinhaltet.
Die Zertifizierungsstellen-Zertifikate sind dabei in exakter chronologischer Reihenfolge eingetragen. Somit würden im Beispiel die ersten drei Werte entfernt werden.
Wichtig ist hierbei jedoch, dass man die Werte nicht einfach löscht, sondern durch einen Platzhalter in Form eines Bindestriches "-" austauscht, damit der Zähler für die Zertifizierungsstellen-Version beibehalten wird.
Löscht man die Werte anstatt sie durch einen Bindestrich auszutauschen und versucht dann, den Zertifizierungsstellen-Dienst zu starten, wird dies fehlschlagen und die Fehlermeldung ERROR_INVALID_DATA generieren.
Anschließend muss der Zertifizierungsstellen-Dienst neu gestartet werden, damit die Änderungen angenommen werden.
4 Gedanken zu „Entfernen alter Zertifizierungsstellen-Zertifikate aus der Konfiguration einer Zertifizierungsstelle“
Kommentare sind geschlossen.