Syntax von „CAPolicy.inf“

Gilt für: Windows Server 2016

„CAPolicy.inf“ ist eine Konfigurationsdatei, die die Erweiterungen, Einschränkungen und anderen Konfigurationseinstellungen definiert, die auf ein Zertifikat der Stammzertifizierungsstelle und alle von der Stammzertifizierungsstelle ausgestellten Zertifikate angewendet werden. Die Datei „CAPolicy.inf“ muss auf einem Hostserver installiert werden, bevor die Setuproutine für die Stammzertifizierungsstelle beginnt. Wenn die Sicherheitseinschränkungen für eine Stammzertifizierungsstelle geändert werden sollen, muss das Stammzertifikat verlängert und eine aktualisierte Datei „CAPolicy.inf“ auf dem Server installiert werden, bevor der Verlängerungsprozess beginnt.

Für die Datei „CAPolicy.inf“ gilt Folgendes:

  • Sie wird von einem Administrator manuell erstellt und definiert.

  • Sie wird bei der Erstellung von Stamm- und untergeordneten Zertifizierungsstellenzertifikaten verwendet.

  • Sie wird für die Signaturzertifizierungsstelle definiert, in der Sie das Zertifikat signieren und ausstellen (nicht für die Zertifizierungsstelle, in der die Anforderung erteilt wird).

Nachdem Sie die Datei „CAPolicy.inf“ erstellt haben, müssen Sie sie in den Ordner %systemroot% Ihres Servers kopieren, bevor Sie ADCS installieren oder das Zertifizierungsstellenzertifikat erneuern.

Die Datei „CAPolicy.inf“ ermöglicht es, eine Vielzahl von Zertifizierungsstellenattributen und -optionen anzugeben und zu konfigurieren. Im folgenden Abschnitt werden alle Optionen beschrieben, mit denen Sie eine auf Ihre spezifischen Anforderungen zugeschnittene INF-Datei erstellen können.

Struktur der Datei „CAPolicy.inf“

Die folgenden Begriffe werden verwendet, um die Struktur der INF-Datei zu beschreiben:

  • Abschnitt: Dies ist ein Bereich der Datei, der eine logische Gruppe von Schlüsseln abdeckt. Abschnittsnamen in INF-Dateien werden in Klammern angegeben. Viele, aber nicht alle Abschnitte werden zum Konfigurieren von Zertifikaterweiterungen verwendet.

  • Schlüssel: Dies ist der Name eines Eintrags und wird links neben dem Gleichheitszeichen angezeigt.

  • Wert: Dies ist der Parameter und wird rechts neben dem Gleichheitszeichen angezeigt.

Im folgenden Beispiel ist [Version] der Abschnitt, Signature der Schlüssel und "$Windows NT$" der Wert.

Beispiel:

[Version]
Signature="$Windows NT$"

Version

Identifiziert die Datei als INF-Datei. „Version“ ist der einzige erforderliche Abschnitt und muss sich am Anfang der Datei „CAPolicy.inf“ befinden.

PolicyStatementExtension

Listet die Richtlinien auf, die von der Organisation definiert wurden, und gibt an, ob sie optional oder obligatorisch sind. Mehrere Richtlinien werden durch Kommas getrennt. Die Namen haben eine Bedeutung im Kontext einer bestimmten Bereitstellung oder in Bezug auf benutzerdefinierte Anwendungen, die überprüfen, ob diese Richtlinien vorhanden sind.

Für jede definierte Richtlinie muss ein Abschnitt vorhanden sein, der die Einstellungen für diese bestimmte Richtlinie definiert. Für jede Richtlinie müssen Sie einen benutzerdefinierten Objektbezeichner (OID) und entweder den Text angeben, der als Richtlinienanweisung angezeigt werden soll, oder einen URL-Zeiger auf die Richtlinienanweisung. Die URL kann in Form einer HTTP-, FTP- oder LDAP-URL vorliegen.

Wenn Sie beschreibenden Text in die Richtlinienanweisung aufnehmen möchten, lauten die nächsten drei Zeilen der Datei „CAPolicy.inf“ wie folgt:

[InternalPolicy]
OID=1.1.1.1.1.1.1
Notice="Legal policy statement text"

Wenn Sie eine URL zum Hosten der Zertifizierungsstellen-Richtlinienanweisung verwenden, lauten die nächsten drei Zeilen stattdessen wie folgt:

[InternalPolicy]
OID=1.1.1.1.1.1.2
URL=https://pki.wingtiptoys.com/policies/legalpolicy.asp

Darüber hinaus sollten Sie Folgendes beachten:

  • Es werden mehrere URL- und Notice-Schlüssel unterstützt.

  • Es werden Notice- und URL-Schlüssel in demselben Richtlinienabschnitt unterstützt.

  • URLs oder Texte mit Leerzeichen müssen in Anführungszeichen eingeschlossen werden. Dies gilt für den URL-Schlüssel, unabhängig von dem Abschnitt, in dem er angezeigt wird.

