Condividi tramite


enrollRenewalPKCS7

L'esempio enrollRenewalPKCS7 crea un oggetto richiesta PKCS #7 per rinnovare un certificato esistente. L'oggetto richiesta usa una nuova coppia di chiavi, ma mantiene il provider di crittografia associato al certificato da rinnovare.

Posizione

Quando si installa Microsoft Windows Software Development Kit (SDK), l'esempio viene installato, per impostazione predefinita, nella cartella %ProgramFiles%\Microsoft SDKs\Windows\v7.0\Samples\Security\X509 Certificate Enrollment\VC\enrollRenewalPKCS7.

Discussione

L'esempio enrollRenewalPKCS7:

  1. Elabora gli argomenti della riga di comando. La riga di comando deve contenere il nome del modello usato per creare la richiesta di certificato.
  2. Recupera un certificato esistente usando il nome del modello specificato nella riga di comando o, se non è possibile trovare un certificato, tenta di registrare uno usando il modello. Le funzioni findCertByTemplate e enrollCertByTemplate sono definite in enrollCommon.cpp.
  3. Verifica la catena di certificati e converte il certificato in una stringa BSTR.
  4. Crea un oggetto IX509CertificateRequestPkcs7 e lo inizializza usando il certificato esistente. Poiché il parametro inheritOptions è impostato su InheritDefault, viene creata una nuova coppia di chiavi per la richiesta, ma viene usato il provider di crittografia nel certificato esistente. Per altre informazioni, vedere il metodo InitializeFromCertificate .
  5. Crea un oggetto IX509Enrollment , lo inizializza usando l'oggetto richiesta PKCS #7, tenta di registrarlo con la CA e monitora lo stato del processo di registrazione. La funzione checkEnrollStatus è definita in enrollCommon.cpp.

Richiesta CMC

Richiesta di rinnovo PKCS #7

Uso degli esempi inclusi