IX509CertificateRequest ::Initialize, méthode (certenroll.h)

La méthode Initialize initialise l’objet de requête pour un utilisateur ou un ordinateur.

Syntaxe

HRESULT Initialize(
  [in] X509CertificateEnrollmentContext Context
);

Paramètres

[in] Context

Valeur d’énumération X509CertificateEnrollmentContext qui spécifie si le certificat est destiné à un utilisateur final, un ordinateur ou un administrateur agissant pour le compte d’un ordinateur. Il peut s’agir de l’une des valeurs suivantes.

Valeur Signification
ContextUser
Le certificat est demandé pour un utilisateur final.
ContextMachine
Le certificat est demandé pour un ordinateur.
ContextAdministratorForceMachine
Le certificat est demandé par un administrateur agissant pour le compte d’un ordinateur.

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 de retour Description
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
L’objet est déjà initialisé.

Remarques

La méthode Initialize initialise différents objets en fonction du type de demande de certificat en cours de création. Si vous appelez cette méthode à partir d’un objet IX509CertificateRequestPkcs10 , un objet de clé privée est créé et les objets suivants sont initialisés :

  • Collection ICryptAttributes vide.
  • Collection IX509Extensions vide.
  • Collection IObjectIds qui contient les identificateurs d’objets d’extension critiques par défaut, XCN_OID_KEY_USAGE et XCN_OID_BASIC_CONSTRAINTS2. Cette collection peut être récupérée en appelant la propriété CriticalExtensions .
  • Collection IObjectIds vide pour la propriété SuppressOids .
  • Objet ICspInformations qui contient les valeurs que vous avez spécifiées dans la propriété CSPInformations ou une collection de tous les fournisseurs installés sur l’ordinateur. Cette collection est utilisée pour créer une clé privée.

Si vous appelez cette méthode à partir d’un objet IX509CertificateRequestCmc , une requête PKCS #10 interne est créée comme ci-dessus et les objets suivants sont initialisés :

Si vous appelez cette méthode à partir d’un objet IX509CertificateRequestPkcs7 , une requête PKCS #10 interne est créée comme ci-dessus.

Les propriétés suivantes peuvent être appelées avant d’appeler cette méthode.

Vous devez appeler la propriété CSPInformations avant d’appeler cette méthode si vous souhaitez spécifier une collection ICspInformations .

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

IX509CertificateRequestCertificate

IX509CertificateRequestCmc

IX509CertificateRequestPkcs10

IX509CertificateRequestPkcs7

IX509SignatureInformation