Ein Beispiel für mehrere Hinweise und URLs in einem Richtlinienabschnitt würde wie folgt aussehen:

[InternalPolicy]
OID=1.1.1.1.1.1.1
URL=https://pki.wingtiptoys.com/policies/legalpolicy.asp
URL=ftp://ftp.wingtiptoys.com/pki/policies/legalpolicy.asp
Notice="Legal policy statement text"

CRLDistributionPoint

Sie können Verteilungspunkte für die Zertifikatssperrliste (CRL Distribution Points, CDPs) für ein Zertifikat der Stammzertifizierungsstelle in „CAPolicy.inf“ angeben. Nach der Installation der Zertifizierungsstelle können Sie die CDP-URLs konfigurieren, die die Zertifizierungsstelle in jedes ausgestellte Zertifikat einschließt. Das Zertifikat der Stammzertifizierungsstelle zeigt die URLs an, die in diesem Abschnitt der Datei „CAPolicy.inf“ angegeben sind.

[CRLDistributionPoint]
URL=http://pki.wingtiptoys.com/cdp/WingtipToysRootCA.crl

Unterstützung für Verteilungspunkte für Zertifikatssperrlisten (CDPs):

  • HTTP
  • Datei-URLs
  • LDAP-URLs
  • Mehrere URLs

Wichtig

Verteilungspunkte für die Zertifikatssperrliste (CRL Distribution Points, CDPs) unterstützen keine HTTPS-URLs.

  • URLs mit Leerzeichen müssen in Anführungszeichen eingeschlossen werden.

  • Wenn keine URLs angegeben werden, d. h., wenn der Abschnitt [CRLDistributionPoint] in der Datei vorhanden, aber leer ist, wird die CDP-Erweiterung nicht im Zertifikat der Stammzertifizierungsstelle aufgeführt. Dies ist beim Einrichten einer Stammzertifizierungsstelle die bevorzugte Vorgehensweise. Windows führt keine Sperrüberprüfung für ein Zertifikat der Stammzertifizierungsstelle durch, sodass die CDP-Erweiterung in einem Zertifikat der Stammzertifizierungsstelle überflüssig ist.

  • Die Zertifizierungsstelle kann die Veröffentlichung z. B. in FILE UNC in einer Freigabe durchführen, die den Ordner einer Website darstellt, aus dem ein Client Zertifikate über HTTP abruft.

  • Verwenden Sie diesen Abschnitt nur, wenn Sie eine Stammzertifizierungsstelle einrichten oder das Zertifikat der Stammzertifizierungsstelle verlängern. Die Zertifizierungsstelle bestimmt die CDP-Erweiterungen der untergeordneten Zertifizierungsstelle.

AuthorityInformationAccess

Sie können die Zugriffspunkte für Zertifizierungsstelleninfos in der Datei „CAPolicy.inf“ für das Zertifikat der Stammzertifizierungsstelle angeben.

[AuthorityInformationAccess]
URL=http://pki.wingtiptoys.com/Public/myCA.crt

Weitere Hinweise zum Abschnitt für den Zugriff auf Zertifizierungsstelleninfos:

  • Es werden mehrere URLs unterstützt.

  • HTTP-, FTP-, LDAP- und FILE-URLs werden unterstützt. HTTPS-URLs werden nicht unterstützt.

  • Dieser Abschnitt wird nur verwendet, wenn Sie eine Stammzertifizierungsstelle einrichten oder das Zertifikat der Stammzertifizierungsstelle verlängern. AIA-Erweiterungen der untergeordneten Zertifizierungsstelle werden von der Zertifizierungsstelle bestimmt, die das Zertifikat der untergeordneten Zertifizierungsstelle ausgestellt hat.

  • URLs mit Leerzeichen müssen in Anführungszeichen eingeschlossen werden.

  • Wenn keine URLs angegeben werden, d. h. wenn der Abschnitt [AuthorityInformationAccess] in der Datei vorhanden, aber leer ist, wird die Erweiterung „Zugriff auf Zertifizierungsstelleninfos“ nicht im Zertifikat der Stammzertifizierungsstelle aufgeführt. Auch dies wäre die bevorzugte Einstellung, da oberhalb einer Stammzertifizierungsstelle keine Zertifizierungsstelle vorhanden ist, auf die durch einen Link zum zugehörigen Zertifikat verwiesen werden muss.

certsrv_Server

