Zertifikate für Domänencontroller enthalten nicht den Domänennamen im Subject Alternative Name (SAN)

Folgendes Szenario angenommen:

  • Es werden Zertifikate für Domänencontroller von einer Active Directory integrierten Zertifizierungsstelle (Enterprise CA) ausgestellt
  • Die hierfür verwendete Zertifikatvorlage wurde selbst erzeugt
  • Die ausgestellten Zertifikate enthalten im Subject Alternative Name (SAN) nur den vollqualifizierten Computernamen des jeweiligen Domänencontrollers, jedoch nicht den vollqualifizierten Namen und den NETBIOS Namen der Domäne

In der Zertifikatvorlage findet sich auch keine Option, das Eintragen dieser Informationen zu erzwingen.

Der vollqualifizierte Domänenname und der NETBIOS-Name der Domäne wird aufgrund eines Flags CT_FLAG_SUBJECT_ALT_REQUIRE_DOMAIN_DNS in ausgestellte Zertifikate eingetragen. Ob dieses Flag auf der Zertifikatvorlage gesetzt ist, kann mit folgendem Kommandozeilenbefehl überprüft werden.

certutil -v -template <Name-der-Vorlage> | findstr REQUIRE_DOMAIN

Als Name der Vorlage ist der Objektname, in den meisten Fällen also der Name der Vorlage ohne Leerzeichen einzutragen.

Wird eine eigene Zertifikatvorlage verwendet, sollte diese von der Standard-Zertifikatvorlagen "Kerberos Authentication" abgeleitet werden, da nur diese Zertifikatvorlage das Flag CT_FLAG_SUBJECT_ALT_REQUIRE_DOMAIN_DNS gesetzt hat. Die Standard-Zertifikatvorlagen "Domain Controller" und "Domain Controller Authentication" haben das Flag nicht gesetzt.

Das Flag kann auch manuell über den ADSI Editor für die vorhandene Zertifikatvorlage gesetzt werden, diese Methode wird jedoch vom Hersteller nicht unterstüzt.

Ist das CT_FLAG_SUBJECT_ALT_REQUIRE_DOMAIN_DNS Flag gesetzt, muss die Zertifizierungsstelle per TCP Port 445 (RPC Named Pipes) mit dem beantragenden Computer (in den meisten Fällen also ein Domänencontroller) kommunizieren können. Näheres siehe Artikel "Benötigte Firewallregeln für Active Directory Certificate Services".

Weiterführende Links: