Compartilhar via


enrollEOBOCMC

O exemplo enrollEOBOCMC cria uma solicitação de certificado CMC em nome de outro usuário e registra o usuário em uma hierarquia de certificados. O registro em nome de outro usuário requer que a solicitação de certificado seja assinada usando um certificado do agente de registro.

Localização

Quando você instala o Microsoft Windows Software Development Kit (SDK), o exemplo é instalado, por padrão, na pasta %ProgramFiles%\Microsoft SDKs\Windows\v7.0\Samples\Security\X509 Certificate Enrollment\VC\enrollEOBOCMC.

Discussão

O exemplo de enrollEOBOCMC:

  1. Processa os seguintes argumentos de linha de comando:
    • O nome de um modelo de certificado.
    • O nome do usuário que está solicitando o certificado.
    • O nome de um arquivo PFX (Troca de Informações Pessoais) no qual salvar a solicitação.
    • Uma senha a ser usada com o arquivo PFX.
    • Um nome de modelo opcional do agente de registro. O modelo é usado para criar um certificado do agente de registro se nenhum existir no repositório de certificados.
  2. Cria um objeto IX509CertificateRequestCmc e o inicializa usando o modelo de certificado especificado na linha de comando.
  3. Adiciona o nome do solicitante ao objeto de solicitação CMC.
  4. Recupera um certificado de agente de registro existente ou, se não for possível encontrar, cria uma solicitação de certificado do modelo do agente de registro especificado na linha de comando e tenta registrá-lo.
  5. Verifica a cadeia de certificados que contém o certificado do agente de registro.
  6. Cria um objeto ISignerCertificate , inicializa-o usando o certificado do agente de registro, recupera a coleção ISignerCertificates do objeto de solicitação CMC e adiciona o objeto de certificado de assinatura do agente de registro à coleção. O objeto IX509Enrollment discutido na próxima etapa usa o certificado para assinar a solicitação do CMC.
  7. Cria um objeto IX509Enrollment , inicializa-o usando a solicitação CMC, tenta registrá-lo e verifica o progresso do processo de registro.
  8. Exporta o certificado instalado para um arquivo PFX. O arquivo é protegido usando a senha especificada na linha de comando. A função EncodeToFileW é definida em enrollCommon.cpp.
  9. Exclui o certificado do repositório de certificados. As funções usadas no exemplo de código a seguir podem ser encontradas na documentação da CryptoAPI.
  10. Exclui a chave privada do computador.

Solicitação CMC EOBO

Solicitação PKCS nº 10

Usando os exemplos incluídos