Der Abschnitt [certsrv_server] von „CAPolicy.inf“ ist optional. [certsrv_server] wird verwendet, um die Länge des Verlängerungsschlüssels, den Gültigkeitszeitraum der Verlängerung und den Gültigkeitszeitraum der Zertifikatssperrliste (Certificate Revocation List, CRL) für eine Zertifizierungsstelle anzugeben, die verlängert oder installiert wird. Keiner der Schlüssel in diesem Abschnitt ist erforderlich. Viele dieser Einstellungen verfügen über Standardwerte, die für die meisten Anforderungen ausreichen und in der Datei „CAPolicy.inf“ nicht angegeben werden müssen. Alternativ dazu können viele dieser Einstellungen nach der Installation der Zertifizierungsstelle geändert werden.

Ein Beispiel sähe wie folgt aus:

[certsrv_server]
RenewalKeyLength=2048
RenewalValidityPeriod=Years
RenewalValidityPeriodUnits=5
CRLPeriod=Days
CRLPeriodUnits=2
CRLDeltaPeriod=Hours
CRLDeltaPeriodUnits=4
ClockSkewMinutes=20
LoadDefaultTemplates=True
AlternateSignatureAlgorithm=0
ForceUTF8=0
EnableKeyCounting=0

RenewalKeyLength legt die Schlüsselgröße nur für die Verlängerung fest. Diese Option wird nur verwendet, wenn bei der Verlängerung des Zertifizierungsstellenzertifikats ein neues Schlüsselpaar generiert wird. Die Schlüsselgröße für das anfängliche Zertifizierungsstellenzertifikat wird bei der Installation der Zertifizierungsstelle festgelegt.

Wenn Sie ein Zertifizierungsstellenzertifikat mit einem neuen Schlüsselpaar verlängern, kann die Schlüssellänge entweder erhöht oder verringert werden. Dies ist relevant, wenn Sie für die Stammzertifizierungsstelle beispielsweise eine Schlüsselgröße von 4096 Bytes oder höher festgelegt haben und dann feststellen, dass Sie über Java-Apps oder Netzwerkgeräte verfügen, die nur Schlüsselgrößen von 2048 Bytes unterstützen können. Unabhängig davon, ob Sie die Größe erhöhen oder verringern, müssen Sie alle von dieser Zertifizierungsstelle ausgestellten Zertifikate erneut ausstellen.

RenewalValidityPeriod und RenewalValidityPeriodUnits legen die Lebensdauer des neuen Zertifikats der Stammzertifizierungsstelle fest, wenn das alte Zertifikat der Stammzertifizierungsstelle verlängert wird. Dies gilt nur für eine Stammzertifizierungsstelle. Die Zertifikatlebensdauer einer untergeordneten Zertifizierungsstelle wird von der ihr übergeordneten festgelegt. RenewalValidityPeriod kann die folgenden Werte aufweisen: Hours, Days, Weeks, Months und Years.

CRLPeriod und CRLPeriodUnits legen den Gültigkeitszeitraum für die Basis-Zertifikatssperrliste fest. CRLPeriod kann die folgenden Werte aufweisen: Hours, Days, Weeks, Months und Years.

CRLDeltaPeriod und CRLDeltaPeriodUnits legen den Gültigkeitszeitraum der Delta-Zertifikatssperrliste fest. CRLDeltaPeriod kann die folgenden Werte aufweisen: Hours, Days, Weeks, Months und Years.

Jede dieser Einstellungen kann nach der Installation der Zertifizierungsstelle konfiguriert werden:

Certutil -setreg CACRLPeriod Weeks
Certutil -setreg CACRLPeriodUnits 1
Certutil -setreg CACRLDeltaPeriod Days
Certutil -setreg CACRLDeltaPeriodUnits 1

Denken Sie daran, die Active Directory-Zertifikatdienste neu zu starten, damit die Änderungen wirksam werden.

LoadDefaultTemplates wird nur während der Installation einer Unternehmenszertifizierungsstelle angewendet. Diese Einstellung, entweder TRUE oder FALSE (bzw. 1 oder 0), legt fest, ob die Zertifizierungsstelle mit einer der Standardvorlagen konfiguriert wird.

Bei einer Standardinstallation der Zertifizierungsstelle wird dem Ordner mit den Zertifikatvorlagen im Zertifizierungsstellen-Snap-In eine Teilmenge der Standardzertifikatvorlagen hinzugefügt. Das bedeutet, dass sich ein Benutzer oder Computer mit ausreichenden Berechtigungen sofort für ein Zertifikat registrieren kann, sobald der AD CS-Dienst nach der Installation der Rolle gestartet wird.

Sie sollten sofort nach der Installation einer Zertifizierungsstelle keine Zertifikate ausstellen. So können Sie mithilfe der Einstellung LoadDefaultTemplates verhindern, dass die Standardvorlagen der Unternehmenszertifizierungsstelle hinzugefügt werden. Wenn keine Vorlagen für die Zertifizierungsstelle konfiguriert sind, kann sie keine Zertifikate ausstellen.

