Freigeben über


enrollEOBOCMC

Im Beispiel "enrollEOBOCMC" wird eine CMC-Zertifikatanforderung im Namen eines anderen Benutzers erstellt und der Benutzer in einer Zertifikathierarchie registriert. Für die Registrierung im Namen eines anderen Benutzers muss die Zertifikatanforderung mithilfe eines Registrierungs-Agent-Zertifikats signiert werden.

Ort

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\enrollmentEOBOCMC" installiert.

Diskussion

Das beispiel "enrollEOBOCMC":

  1. Verarbeitet die folgenden Befehlszeilenargumente:
    • Der Name einer Zertifikatvorlage.
    • Der Name des Benutzers, der das Zertifikat anfordert.
    • Der Name einer PFX-Datei (Personal Information Exchange), in der die Anforderung gespeichert werden soll.
    • Ein Kennwort, das mit der PFX-Datei verwendet werden soll.
    • Ein optionaler Name der Registrierungs-Agent-Vorlage. Die Vorlage wird verwendet, um ein Registrierungs-Agent-Zertifikat zu erstellen, wenn keines im Zertifikatspeicher vorhanden ist.
  2. Erstellt ein IX509CertificateRequestCmc Objekt und initialisiert es mithilfe der zertifikatsvorlage, die in der Befehlszeile angegeben ist.
  3. Fügt dem CMC-Anforderungsobjekt den Namen des Anforderers hinzu.
  4. Ruft ein vorhandenes Registrierungs-Agent-Zertifikat ab oder erstellt, falls kein Zertifikat gefunden werden kann, eine Zertifikatanforderung aus der Registrierungs-Agent-Vorlage, die in der Befehlszeile angegeben ist, und versucht, es zu registrieren.
  5. Überprüft die Zertifikatkette, die das Registrierungs-Agent-Zertifikat enthält.
  6. Erstellt ein ISignerCertificate-Objekt, initialisiert es mithilfe des Registrierungs-Agent-Zertifikats, ruft die ISignerCertificates Auflistung aus dem CMC-Anforderungsobjekt ab und fügt das Signaturzertifikatobjekt des Registrierungs-Agents zur Auflistung hinzu. Das IX509Enrollment--Objekt, das im nächsten Schritt erläutert wird, verwendet das Zertifikat, um die CMC-Anforderung zu signieren.
  7. Erstellt ein IX509Enrollment--Objekt, initialisiert es mithilfe der CMC-Anforderung, versucht, es zu registrieren, und überprüft den Fortschritt des Registrierungsprozesses.
  8. Exportiert das installierte Zertifikat in eine PFX-Datei. Die Datei ist durch das in der Befehlszeile angegebene Kennwort geschützt. Die EncodeToFileW-Funktion wird in enrollCommon.cpp definiert.
  9. Löscht das Zertifikat aus dem Zertifikatspeicher. Die im folgenden Codebeispiel verwendeten Funktionen finden Sie in der CryptoAPI-Dokumentation.
  10. Löscht den privaten Schlüssel vom Computer.

CMC EOBO-Anforderung

PKCS #10 anfordern

Verwenden der enthaltenen Beispiele