Partager via


Méthode IWinHttpRequest::SetClientCertificate

La méthode SetClientCertificate sélectionne un certificat client à envoyer à un serveur HTTPS (Secure Hypertext Transfer Protocol).

Syntaxe

HRESULT SetClientCertificate(
  [in] BSTR ClientCertificate
);

Paramètres

ClientCertificate [in]

Spécifie l’emplacement, le magasin de certificats et l’objet d’un certificat client.

Valeur retournée

La valeur de retour est S_OK sur la réussite ou une valeur d’erreur dans le cas contraire.

Notes

La chaîne spécifiée dans le paramètre ClientCertificate se compose de l’emplacement du certificat, du magasin de certificats et du nom de l’objet délimités par des barres obliques inverses. Pour plus d’informations sur les composants de la chaîne de certificat, consultez Certificats clients.

Le nom et l’emplacement du magasin de certificats sont facultatifs. Toutefois, si vous spécifiez un magasin de certificats, vous devez également spécifier l’emplacement de ce magasin de certificats. L’emplacement par défaut est CURRENT_USER et le magasin de certificats par défaut est « MY ». Un objet vide indique que le premier certificat du magasin de certificats doit être utilisé.

Appelez SetClientCertificate pour sélectionner un certificat avant d’appeler Send pour envoyer la demande.

Microsoft Windows HTTP Services (WinHTTP) ne fournit pas de certificats clients aux serveurs proxy qui demandent des certificats pour l’authentification.

Notes

Pour Windows XP et Windows 2000, consultez la section Conditions d’exécution de la page de démarrage WinHTTP.

Exemples

L’exemple de script suivant montre comment sélectionner un certificat client à envoyer avec une requête. Un certificat avec l’objet « Mon certificat Middle-Tier » est choisi dans le magasin de certificats « Personnel » dans le Registre sous HKEY_LOCAL_MACHINE. Étant donné que cet exemple de code est spécifique à Microsoft JScript, qui utilise la barre oblique inverse comme caractère d’échappement, deux barres obliques inverses adjacentes sont nécessaires pour délimiter les composants de la chaîne de certificat.

// Instantiate a WinHttpRequest object.
var HttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
    
// Open an HTTP connection.
HttpReq.Open("GET", "https://www.fabrikam.com/", false);
    
// Select a client certificate.
HttpReq.SetClientCertificate(
            "LOCAL_MACHINE\\Personal\\My Middle-Tier Certificate");

// Send the HTTP Request.
HttpReq.Send();

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows XP, Windows 2000 Professionnel avec SP3 [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2003, Windows 2000 Server avec SP3 [applications de bureau uniquement]
Composant redistribuable
WinHTTP 5.0 et Internet Explorer 5.01 ou version ultérieure sur Windows XP et Windows 2000.
IDL
HttpRequest.idl
Bibliothèque
Winhttp.lib
DLL
Winhttp.dll

Voir aussi

IWinHttpRequest

WinHttpRequest

SSL dans WinHTTP

WinHTTP Versions