Möchte man auf einem Windows-Client über die Microsoft Management-Konsole (MMC) Zertifikate beantragen oder erneuern, hat man mehrere Optionen, welche zwar alle ans Ziel führen, hierbei aber ein unterschiedliches Verhalten zeigen. Nachfolgend wollen wir auf die Unterschiede eingehen.
Die Grundlagen zur allgemeinen Funktionsweise finden sich im Artikel "Grundlagen manuelle und automatische Zertifikatbeantragung über Lightweight Directory Access Protocol (LDAP) und Remote Procedure Call / Distributed Common Object Model (RPC/DCOM) mit dem MS-WCCE Protokoll".
Die Funktionsweise ist auch bei der automatischen Zertifikatbeantragung (Autoenrollment) die gleiche.
Option "Beantragen"
Erstbeantragung
Startet man seine Reise, ohne bereits ein Zertifikat zu haben, wählt man die Option "Request New Certificate…" im Zertifikate-Ordner für den Benutzer oder Computer.

Bei der Zertifikatbeantragung gibt man an…
- welche Zertifikatvorlage verwendet wird
- eventuell auch, welche Identitäten im Zertifikat auftauchen sollten, sofern es sich um eine Offline-Zertifikatvorlage handelt, also einer solchen, bei der der Antragsteller die Identität angeben darf (Option "Supply in the Request" in der Zertifikatvorlage)
Neubeantragung
Besitzt man bereits ein Zertifikat, hat man bei Rechtsklick auf dieses auf dieses noch folgende zusätzlichen Optionen:
- Request Certificate with New Key…
- Request Certificate with Same Key…

Wählt man eine dieser beiden Optionen, wird die gleiche Zertifikatvorlage wiederverwendet.
Ein nettes Convenience-Feature wäre, wenn im Falle einer Offline-Zertifikatvorlage, auch die Identitäts-Information (Subject Distinguished Name und Subject Alternative Name) aus dem Vorgänger-Zertifikat in die neue Zertifikatanforderung (engl. Certificate Signing Request, CSR) übertragen würde. Das hat Microsoft aber nicht vorgesehen. Man muss alle Angaben erneut machen.

Der einzige Unterschied zwischen den beiden Optionen ist lediglich, ob ein neues Schlüsselpaar verwendet werden soll, oder ob das alte Schlüsselpaar erneut verwendet werden soll.
Die zugrundeliegende Datenstruktur
Was unter der Haube geschieht ist in allen genannten Fällen grundsätzlich immer der gleiche Vorgang: Es wird eine PKCS#10 Zertifikatanforderung (engl. Certificate Signing Request, CSR) erstellt. Diese wird in eine CMS-Struktur verpackt, welche mit dem privaten Schlüssel des innenliegenden CSR signiert wird.

Keine Archivierung von Vorgänger-Zertifikaten
Bei Wahl der Option "Beantragen" wird das Vorgänger-Zertifikat (sofern vorhanden) auf dem Client grundsätzlich nicht mit dem Archivbit versehen, sodass es weiterhin in der MMC sichtbar bleibt.
Option "Erneuern"
Besitzt man bereits ein Zertifikat, hat man bei Rechtsklick auf dieses auf dieses noch folgende zusätzlichen Optionen:
- Renew Certificate with New Key…
- Renew Certificate with Same Key…

Die zugrundeliegende Datenstruktur
Unter der Haube wird es hier spannend: Wenn die Option "Erneuern" genutzt wird, wird auch eine PKCS#10 Zertifikatanforderung (engl. Certificate Signing Request, CSR) erstellt, die in CMS verschachtelt ist, jedoch…
- diese enthält die gleichen Informationen im Subject Distinguished Name und Subject Alternative Name wie das Vorgänger-Zertifikat.
- die innenliegende PKCS#10 Zertifikatanforderung enthält eine Erweiterung mit dem Microsoft-proprietären OID 1.3.6.1.4.1.311.13.1 (szOID_RENEWAL_CERTIFICATE), welche das Vorgänger-Zertifikat enthält.

Somit ist eine kryptographische Verbindung zwischen dem Vorgänger-Zertifikat und dem neuen Zertifikatantrag hergestellt. Der Zertifikatantrag wird im Endeffekt durch Besitz des bereits vorhandenen Zertifikates authentisiert.



Manuelle Erstbeantragung – automatische Erneuerung
Dieses Konstrukt erlaubt uns somit auch, die Erstbeantragung eines Zertifikats mit manueller Genehmigung vorzunehmen (auch als Offline-Zertifikatvorlage), Erneuerungen aber automatisch vorzunehmen, da gewährleistet ist, dass effektiv genau der gleiche Zertifikatinhalt vom gleichen Antragsteller beantragt wird.

Hier sei aber gleich angemerkt, dass dies nur über Autoenrollment funktioniert. Manuelles Klicken in der MMC funktioniert nicht.
Archivierung von Vorgänger-Zertifikaten
Darüber hinaus wird bei Wahl der Option "Erneuern" das Vorgänger-Zertifikat auf dem Client mit dem Archivbit versehen, sodass es nicht mehr in der MMC sichtbar ist.
Welche Option verwendet Windows Autoenrollment
Windows Autoenrollment nutzt tatsächlich beide Varianten. Das heißt…
- Bei der Erstbeantragung wird der Zertifikatantrag in einer CMS-Struktur verpackt und mit dem privaten Schlüssel des CSR signiert.
- Bei der späteren Erneuerung des Zertifikats wird die entsprechende Option verwendet, d.h. der Zertifikatantrag beinhaltet das Vorgängerzertifikat als Attribut und die äußere CMS-Struktur wird mit dem privaten Schlüssel des Vorgänger-Zertifikats signiert.
Was trivial klingen mag, macht z.B. für Softwareentwickler einen deutlichen Unterschied aus – somit ist eben nicht jeder Zertifikatantrag identisch.