Método IWinHttpRequest::SetClientCertificate
O método SetClientCertificate seleciona um certificado do cliente para enviar para um servidor HTTPS (Protocolo de Transferência de Hipertexto Seguro).
Sintaxe
HRESULT SetClientCertificate(
[in] BSTR ClientCertificate
);
Parâmetros
-
ClientCertificate [in]
-
Especifica o local, o repositório de certificados e a entidade de um certificado do cliente.
Valor retornado
O valor retornado é S_OK com êxito ou um valor de erro, caso contrário.
Comentários
A cadeia de caracteres especificada no parâmetro ClientCertificate consiste no local do certificado, no repositório de certificados e no nome da entidade delimitados por barras invertidas. Para obter mais informações sobre os componentes da cadeia de caracteres de certificado, consulte Certificados do Cliente.
O nome e o local do repositório de certificados são opcionais. No entanto, se você especificar um repositório de certificados, também deverá especificar o local desse repositório de certificados. O local padrão é CURRENT_USER e o repositório de certificados padrão é "MY". Uma entidade em branco indica que o primeiro certificado no repositório de certificados deve ser usado.
Chame SetClientCertificate para selecionar um certificado antes de chamar Enviar para enviar a solicitação.
Os Serviços HTTP do Microsoft Windows (WinHTTP) não fornecem certificados de cliente para servidores proxy que solicitam certificados para autenticação.
Observação
Para Windows XP e Windows 2000, consulte a seção Requisitos de tempo de execução da Página Inicial do WinHTTP.
Exemplos
O exemplo de script a seguir mostra como selecionar um certificado de cliente para enviar com uma solicitação. Um certificado com a entidade "Meu Certificado Middle-Tier" é escolhido no repositório de certificados "Pessoal" no registro em HKEY_LOCAL_MACHINE. Como este exemplo de código é específico do Microsoft JScript, que usa a barra invertida como um caractere de escape, duas barras invertidas adjacentes são necessárias para delimitar componentes da cadeia de caracteres de certificado.
// 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();
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows XP, Windows 2000 Professional com SP3 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Windows Server 2003, Windows 2000 Server com SP3 [somente aplicativos da área de trabalho] |
Redistribuível |
WinHTTP 5.0 e Internet Explorer 5.01 ou posterior no Windows XP e Windows 2000. |
IDL |
|
Biblioteca |
|
DLL |
|