Udostępnij za pośrednictwem


enrollPKCS7

Przykład enrollPKCS7 tworzy żądanie PKCS #7 z istniejącego certyfikatu, dziedzicząc klucze publiczne i prywatne oraz szablon certyfikatu. Istniejący certyfikat jest używany do podpisania żądania. Ten przykład rejestruje użytkownika w hierarchii certyfikatów i instaluje odpowiedź certyfikatu. W przykładzie użyto istniejącego certyfikatu do zarejestrowania i zainstalowania nowego certyfikatu. Aby uzyskać więcej informacji na temat odnawiania istniejącego certyfikatu, zobacz enrollRenewalPKCS7.

Lokalizacja

Podczas instalowania zestawu Microsoft Windows Software Development Kit (SDK) przykład jest instalowany domyślnie w folderze %ProgramFiles%\Microsoft SDKs\Windows\v7.0\Samples\Security\X509 Certificate Enrollment\VC\enrollPKCS7.

Dyskusja

Przykład enrollPKCS7:

  1. Przetwarza argumenty wiersza polecenia. Wiersz polecenia powinien zawierać nazwę szablonu certyfikatu użytego do znalezienia istniejącego certyfikatu.
  2. Pobiera istniejący certyfikat przy użyciu nazwy szablonu określonego w wierszu polecenia lub, jeśli nie można odnaleźć certyfikatu, próbuje zarejestrować nowy utworzony przy użyciu szablonu. Funkcje findCertByTemplate i enrollCertByTemplate są zdefiniowane w enrollCommon.cpp.
  3. Weryfikuje łańcuch certyfikatów i konwertuje certyfikat na BSTR.
  4. Tworzy obiekt IX509CertificateRequestPkcs7 i inicjuje go przy użyciu istniejącego certyfikatu. Nowy obiekt żądania PKCS #7 dziedziczy prywatne i publiczne klucze i szablon z istniejącego certyfikatu.
  5. Tworzy obiekt ISignerCertificate, inicjuje go przy użyciu istniejącego certyfikatu i dodaje go do obiektu żądania PKCS #7.
  6. Tworzy obiekt IX509Enrollment, inicjuje go przy użyciu obiektu żądania PKCS #7, próbuje zarejestrować go w urzędzie certyfikacji i monitoruje stan procesu rejestracji. Funkcja checkEnrollStatus jest zdefiniowana w enrollCommon.cpp.

żądania CMC

korzystanie z dołączonych przykładów