Partager via


Méthode ICspStatuses ::get_ItemByOrdinal (certenroll.h)

La propriété ItemByOrdinal récupère un objet ICspStatus de la collection par nombre ordinal.

Cette propriété est en lecture seule.

Syntaxe

HRESULT get_ItemByOrdinal(
  LONG       Ordinal,
  ICspStatus **ppValue
);

Paramètres

Ordinal

ppValue

Valeur de retour

None

Remarques

L’ordre ordinal des objets ICspStatus dans la collection peut varier chaque fois que la collection est énumérée pour diverses raisons, notamment les suivantes :

  • Paramètres du modèle de demande de certificat
  • Valeurs de propriété pour le fournisseur de chiffrement
  • Valeurs des propriétés de clé privée

Par exemple, supposons que le modèle de version 2 choisi pour créer une demande de certificat spécifie que le certificat ne peut être utilisé que pour la signature (l’attribut de modèle pKIDefaultKeySpec est XCN_AT_SIGNATURE) et que le fournisseur par défaut est le fournisseur de chiffrement RSA et AES améliorés. Notez que le modèle limite le certificat à la signature, même si le fournisseur prend en charge les algorithmes de chiffrement et de signature. Autrement dit, la propriété KeySpec sur le fournisseur est une combinaison au niveau du bit des constantes XCN_AT_KEYEXCHANGE et XCN_AT_SIGNATURE, mais l’attribut de modèle pKIDefaultKeySpec prend uniquement en charge XCN_AT_SIGNATURE.

Les objets ICspStatus de la collection sont classés de la manière suivante :

  • Parmi les objets ICspStatus énumérés pour ce fournisseur, ceux associés aux algorithmes de signature (XCN_AT_SIGNATURE) sont classés en premier (valeur ordinale inférieure) et leurs propriétés Display et Selected sont activées.
    Note Si l’attribut de modèle pKIDefaultKeySpec avait été XCN_AT_KEYEXCHANGE, les algorithmes de chiffrement seraient classés en premier.
     
  • Parmi les objets ICspStatus énumérés pour ce fournisseur, ceux associés aux algorithmes de chiffrement (XCN_AT_KEYEXCHANGE) sont triés ultérieurement (valeurs ordinales plus élevées) et leurs propriétés Display et Selected ne sont pas activées.
  • Pour tous les autres fournisseurs CryptoAPI installés qui prennent en charge les algorithmes de signature asymétrique (XCN_AT_SIGNATURE) mais qui ne sont pas associés au fournisseur spécifié, la propriété Display est activée et la propriété Selected n’est pas activée.
  • Pour tous les autres fournisseurs CryptoAPI installés qui prennent en charge les algorithmes de chiffrement asymétrique (XCN_AT_KEYEXCHANGE), les propriétés Display et Selected ne sont pas activées.
  • Pour tous les fournisseurs de l’API Cryptography : Nouvelle génération (CNG) installés, les propriétés Display et Selected ne sont pas activées.

Pour un autre exemple, supposons qu’un modèle version 3 spécifie un fournisseur et un algorithme CNG spécifiques. Cette paire fournisseur/algorithme (objet ICspStatus ) est ordonnée en premier, activée pour l’affichage et sélectionnée. Tous les autres algorithmes pris en charge par ce fournisseur sont triés ultérieurement, non activés pour l’affichage et non sélectionnés. Tous les autres fournisseurs qui prennent en charge l’algorithme spécifié seront classés ultérieurement toujours, activés pour l’affichage, mais pas sélectionnés. Toutes les paires fournisseur/algorithme restantes ne sont pas activées pour l’affichage et ne sont pas sélectionnées.

Note Les fournisseurs CNG ne prennent pas en charge le concept d’utilisation prévue par KeySpec . Ils retournent XCN_AT_NONE pour cette valeur de propriété.

 

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

ICspStatus

ICspStatuses