Partager via


MÉTHODE IX509CertificateRequestCmc ::InitializeFromInnerRequestTemplateName (certenroll.h)

La méthode InitializeFromInnerRequestTemplateName initialise la demande de certificat à partir d’un objet de requête interne et d’un modèle.

Syntaxe

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

Paramètres

[in] pInnerRequest

Pointeur vers une interface IX509CertificateRequest qui représente l’objet de requête interne. Il peut s’agir d’une requête PKCS #10 ou CMC.

[in] strTemplateName

Variable BSTR qui contient le nom commun (CN) du modèle tel qu’il apparaît dans Active Directory ou l’identificateur d’objet décimal en pointillés.

Valeur retournée

Si la fonction réussit, la fonction retourne S_OK.

Si la fonction échoue, elle retourne une valeur HRESULT qui indique l’erreur. Les valeurs possibles sont notamment celles figurant dans le tableau suivant. Pour obtenir la liste des codes d’erreur courants, consultez Valeurs HRESULT courantes.

Code/valeur de retour Description
CRYPT_E_INVALID_MSG_TYPE
L’objet request passé au paramètre pInnerRequest doit être une requête PKCS #10 ou CMC.
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
L’objet de requête a déjà été initialisé.

Remarques

En spécifiant un modèle, vous pouvez ajouter des informations à l’objet de requête externe qui peuvent ne pas être contenues dans la requête interne. Par exemple, si la requête interne ne contient pas les extensions nécessaires, vous pouvez fournir un modèle qui le fait.

Méthode InitializeFromInnerRequestTemplateName :

  • Crée une collection ICryptAttributes vide.
  • Crée une collection IX509NameValuePairs vide.
  • Crée une collection IX509Extensions vide.
  • Crée une collection IObjectIds pour les extensions critiques et ajoute les identificateurs d’objet XCN_OID_KEY_USAGE et XCN_OID_BASIC_CONSTRAINTS2 .
  • Crée une collection IObjectIds vide d’OID à supprimer de l’objet de requête.
  • Crée une collection ISignerCertificates vide.
  • Récupère les indicateurs de clé privée du modèle.
  • Définit la propriété ArchivePrivateKey si les indicateurs ou paramètres du modèle l’exigent.
  • Récupère l’algorithme de chiffrement à partir du modèle s’il en est spécifié et définit la propriété EncryptionAlgorithm .
  • Définit la propriété EncryptionStrength si possible.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête certenroll.h
DLL CertEnroll.dll

Voir aussi

IX509CertificateRequestCmc