Compartilhar via


Método IX509CertificateRequestCmc::InitializeFromInnerRequestTemplateName (certenroll.h)

O método InitializeFromInnerRequestTemplateName inicializa a solicitação de certificado de um objeto de solicitação interna e de um modelo.

Sintaxe

HRESULT InitializeFromInnerRequestTemplateName(
  [in] IX509CertificateRequest *pInnerRequest,
  [in] BSTR                    strTemplateName
);

Parâmetros

[in] pInnerRequest

Ponteiro para uma interface IX509CertificateRequest que representa o objeto de solicitação interna. Isso pode ser um PKCS nº 10 ou uma solicitação CMC.

[in] strTemplateName

Uma variável BSTR que contém o NOME Comum (CN) do modelo como ele aparece no Active Directory ou no identificador de objeto decimal pontilhado.

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
CRYPT_E_INVALID_MSG_TYPE
O objeto de solicitação passado para o parâmetro pInnerRequest deve ser um PKCS #10 ou uma solicitação CMC.
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
O objeto de solicitação já foi inicializado.

Comentários

Ao especificar um modelo, você pode adicionar informações ao objeto de solicitação externa que pode não estar contido na solicitação interna. Por exemplo, se a solicitação interna não contiver as extensões necessárias, você poderá fornecer um modelo que o faça.

O método InitializeFromInnerRequestTemplateName :

  • Cria uma coleção ICryptAttributes vazia.
  • Cria uma coleção IX509NameValuePairs vazia.
  • Cria uma coleção IX509Extensions vazia.
  • Cria uma coleção IObjectIds para extensões críticas e adiciona os identificadores de objeto XCN_OID_KEY_USAGE e XCN_OID_BASIC_CONSTRAINTS2 (OIDs).
  • Cria uma coleção IObjectIds vazia de OIDs a ser suprimida do objeto de solicitação.
  • Cria uma coleção ISignerCertificates vazia.
  • Recupera sinalizadores de chave privada do modelo.
  • Define a propriedade ArchivePrivateKey , se necessário, pelos sinalizadores ou configurações do modelo.
  • Recupera o algoritmo de criptografia do modelo se um for especificado e define a propriedade EncryptionAlgorithm .
  • Define a propriedade EncryptionStrength , se possível.

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

IX509CertificateRequestCmc