enrollPKCS7
Im Beispiel enrollPKCS7 wird eine PKCS #7-Anforderung aus einem vorhandenen Zertifikat erstellt, indem die öffentlichen und privaten Schlüssel und die Zertifikatvorlage geerbt werden. Das vorhandene Zertifikat wird verwendet, um die Anforderung zu signieren. In diesem Beispiel wird der Benutzer in einer Zertifikathierarchie registriert und die Zertifikatantwort installiert. Im Beispiel wird ein vorhandenes Zertifikat zum Registrieren und Installieren eines neuen Zertifikats verwendet. Weitere Informationen zum Verlängern eines vorhandenen Zertifikats finden Sie unter enrollRenewalPKCS7.
Standort
Wenn Sie das Microsoft Windows Software Development Kit (SDK) installieren, wird das Beispiel standardmäßig im Ordner %ProgramFiles%\Microsoft SDKs\Windows\v7.0\Samples\Security\X509 Certificate Enrollment\VC\enrollPKCS7 installiert.
Diskussion (Discussion)
Beispiel "enrollPKCS7":
- Verarbeitet die Befehlszeilenargumente. Die Befehlszeile sollte den Namen der Zertifikatvorlage enthalten, die zum Suchen eines vorhandenen Zertifikats verwendet wird.
- Ruft ein vorhandenes Zertifikat mithilfe des In der Befehlszeile angegebenen Namens der Vorlage ab oder versucht, ein neues Zertifikat zu registrieren, das mithilfe der Vorlage erstellt wurde, wenn ein Zertifikat nicht gefunden werden kann. Die Funktionen findCertByTemplate und enrollCertByTemplate sind in enrollCommon.cpp definiert.
- Überprüft die Zertifikatkette und konvertiert das Zertifikat in einen BSTR.
- Erstellt ein IX509CertificateRequestPkcs7-Objekt und initialisiert es mithilfe des vorhandenen Zertifikats. Das neue PKCS #7-Anforderungsobjekt erbt die privaten und öffentlichen Schlüssel und die Vorlage vom vorhandenen Zertifikat.
- Erstellt ein ISignerCertificate-Objekt , initialisiert es mithilfe des vorhandenen Zertifikats und fügt es dem PKCS #7-Anforderungsobjekt hinzu.
- Erstellt ein IX509Enrollment-Objekt, initialisiert es mithilfe des PKCS #7-Anforderungsobjekts, versucht, es bei der Zertifizierungsstelle zu registrieren, und überwacht die status des Registrierungsprozesses. Die funktion checkEnrollStatus ist in enrollCommon.cpp definiert.
Zugehörige Themen