ICertRequest3 ::SetCredential, méthode (certcli.h)
La méthode SetCredential définit les informations d’identification utilisées pour contacter le service Web d’inscription de certificats.
Syntaxe
HRESULT SetCredential(
[in] LONG hWnd,
[in] X509EnrollmentAuthFlags AuthType,
[in] BSTR strCredential,
[in] BSTR strPassword
);
Paramètres
[in] hWnd
Handle de la fenêtre parente.
Vous devez définir le paramètre hWnd qu’une interface utilisateur est présentée pour obtenir les informations d’identification.
Pour l’autorisation basée sur un certificat, le handle est utilisé si une invite d’interface utilisateur est nécessaire pour obtenir les informations d’identification, par exemple, si les informations d’identification se situent sur un carte intelligent et qu’une invite de broche est nécessaire.
Lors de l’utilisation de Kerberos, d’une authentification anonyme ou d’un nom d’utilisateur et d’un mot de passe, ce paramètre est ignoré.
[in] AuthType
Valeur de l’énumération X509EnrollmentAuthFlags qui spécifie le type d’authentification.
Valeur | Signification |
---|---|
|
Authentification anonyme.
Définissez les paramètres strCredential et strPassword sur NULL ou sur des chaînes vides. |
|
Certificat d’authentification client installé sur l’ordinateur local. Le certificat contient une clé publique associée à une clé privée (non contenue dans le certificat). Le certificat est utilisé par le serveur pour vérifier l’identité du client.
Le paramètre strCredential contient un hachage SHA-1 binaire de 20 octets du certificat à passer au service web d’inscription de certificats pour authentifier l’appelant. Définissez le paramètre strPassword sur NULL ou une chaîne vide. Le paramètre strCredential doit faire référence à un certificat installé dans le magasin de certificats personnel approprié, et il doit avoir une clé privée associée accessible à l’appelant. |
|
Authentification Kerberos.
Définissez les paramètres strCredential et strPassword sur NULL ou sur des chaînes vides. |
|
Nom d’utilisateur en clair et authentification par mot de passe. Le nom d’utilisateur et le mot de passe sont chiffrés lorsqu’ils sont stockés dans le coffre d’informations d’identification sur le client.
Les paramètres strCredential et strPassword contiennent une chaîne de nom d’utilisateur et un mot de passe en texte clair qui sont pris en charge par le service web d’inscription de certificat pour authentifier l’appelant. Étant donné qu’une connexion de service d’inscription utilise toujours le protocole SSL ( Secure Sockets Layer ), le mot de passe est chiffré lorsqu’il est envoyé via le réseau. |
[in] strCredential
Chaîne qui contient les informations d’identification.
[in] strPassword
Chaîne qui contient le mot de passe.
Valeur retournée
Code de retour | Description |
---|---|
|
Le paramètre AuthType doit être X509AuthKerberos. |
Remarques
La méthode SetCredential doit être appelée avant d’appeler la méthode ICertRequest2 ::Submit .
Les arguments strCredential et strPassword changent en fonction de la valeur spécifiée dans le paramètre AuthType , comme indiqué dans le tableau suivant.
Paramètre AuthType | paramètre strCredential | paramètre strPassword |
---|---|---|
X509AuthAnonymous | NULL | NULL |
X509AuthCertificate | Hachage SHA-1 de 20 octets (empreinte numérique) du certificat | NULL |
X509AuthKerberos | NULL | NULL |
X509AuthUsername | Nom d’utilisateur en texte clair reconnu par le service web d’inscription de certificats | Mot de passe en texte clair associé au nom d’utilisateur |
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | certcli.h (inclure Certsrv.h) |
Bibliothèque | Certidl.lib |
DLL | Certcli.dll |