Método IX509Enrollment::CreateRequest (certenroll.h)
O método CreateRequest recupera uma solicitação de certificado codificada. A solicitação de certificado está contida em uma matriz de bytes codificada usando Distinguished Encoding Rules (DER), conforme definido pelo padrão ASN.1 (Abstract Syntax Notation One). A matriz de bytes codificada em DER é representada por uma cadeia de caracteres que é uma sequência binária pura ou codificada por Unicode. Esse método está habilitado para a Web.
Sintaxe
HRESULT CreateRequest(
[in] EncodingType Encoding,
[out] BSTR *pValue
);
Parâmetros
[in] Encoding
Um valor de enumeração EncodingType que especifica o tipo de codificação Unicode aplicada à solicitação codificada em DER. O valor padrão é XCN_CRYPT_STRING_BASE64.
[out] pValue
Ponteiro para uma variável BSTR que contém a solicitação codificada em DER.
Retornar valor
Se a função for bem-sucedida, a função retornará S_OK.
Se a função falhar, ela retornará um valor HRESULT que indica o erro. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir. Para obter uma lista de códigos de erro comuns, consulte Valores HRESULT comuns.
Valor/código retornado | Descrição |
---|---|
|
A solicitação de certificado não pode ser encontrada. |
|
O objeto de registro não foi inicializado. |
Comentários
O método CreateRequest chama o método Encode , se necessário, para codificar os dados brutos do objeto de solicitação associado.
Esse método usa as informações fornecidas durante a inicialização e outras propriedades que foram especificadas, cria um certificado fictício e o coloca no repositório de solicitações. O método também cria um par de chaves, se necessário. Dependendo de como você inicializa o objeto de registro e em quais propriedades você definiu, pode não haver necessidade de criar um par de chaves. Por exemplo, se você estiver renovando um certificado usando uma chave existente ou se o objeto IX509PrivateKey associado à solicitação de certificado representar uma chave existente, esse método não criará um novo par de chaves.
Se um cartão inteligente estiver envolvido, esse método codificará propriedades externas como extensões, incluirá-as no certificado fictício e gravará o certificado fictício no contêiner de chave de cartão inteligente. Os certificados de logon de cartão inteligente são codificados para o repositório de solicitações, não para o repositório pessoal.
Antes de chamar o método CreateRequest , você deve inicializar o objeto IX509Enrollment chamando um dos métodos a seguir.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | certenroll.h |
DLL | CertEnroll.dll |