AlternateSignatureAlgorithm konfiguriert die Zertifizierungsstelle so, dass sie das PKCS#1 V2.1-Signaturformat sowohl für das Zertifizierungsstellenzertifikat als auch für Zertifikatanforderungen unterstützt. Wenn diese Option für eine Stammzertifizierungsstelle auf 1 festgelegt ist, umfasst das Zertifizierungsstellenzertifikat das PKCS#1 V2.1-Signaturformat. Wenn sie für eine untergeordnete Zertifizierungsstelle festgelegt wird, erstellt die untergeordnete Zertifizierungsstelle eine Zertifikatanforderung, die das PKCS#1 V2.1-Signaturformat enthält.

ForceUTF8 ändert die Standardcodierung von Relative Distinguished Names (RDNs) in den Distinguished Names von Antragsteller und Aussteller in UTF-8. Dies gilt nur für RDNs, die UTF-8 unterstützen, z. B. solche, die durch eine RFC als Verzeichniszeichenfolgentypen definiert sind. Beispielsweise unterstützt der RDN für die Domänenkomponente (Domain Component, DC) die Codierung als IA5 oder UTF-8, während der Länder-RDN (Country, C) nur die Codierung als druckbare Zeichenfolge unterstützt. Die ForceUTF8-Anweisung wirkt sich daher auf einen DC-RDN, aber nicht auf einen C-RDN aus.

EnableKeyCounting konfiguriert die Zertifizierungsstelle so, dass bei jeder Verwendung des Signaturschlüssels der Zertifizierungsstelle ein Zähler erhöht wird. Aktivieren Sie diese Einstellung nur, wenn Sie über ein Hardwaresicherheitsmodul (HSM) und einen zugehörigen Kryptografiedienstanbieter (CSP) verfügen, der die Schlüsselzählung unterstützt. Die Schlüsselzählung wird weder von Microsoft Strong CSP noch von der KSP-Unterstützung (Microsoft Software Key Storage Provider) unterstützt.

Erstellen der Datei „CAPolicy.inf“

Bevor Sie AD CS installieren, konfigurieren Sie die Datei „CAPolicy.inf“ mit bestimmten Einstellungen für Ihre Bereitstellung.

Voraussetzung: Sie müssen Mitglied der Gruppe „Administratoren“ sein.

  1. Öffnen Sie auf dem Computer, auf dem Sie AD CS installieren möchten, Windows PowerShell, geben Sie notepad.exe ein, und drücken Sie die EINGABETASTE.

  2. Geben Sie folgenden Text ein:

    [Version]
    Signature="$Windows NT$"
    [PolicyStatementExtension]
    Policies=InternalPolicy
    [InternalPolicy]
    OID=1.2.3.4.1455.67.89.5
    Notice="Legal Policy Statement"
    URL=https://pki.corp.contoso.com/pki/cps.txt
    [Certsrv_Server]
    RenewalKeyLength=2048
    RenewalValidityPeriod=Years
    RenewalValidityPeriodUnits=5
    CRLPeriod=weeks
    CRLPeriodUnits=1
    LoadDefaultTemplates=0
    AlternateSignatureAlgorithm=1
    [CRLDistributionPoint]
    [AuthorityInformationAccess]
    
  3. Wählen Sie Datei aus, und klicken Sie dann auf Alle speichern.

  4. Navigieren Sie zum Ordner %systemroot%.

  5. Stellen Sie sicher, dass die folgenden Optionen festgelegt sind:

    • Dateiname ist auf CAPolicy.inf

    • Dateityp ist auf Alle Dateien gesetzt.

    • Die Codierung ist ANSI.

  6. Wählen Sie Speichern aus.

  7. Klicken Sie auf Ja, um zu bestätigen, dass die Datei überschrieben werden soll.

    Save As location for the CAPolicy.inf file

    Achtung

    Vergewissern Sie sich, dass die Datei %%amp;quot;CAPolicy.inf%%amp;quot; mit der Dateierweiterung INF gespeichert wurde. Wenn Sie am Ende des Dateinamens nicht ausdrücklich .inf eingeben und die beschriebenen Optionen auswählen, wird die Datei als Textdatei gespeichert und nicht während der Zertifizierungsstelleninstallation verwendet.

  8. Schließen Sie den Editor.

Wichtig

In der Datei „CAPolicy.inf“ sehen Sie eine Zeile, in der die URL https://pki.corp.contoso.com/pki/cps.txt angegeben wird. Der Abschnitt der Datei %%amp;quot;CAPolicy.inf%%amp;quot; zu den internen Richtlinien dient lediglich als Beispiel dafür, wie Sie den Speicherort einer Zertifikatverwendungserklärung (Certificate Practice Statement, CPS) angeben können. In diesem Leitfaden werden Sie nicht angewiesen, die Zertifikatverwendungserklärung (Certificate Practice Statement, CPS) zu erstellen.