Seit den Verwaltungstools für die Zertifikatdienste in Windows Server 2012 kann man beim Konfigurieren einer Zertifikatvorlage die gewünschte Kompatibilität für die Zertifizierungsstelle und Zertifikatempfänger auswählen.
Nachfolgend wird diese Funktion näher beschrieben, sowie auf mögliche Auswirkungen in der Praxis eingegangen.

Für eine Übersicht, welche Optionen bei Veränderung der einzelnen Kompatibilitätseinstellungen verfügbar werden siehe Artikel "Übersicht über die Verfügbarkeit von Optionen bei Veränderung der Kompatibilitätseinstellungen einer Zertifikatvorlage".
Die Kompatibilitätseinstellungen sind als Bitmaske im Attribut msPKI-Private-Key-Flag in der Zertifikatvorlage abgebildet.

Das msPKI-Private-Key-Flag zwei untergeordnete Attribute:
- CTPRIVATEKEY_FLAG_SERVERVERSION_SHIFT
- CTPRIVATEKEY_FLAG_CLIENTVERSION_SHIFT
Mögliche Werte für CTPRIVATEKEY_FLAG_SERVERVERSION_SHIFT
Betriebssystem | Flag | Wert |
---|---|---|
Standardeinstellung | TEMPLATE_SERVER_VER_NONE | 0 |
Windows Server 2003 | TEMPLATE_SERVER_VER_2003 | 10000 (65536) |
Windows Server 2008 | TEMPLATE_SERVER_VER_2008 | 20000 (131072) |
Windows Server 2008 R2 | TEMPLATE_SERVER_VER_2008R2 | 30000 (196608) |
Windows Server 2012 | TEMPLATE_SERVER_VER_WIN8 | 40000 (262144) |
Windows Server 2012 R2 | TEMPLATE_SERVER_VER_WINBLUE | 50000 (327680) |
Windows Server 2016 | TEMPLATE_SERVER_VER_THRESHOLD | 60000 (393216) |
Mögliche Werte für CTPRIVATEKEY_FLAG_CLIENTVERSION_SHIFT
Betriebssystem | Flag | Wert |
---|---|---|
Standardeinstellung | EMPLATE_CLIENT_VER_NONE | 0 |
Windows XP | TEMPLATE_CLIENT_VER_XP | 1000000 (16777216) |
Windows Vista | TEMPLATE_CLIENT_VER_VISTA | 2000000 (33554432) |
Windows 7 | TEMPLATE_CLIENT_VER_WIN7 | 3000000 (50331648) |
Windows 8 | TEMPLATE_CLIENT_VER_WIN8 | 4000000 (67108864) |
Windows 8.1 | TEMPLATE_CLIENT_VER_WINBLUE | 5000000 (83886080) |
Windows 10 | TEMPLATE_CLIENT_VER_THRESHOLD | 6000000 (100663296) |
Abfrage des Attributs für eine Zertifikatvorlage
Mit folgendem Kommandozeilenbefehl können die aktuell für eine Zertifikatvorlage konfigurierten Werte für die beiden Flags abgefragt werden:
certutil -v -template <Name-der-Vorlage> | findstr VERSION_SHIFT

Der Vorlagenname entspricht dem Namen des Active Directory Objektes, nicht dem Anzeigenamen.
Alternativ ist es auch möglich, das msPKI-Private-Key-Flag direkt auf dem pKICertificateTemplate Objekt im Active Directory abzufragen und auszuwerten.
certutil -v -ds "<DN-des-Template-Objekts>"
Beispiel:
certutil -v -ds "CN=ADCSLaborBenutzer,CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration,DC=intra,DC=adcslabor,DC=de"
Prüft man direkt nach einer Änderung an der Zertifikatvorlage sollte man den clientseitigen Cache mit certutil -pulse aktualisieren, um die aktuellsten Informationen angezeigt zu bekommen.

3 Gedanken zu „Wie sind die Kompatibilitätseinstellungen für Zertifikatvorlagen technisch abgebildet?“
Kommentare sind geschlossen.