IX509ExtensionKeyUsage ::InitializeEncode, méthode (certenroll.h)

La méthode InitializeEncode initialise l’extension à l’aide de l’énumération X509KeyUsageFlags . Cette méthode est activée sur le web.

Syntaxe

HRESULT InitializeEncode(
  [in] X509KeyUsageFlags UsageFlags
);

Paramètres

[in] UsageFlags

Valeur d’énumération X509KeyUsageFlags . Il peut s’agir d’une combinaison ou au niveau du bit de l’une des valeurs suivantes.

Valeur Signification
XCN_CERT_DIGITAL_SIGNATURE_KEY_USAGE
La clé est utilisée avec un algorithme de signature numérique (DSA) pour prendre en charge des services autres que la non-répudiation, la signature de certificat ou la signature de liste de révocation. Les DSA sont souvent utilisés pour l’authentification.
XCN_CERT_NON_REPUDIATION_KEY_USAGE
La clé est utilisée pour vérifier une signature numérique dans le cadre d’un service de non-répudiation qui protège contre le faux déni d’action par une entité de signature.
XCN_CERT_KEY_ENCIPHERMENT_KEY_USAGE
La clé est utilisée pour le transport de clé. Autrement dit, la clé est utilisée pour gérer une clé passée de son point d’origine à son point d’utilisation réelle.
XCN_CERT_DATA_ENCIPHERMENT_KEY_USAGE
La clé est utilisée pour chiffrer les données utilisateur autres que les clés de chiffrement.
XCN_CERT_KEY_AGREEMENT_KEY_USAGE
La clé est utilisée pour l’accord de clé. L’accord de clé ou le protocole d’échange de clés permet à deux parties ou plus de négocier une valeur de clé sans transférer la clé et sans établir au préalable un secret partagé.
XCN_CERT_KEY_CERT_SIGN_KEY_USAGE
La clé est utilisée pour vérifier une signature de certificat. Cette valeur ne peut être utilisée que pour les certificats émis par les autorités de certification.
XCN_CERT_OFFLINE_CRL_SIGN_KEY_USAGE
La clé est utilisée pour vérifier une signature de liste de révocation de certificats (CRL) hors connexion.
XCN_CERT_CRL_SIGN_KEY_USAGE
La clé est utilisée pour vérifier une signature de liste de révocation de certificats.
XCN_CERT_ENCIPHER_ONLY_KEY_USAGE
La clé est utilisée pour chiffrer les données lors de l’exécution du contrat de clé. La valeur XCN_CERT_KEY_AGREEMENT_KEY_USAGE doit également être spécifiée.
XCN_CERT_DECIPHER_ONLY_KEY_USAGE
La clé est utilisée pour déchiffrer les données lors de l’exécution de l’accord de clé. La valeur XCN_CERT_KEY_AGREEMENT_KEY_USAGE doit également être spécifiée.

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

Vous devez appeler InitializeEncode ou InitializeDecode avant de pouvoir utiliser un objet IX509ExtensionKeyUsage . Les deux méthodes se complètent. La méthode InitializeEncode vous permet de construire un objet d’extension ASN.1 (Abstract Syntax Notation One) codé en Distinguished Encoding Rules (DER) à partir de données brutes, et la méthode InitializeDecode vous permet d’initialiser les données brutes à partir d’un objet encodé.

Vous pouvez récupérer les propriétés suivantes pour cette extension :

  • La propriété Critical identifie si l’extension est critique. Vous pouvez également spécifier cette propriété.
  • La propriété ObjectId récupère l’identificateur d’objet d’extension (OID).
  • La propriété KeyUsage récupère les restrictions qui identifient les utilisations prévues de la clé publique (les données d’extension brutes).

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

IX509ExtensionKeyUsage