enrollPKCS7
El ejemplo enrollPKCS7 crea una solicitud PKCS #7 a partir de un certificado existente heredando las claves públicas y privadas y la plantilla de certificado. El certificado existente se usa para firmar la solicitud. Este ejemplo inscribe al usuario en una jerarquía de certificados e instala la respuesta del certificado. En el ejemplo se usa un certificado existente para inscribir e instalar uno nuevo. Para obtener más información sobre cómo renovar un certificado existente, consulte enrollRenewalPKCS7.
Location
Al instalar el Kit de desarrollo de software (SDK) de Microsoft Windows, el ejemplo se instala de forma predeterminada en la carpeta %ProgramFiles%\Microsoft SDKs\Windows\v7.0\Samples\Security\X509 Certificate Enrollment\VC\enrollPKCS7.
Debate
El ejemplo enrollPKCS7:
- Procesa los argumentos de la línea de comandos. La línea de comandos debe contener el nombre de la plantilla de certificado utilizada para buscar un certificado existente.
- Recupera un certificado existente mediante el nombre de la plantilla especificada en la línea de comandos o, si no se encuentra un certificado, intenta inscribir uno nuevo creado mediante la plantilla. Las funciones findCertByTemplate e enrollCertByTemplate se definen en enrollCommon.cpp.
- Comprueba la cadena de certificados y convierte el certificado en un BSTR.
- Crea un objeto IX509CertificateRequestPkcs7 e inicializa mediante el certificado existente. El nuevo objeto de solicitud PKCS #7 hereda las claves privadas y públicas y la plantilla del certificado existente.
- Crea un objeto ISignerCertificate , lo inicializa mediante el certificado existente y lo agrega al objeto de solicitud PKCS #7.
- Crea un objeto IX509Enrollment , lo inicializa mediante el objeto de solicitud PKCS #7, intenta inscribirlo con la CA y supervisa el estado del proceso de inscripción. La función checkEnrollStatus se define en enrollCommon.cpp.
Temas relacionados