Compartilhar via


Método IX509CertificateRequest::Initialize (certenroll.h)

O método Initialize inicializa o objeto de solicitação para um usuário ou um computador.

Sintaxe

HRESULT Initialize(
  [in] X509CertificateEnrollmentContext Context
);

Parâmetros

[in] Context

Um valor de enumeração X509CertificateEnrollmentContext que especifica se o certificado é destinado a um usuário final, um computador ou um administrador que atua em nome de um computador. Esse pode ser um dos valores a seguir.

Valor Significado
ContextUser
O certificado está sendo solicitado para um usuário final.
ContextMachine
O certificado está sendo solicitado para um computador.
ContextAdministratorForceMachine
O certificado está sendo solicitado por um administrador que atua em nome de um computador.

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.

Código de retorno Descrição
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
O objeto já está inicializado.

Comentários

O método Initialize inicializa vários objetos dependendo do tipo de solicitação de certificado que está sendo criada. Se você chamar esse método de um objeto IX509CertificateRequestPkcs10 , um objeto de chave privada será criado e os seguintes objetos serão inicializados:

  • Uma coleção ICryptAttributes vazia.
  • Uma coleção IX509Extensions vazia.
  • Uma coleção IObjectIds que contém os identificadores de objeto crítico padrão, XCN_OID_KEY_USAGE e XCN_OID_BASIC_CONSTRAINTS2. Essa coleção pode ser recuperada chamando a propriedade CriticalExtensions .
  • Uma coleção IObjectIds vazia para a propriedade SuppressOids .
  • Um objeto ICspInformations que contém os valores especificados na propriedade CSPInformations ou uma coleção de todos os provedores instalados no computador. Essa coleção é usada para criar uma chave privada.

Se você chamar esse método de um objeto IX509CertificateRequestCmc , uma solicitação interna do PKCS #10 será criada como acima e os seguintes objetos serão inicializados:

Se você chamar esse método de um objeto IX509CertificateRequestPkcs7 , uma solicitação PKCS nº 10 interna será criada conforme acima.

As propriedades a seguir podem ser chamadas antes de chamar esse método.

Você deve chamar a propriedade CSPInformations antes de chamar esse método se quiser especificar uma coleção ICspInformations .

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

Confira também

IX509CertificateRequest

IX509CertificateRequestCertificate

IX509CertificateRequestCmc

IX509CertificateRequestPkcs10

IX509CertificateRequestPkcs7

IX509SignatureInformation