Share via


IX509Enrollment ::CreateRequest, méthode (certenroll.h)

La méthode CreateRequest récupère une demande de certificat encodée. La demande de certificat est contenue dans un tableau d’octets encodé à l’aide de Distinguished Encoding Rules (DER) tel que défini par la norme ASN.1 (Abstract Syntax Notation One). Le tableau d’octets encodé en DER est représenté par une chaîne qui est une séquence binaire pure ou encodée Unicode. Cette méthode est activée sur le web.

Syntaxe

HRESULT CreateRequest(
  [in]  EncodingType Encoding,
  [out] BSTR         *pValue
);

Paramètres

[in] Encoding

Valeur d’énumération EncodingType qui spécifie le type d’encodage Unicode appliqué à la requête encodée en DER. La valeur par défaut est XCN_CRYPT_STRING_BASE64.

[out] pValue

Pointeur vers une variable BSTR qui contient la requête encodée DER.

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
CERTSRV_E_PROPERTY_EMPTY
La demande de certificat est introuvable.
OLE_E_BLANK
L’objet d’inscription n’a pas été initialisé.

Remarques

La méthode CreateRequest appelle la méthode Encode , si nécessaire, pour encoder les données brutes à partir de l’objet de requête associé.

Cette méthode utilise les informations fournies lors de l’initialisation et d’autres propriétés qui ont été spécifiées, crée un certificat factice et le place dans le magasin de requêtes. La méthode crée également une paire de clés si nécessaire. Selon la façon dont vous initialisez l’objet d’inscription et les propriétés que vous définissez, il n’est peut-être pas nécessaire de créer une paire de clés. Par exemple, si vous renouvelez un certificat à l’aide d’une clé existante ou si l’objet IX509PrivateKey associé à la demande de certificat représente une clé existante, cette méthode ne crée pas de nouvelle paire de clés.

Si une carte à puce est impliquée, cette méthode encode les propriétés externes en tant qu’extensions, les inclut dans le certificat factice et écrit le certificat factice dans le conteneur de clés de carte à puce. Les certificats d’ouverture de session de carte à puce sont encodés dans le magasin de requêtes, et non dans le magasin personnel.

Avant d’appeler la méthode CreateRequest , vous devez initialiser l’objet IX509Enrollment en appelant l’une des méthodes suivantes.

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

IX509CertificateRequest

IX509Enrollment