Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das beispiel "enrollFromPublicKey" initialisiert ein PKCS #10-Zertifikatanforderungsobjekt, schließt es in ein CMC-Anforderungsobjekt ein, sendet die CMC-Anforderung an eine Zertifizierungsstelle des Unternehmens und speichert das von der Zertifizierungsstelle zurückgegebene Zertifikat in einer Datei.
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\enrollmentFromPublicKey" installiert.
Diskussion
Beispiel für "enrollFromPublicKey":
- Verarbeitet die folgenden Befehlszeilenargumente:
- Der Name einer Zertifikatvorlage.
- Der Name einer Datei, in der das installierte Zertifikat als base64-codiertes Bytearray gespeichert werden soll.
- Ein optionaler Signaturzertifikatvorlagenname. Die Vorlage wird verwendet, um ein Signaturzertifikat zu erstellen, wenn keines im Zertifikatspeicher vorhanden ist.
- Erstellt ein IX509PrivateKey private Schlüsselobjekt und ruft die Create-Methode auf, um einen asymmetrischen privaten Schlüssel mithilfe des standardmäßigen kryptografischen Anbieters, der Schlüsselgröße und KeySpec Werte für den aktuellen Computer zu erstellen.
- Ruft den öffentlichen Schlüsselteil des IX509PrivateKey -Objekts ab.
- Erstellt ein IX509CertificateRequestPkcs10-Objekt und initialisiert es mithilfe der in der Befehlszeile und dem öffentlichen Schlüssel angegebenen Vorlage.
- Erstellt ein IX509CertificateRequestCmc Objekt und initialisiert es mithilfe des PKCS #10-Anforderungsobjekts.
- Ruft ein vorhandenes Signaturzertifikat ab oder erstellt, falls kein Zertifikat gefunden werden kann, eine Zertifikatanforderung aus der in der Befehlszeile angegebenen Vorlage und versucht, es zu registrieren. Die findCertByKeyUsage wird in enrollCommon.cpp definiert.
- Überprüft die Zertifikatkette.
- Erstellt ein ISignerCertificate -Objekt, initialisiert es mithilfe des Signaturzertifikats, ruft die ISignerCertificates Auflistung aus dem CMC-Anforderungsobjekt ab und fügt das Signaturzertifikatobjekt der Auflistung hinzu.
- Codiert die CMC-Anforderung mithilfe von Distinguished Encoding Rules (DER).
- Erstellt ein ICertConfig -Objekt und verwendet es, um eine Zeichenfolge abzurufen, die die Zertifizierungsstelle-Konfiguration enthält.
- Erstellt ein CryptoAPI-ICertRequest2 -Objekt und verwendet es sowie die Zeichenfolgen, die die Zertifizierungsstelle-Konfiguration und die Zertifikatanforderung enthalten, um die Anforderung an die Zertifizierungsstelle zu übermitteln.
- Überprüft den Status des Registrierungsprozesses und speichert das installierte Zertifikat in einer Datei. Die EncodeToFileW-Funktion wird in enrollCommon.cpp definiert.
Verwandte Themen