IX509PrivateKey ::Import, méthode (certenroll.h)
La méthode Import importe une clé privée existante dans un conteneur de clés au sein d’un fournisseur de chiffrement.
Syntaxe
HRESULT Import(
[in] BSTR strExportType,
[in] BSTR strEncodedKey,
[in] EncodingType Encoding
);
Paramètres
[in] strExportType
Si la clé a été créée à l’aide d’un fournisseur de stockage de clés (KSP) CNG, la méthode Import transmet cet argument au paramètre pszProperty de la fonction NCryptSetProperty . Autrement dit, la valeur que vous spécifiez sera utilisée comme nom d’une propriété à définir sur la clé importée.
Si la clé a été créée à l’aide d’un fournisseur de services de chiffrement CryptoAPI, cet argument spécifie la façon dont la clé privée doit être importée. Il peut s’agir de la valeur suivante.
Valeur | Signification |
---|---|
|
Importe la clé privée entière. |
[in] strEncodedKey
Variable BSTR qui contient la clé à importer.
[in] Encoding
Valeur d’énumération EncodingType qui spécifie le type d’encodage Unicode à appliquer à la chaîne contenue dans le paramètre strEncodedKey . La valeur par défaut est XCN_CRYPT_STRING_BASE64.
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 |
---|---|
|
Le conteneur de clé est déjà ouvert. Vous pouvez recevoir cette erreur si vous avez déjà appelé Ouvrir ou Créer. |
|
La clé a été créée par un csp CryptoAPI et vous avez spécifié une valeur autre que BCRYPT_PRIVATE_KEY_BLOB pour le paramètre strExportType . |
Remarques
La fonction Import suppose automatiquement que vous tentez d’importer une clé KSP CNG si vous spécifiez une valeur autre que BCRYPT_PRIVATE_KEY_BLOB pour le paramètre strExportType et que vous ne définissez aucune des propriétés 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 |