ICertRequest::GetCACertificate-Methode (certcli.h)

Die GetCACertificate-Methode gibt das Zertifikat der Zertifizierungsstelle (Ca ) für den Certificate Services-Server zurück.

Syntax

HRESULT GetCACertificate(
  [in]          LONG       fExchangeCertificate,
  [in]          const BSTR strConfig,
  [in]          LONG       Flags,
  [out, retval] BSTR       *pstrCertificate
);

Parameter

[in] fExchangeCertificate

Ein boolescher Wert, der angibt, welches Zertifizierungsstellenzertifikat zurückgegeben werden soll. Wenn fExchangeCertificate auf false festgelegt ist, wird das Signaturzertifikat der Zertifizierungsstelle zurückgegeben. Das Signaturzertifikat der Zertifizierungsstelle kann verwendet werden, um Signaturen für Zertifikate zu überprüfen, die von der Zertifizierungsstelle ausgestellt wurden.

Windows Server 2003: Wenn fExchangeCertificate auf true festgelegt ist, wird das Exchange-Zertifikat der Zertifizierungsstelle zurückgegeben. Das Exchange-Zertifikat der Zertifizierungsstelle kann zum Verschlüsseln von Anforderungen verwendet werden, die an die Zertifizierungsstelle gesendet werden.

Ab Windows 7 und Windows Server 2008 R2 wird dieser Parameter während https:// Registrierung ignoriert, und die Funktion gibt bei erfolgreicher Ausführung immer das Zertifizierungsstellenaustauschzertifikat zurück. Um das Zertifizierungsstellensignaturzertifikat für einen Registrierungswebdienst abzurufen, verwenden Sie die Property-Methode auf der ICertificationAuthority-Schnittstelle mit dem Enumerationswert CAPropCertificate EnrollmentCAProperty .

Beachten Sie, dass TRUE (in einer Microsoft-Headerdatei) für C/C++-Programmierer als 1 definiert ist, während Visual Basic die True-Schlüsselwort (keyword) als negativ definiert. Daher müssen Visual Basic-Entwickler einen (anstelle von True) verwenden, um diesen Parameter auf TRUE festzulegen. Um diesen Parameter jedoch auf FALSE festzulegen, können Visual Basic-Entwickler null oder False verwenden.

[in] strConfig

Stellt eine gültige Konfigurationszeichenfolge für den Zertifikatdiensteserver dar. Die Zeichenfolge kann entweder eine HTTPS-URL für einen Registrierungsserver oder im Format ComputerName\CAName sein, wobei ComputerName der Netzwerkname des Servers und CAName der allgemeine Name der Zertifizierungsstelle ist, wie er während des Setups der Zertifikatdienste eingegeben wurde. Informationen zum Namen der Konfigurationszeichenfolge finden Sie unter ICertConfig.

Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Eine HTTPS-URL wird nicht als Eingabe unterstützt.

[in] Flags

Die folgenden Flags können verwendet werden, um das Format des zurückgegebenen Zertifikats anzugeben.

Wert Bedeutung
CR_OUT_BASE64HEADER
BASE64-Format mit Anfang/Ende.
CR_OUT_BASE64
BASE64-Format ohne Anfang/Ende.
CR_OUT_BINARY
Binärformat.
 

Das folgende Flag kann mit dem Formatflag kombiniert werden, um anzugeben, dass die vollständige Zertifikatkette im angeforderten Zertifizierungsstellenzertifikat enthalten sein soll. Andernfalls wird nur das angeforderte Zertifizierungsstellenzertifikat (im X.509-Format ) zurückgegeben.

Wert Bedeutung
CR_OUT_CHAIN
Schließen Sie die vollständige Zertifikatkette in eine PKCS #7 ein.

[out, retval] pstrCertificate

Ein Zeiger auf den BSTR , der das Zertifizierungsstellenzertifikat für den Zertifikatdiensteserver im angegebenen Format enthält.

Rückgabewert

C++

Wenn die Methode erfolgreich ist, gibt die Methode S_OK zurück.

Nach erfolgreichem Abschluss dieser Methode wird *pstrCertificate auf den BSTR festgelegt, der das Zertifizierungsstellenzertifikat enthält. Um diese Methode zu verwenden, erstellen Sie eine Variable vom Typ BSTR , legen Sie die Variable gleich NULL fest, und übergeben Sie die Adresse dieser Variablen als pstrCertificate.

Wenn Sie die Verwendung von *pstrCertificate abgeschlossen haben, geben Sie es frei, indem Sie die SysFreeString-Funktion aufrufen.

Wenn die Methode fehlschlägt, gibt sie einen HRESULT-Wert zurück, der den Fehler angibt. Eine Liste allgemeiner Fehlercodes finden Sie unter Allgemeine HRESULT-Werte.

VB

Das Zertifizierungsstellenzertifikat für den Zertifikatdiensteserver im angegebenen Format.

Hinweise

Verwaltungsaufgaben verwenden DCOM. Code, der diese Schnittstellenmethode aufruft, wie in einer früheren Version von Certadm.h definiert, wird auf Windows-basierten Servern ausgeführt, solange der Client und der Server dasselbe Windows-Betriebssystem ausführen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile certcli.h (include Certsrv.h)
Bibliothek Certidl.lib
DLL Certcli.dll

Weitere Informationen

CCertRequest

ICertRequest

ICertRequest2

ICertRequest3