Freigeben über


IX509CertificateRequestCmc2::InitializeFromInnerRequestTemplate-Methode (certenroll.h)

Die InitializeFromInnerRequestTemplate-Methode initialisiert die Zertifikatanforderung von einem inneren Anforderungsobjekt und einer Vorlage.

Syntax

HRESULT InitializeFromInnerRequestTemplate(
  [in] IX509CertificateRequest     *pInnerRequest,
  [in] IX509EnrollmentPolicyServer *pPolicyServer,
  [in] IX509CertificateTemplate    *pTemplate
);

Die Parameter

[in] pInnerRequest

Zeiger auf eine IX509CertificateRequest-Schnittstelle , die das innere Anforderungsobjekt darstellt. Dies kann eine PKCS #10- oder CMC-Anforderung sein.

[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
CRYPT_E_INVALID_MSG_TYPE
Das an den pInnerRequest-Parameter übergebene Anforderungsobjekt muss eine PKCS #10- oder CMC-Anforderung sein.
E_POINTER
Die Parameter "pInnerRequest", "pPolicyServer" und "pTemplate " dürfen nicht NULL sein.
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
Das Anforderungsobjekt wurde bereits initialisiert.

Bemerkungen

Durch Angeben einer Vorlage können Sie dem äußeren Anforderungsobjekt Informationen hinzufügen, die möglicherweise nicht in der inneren Anforderung enthalten sind. Wenn die innere Anforderung z. B. nicht die erforderlichen Erweiterungen enthält, können Sie eine Vorlage bereitstellen, die dies tut.

Die InitializeFromInnerRequestTemplate-Methode :

  • Erstellt eine leere ICryptAttributes -Auflistung.
  • Erstellt eine leere IX509NameValuePairs -Auflistung.
  • Erstellt eine leere IX509Extensions -Auflistung.
  • Erstellt eine IObjectIds -Auflistung für kritische Erweiterungen und fügt die XCN_OID_KEY_USAGE und XCN_OID_BASIC_CONSTRAINTS2 Objektbezeichner (OIDs) hinzu.
  • Erstellt eine leere IObjectIds -Auflistung von OIDs, die vom Anforderungsobjekt unterdrückt werden sollen.
  • Erstellt eine leere ISignerCertificates - Auflistung.
  • Ruft private Schlüsselkennzeichnungen aus der Vorlage ab.
  • Legt die ArchivePrivateKey-Eigenschaft fest, wenn dies durch die Vorlagenkennzeichnungen oder -einstellungen erforderlich ist.
  • Ruft den Verschlüsselungsalgorithmus aus der Vorlage ab, wenn eine angegeben ist, und legt die EncryptionAlgorithm -Eigenschaft fest.
  • Legt die EncryptionStrength-Eigenschaft fest, falls möglich.

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

Siehe auch

IX509CertificateRequestCmc2