IX509CertificateRequestPkcs10::InitializeFromPublicKey-Methode (certenroll.h)
Die InitializeFromPublicKey-Methode initialisiert eine Zertifikatanforderung mit NULL-Signierung mithilfe eines IX509PublicKey-Objekts und optional einer Vorlage.
Syntax
HRESULT InitializeFromPublicKey(
[in] X509CertificateEnrollmentContext Context,
[in] IX509PublicKey *pPublicKey,
[in, optional] BSTR strTemplateName
);
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 Auftrag des Computers handelt.
[in] pPublicKey
Zeiger auf eine IX509PublicKey-Schnittstelle , die den öffentlichen Schlüssel darstellt.
[in, optional] strTemplateName
Eine BSTR-Variable , die den allgemeinen Namen (Common Name, CN) der Vorlage enthält, wie er in Active Directory angezeigt wird, oder den dezimalen Objektbezeichner mit Punkt. Dies ist ein optionaler Parameter.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt die Funktion S_OK zurück.
Wenn die Funktion fehlschlägt, gibt sie einen HRESULT-Wert zurück, der den Fehler angibt. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle. Eine Liste allgemeiner Fehlercodes finden Sie unter Allgemeine HRESULT-Werte.
Rückgabecode/-wert | BESCHREIBUNG |
---|---|
|
Das Zertifikatanforderungsobjekt wurde bereits initialisiert. |
Hinweise
Wenn Sie eine Vorlage angeben, führt die InitializeFromPublicKey-Methode die folgenden Aktionen aus:
- Fügt der IX509Extensions-Auflistung die in der optionalen Vorlage angegebenen Erweiterungen (sofern vorhanden) hinzu.
- Erstellt eine CriticalExtensions-Auflistung und füllt sie mit den Standard-XCN_OID_KEY_USAGE- und XCN_OID_BASIC_CONSTRAINTS2-Objektbezeichnern auf. Wenn eine Vorlage angegeben ist und angibt, dass diese OIDs nicht kritisch sind, werden sie aus der Auflistung entfernt. Die von der Vorlage als kritisch gekennzeichneten OIDs werden hinzugefügt, sofern vorhanden.
- Legt die SmimeCapabilities-Eigenschaft fest, wenn die Vorlage symmetrische Algorithmen unterstützt.
- Legt die AlternateSignatureAlgorithm-Eigenschaft fest , wenn die Vorlage eine diskrete Signaturalgorithmus-OID erfordert.
- Erstellt ein IX509SignatureInformation-Objekt .
- Erstellt eine Hashalgorithmus-OID, wenn der Algorithmus in der Vorlage angegeben ist, und legt ihn für das IX509SignatureInformation-Objekt fest.
- Erstellt eine asymmetrische Verschlüsselungsalgorithmus-OID, wenn der Algorithmus in der Vorlage angegeben ist, und legt ihn für das IX509SignatureInformation-Objekt fest.
Unabhängig davon, ob Sie eine Vorlage angeben oder nicht: 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 |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | certenroll.h |
DLL | CertEnroll.dll |