Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die InitializeFromPublicKeyTemplate-Methode initialisiert eine nullsignierte Zertifikatanforderung mithilfe eines IX509PublicKey-Objekts und einer Vorlage.
Syntax
HRESULT InitializeFromPublicKeyTemplate(
[in] X509CertificateEnrollmentContext Context,
[in] IX509PublicKey *pPublicKey,
[in] IX509EnrollmentPolicyServer *pPolicyServer,
[in] IX509CertificateTemplate *pTemplate
);
Die Parameter
[in] Context
Ein X509CertificateEnrollmentContext-Enumerationswert , der angibt, ob das angeforderte Zertifikat für einen Endbenutzer, einen Computer oder einen Administrator bestimmt ist, der im Namen des Computers handelt. Dies kann einer der folgenden Werte sein:
[in] pPublicKey
Zeiger auf eine IX509PublicKey-Schnittstelle , die den öffentlichen Schlüssel darstellt.
[in] pPolicyServer
Zeiger auf ein IX509EnrollmentPolicyServer -Objekt, das den Zertifikatregistrierungsrichtlinienserver (CEP) darstellt, der die durch den pTemplate-Parameter angegebene Vorlage enthält.
[in] pTemplate
Zeiger auf ein IX509CertificateTemplate -Objekt, das die Vorlage darstellt, die während der Initialisierung verwendet werden soll.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt die Funktion S_OK zurück.
Wenn die Funktion fehlschlägt, wird ein HRESULT-Wert zurückgegeben, der den Fehler angibt. Mögliche Werte sind die Werte in der folgenden Tabelle, sind jedoch nicht beschränkt. Eine Liste allgemeiner Fehlercodes finden Sie unter "Allgemeine HRESULT-Werte".
| Zurückgeben von Code/Wert | Description |
|---|---|
|
Die Parameter "pPublicKey", "pPolicyServer" oder "pTemplate " sind NULL. |
|
Das Zertifikatanforderungsobjekt wurde bereits initialisiert. |
Bemerkungen
Die InitializeFromPublicKeyTemplate-Methode führt die folgenden Aktionen aus:
- Fügt die in der Vorlage angegebenen Erweiterungen (falls vorhanden) zur IX509Extensions -Auflistung hinzu.
- Erstellt eine CriticalExtensions -Auflistung und füllt sie mit den standardmäßigen XCN_OID_KEY_USAGE und XCN_OID_BASIC_CONSTRAINTS2 Objektbezeichnern auf. Wenn die Vorlage angibt, dass diese OIDs nicht kritisch sind, werden sie aus der Auflistung entfernt. Die OIDs, die von der Vorlage (sofern vorhanden) als kritisch gekennzeichnet sind, werden hinzugefügt.
- Legt die SmimeCapabilities -Eigenschaft fest, wenn die Vorlage symmetrische Algorithmen unterstützt.
- Legt die AlternateSignatureAlgorithm -Eigenschaft fest, wenn für die Vorlage ein separater Signaturalgorithmus OID erforderlich ist.
- Erstellt ein IX509SignatureInformation -Objekt.
- Erstellt einen Hashalgorithmus OID, wenn der Algorithmus in der Vorlage angegeben ist, und legt ihn für das IX509SignatureInformation -Objekt fest.
- Erstellt einen asymmetrischen Verschlüsselungsalgorithmus OID, wenn der Algorithmus in der Vorlage angegeben ist, und legt ihn für das IX509SignatureInformation -Objekt fest.
Wenn die CSPInformations-Eigenschaft nicht angegeben ist, erstellt die Methode eine ICspInformations-Auflistung von den auf dem Computer installierten Anbietern.
Die Methode erstellt keinen privaten Schlüssel. Die Verwendung dieser Methode impliziert, dass die Anforderung nullsigniert ist. Daher legt die Methode die NullSigned-Eigenschaft für das IX509SignatureInformation -Objekt fest.
Anforderungen
| Anforderung | Wert |
|---|---|
| Mindestens unterstützter Client | Windows 7 [nur Desktop-Apps] |
| Mindestanforderungen für unterstützte Server | Windows Server 2008 R2 [nur Desktop-Apps] |
| Zielplattform | Fenster |
| Header | certenroll.h |