You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Michael Osipov (JIRA)" <ji...@apache.org> on 2015/01/14 22:14:34 UTC

[jira] [Commented] (HTTPCLIENT-1598) Native Windows Negotiate/NTLM via JNA + 407 Proxy Authentication Required

    [ https://issues.apache.org/jira/browse/HTTPCLIENT-1598?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14277689#comment-14277689 ] 

Michael Osipov commented on HTTPCLIENT-1598:
--------------------------------------------

Ciao Giacomo,

I haven't yet looked at the files but the entire SSPI/JNA is experimental and is incomplete. I have already done a code analysis and promised to work on that mid-term but working right now at 150 % :-(

Meanwhile, can you reproduce the issue with {{curl}}? The available binary for Windows uses the same API, namely SSPI and I have contributed some effort to make that run smoothly.

I'd like to know whether this is caused by the problematic code I have found in the SSPI block or your setup.

Invoke curl with:

{noformat}
> curl --verbose -U : --proxy-negotiate -x http://<host>:<port> <url>
{noformat}

> Native Windows Negotiate/NTLM via JNA + 407 Proxy Authentication Required
> -------------------------------------------------------------------------
>
>                 Key: HTTPCLIENT-1598
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1598
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>          Components: HttpAuth
>    Affects Versions: 4.4 Beta1
>         Environment: Windows 8
>            Reporter: Giacomo Boccardo
>              Labels: 407, jna, native, ntlm
>         Attachments: log.txt, sample.java
>
>
> I'm trying to use the native Windows NTLM negotiation as described at http://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk/httpclient-win/src/examples/org/apache/http/examples/client/win/ClientWinAuth.java
> but I need to explicitly set a proxy.
> {code:java}
> if (!WinHttpClients.isWinAuthAvailable()) {
> 	System.out.println("Integrated Win auth is not supported!!!");
> }
> HttpClientBuilder httpClientBuilder = WinHttpClients.custom();
> HttpHost httpProxy = new HttpHost("proxyserver.example.com", 3128);
> httpClientBuilder.setProxy(httpProxy);
> CloseableHttpClient httpclient = httpClientBuilder.build();
> try {
> 	HttpGet httpget = new HttpGet("http://www.google.it");
> 	System.out.println("Executing request " + httpget.getRequestLine());
> 	CloseableHttpResponse response = httpclient.execute(httpget);
> 	try {
> 		System.out.println("----------------------------------------");
> 		System.out.println(response.getStatusLine());
> 		EntityUtils.consume(response.getEntity());
> 	} finally {
> 		response.close();
> 	}
> } finally {
> 	httpclient.close();
> }
> {code}
> The response contains the following line
> {{HTTP/1.0 407 Proxy Authentication Required}}
> In the attachments both the source code above and the complete log of the negotiation (I obviously changed the real proxy).
> What's wrong?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org