Return-Path: X-Original-To: apmail-hc-httpclient-users-archive@www.apache.org Delivered-To: apmail-hc-httpclient-users-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 8C628DC47 for ; Wed, 22 May 2013 13:14:49 +0000 (UTC) Received: (qmail 9478 invoked by uid 500); 22 May 2013 13:14:49 -0000 Delivered-To: apmail-hc-httpclient-users-archive@hc.apache.org Received: (qmail 9334 invoked by uid 500); 22 May 2013 13:14:48 -0000 Mailing-List: contact httpclient-users-help@hc.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "HttpClient User Discussion" Delivered-To: mailing list httpclient-users@hc.apache.org Received: (qmail 9277 invoked by uid 99); 22 May 2013 13:14:46 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 May 2013 13:14:46 +0000 X-ASF-Spam-Status: No, hits=0.0 required=5.0 tests= X-Spam-Check-By: apache.org Received-SPF: error (athena.apache.org: local policy) Received: from [217.150.250.48] (HELO kalnich.nine.ch) (217.150.250.48) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 May 2013 13:14:41 +0000 Received: by kalnich.nine.ch (Postfix, from userid 1000) id 6CA01B80D7C; Wed, 22 May 2013 15:14:00 +0200 (CEST) Date: Wed, 22 May 2013 15:14:00 +0200 From: Oleg Kalnichevski To: HttpClient User Discussion Subject: Re: Target server digest authentication fails with Proxy Basic auth Message-ID: <20130522131400.GA11930@kalnich.nine.ch> Mail-Followup-To: HttpClient User Discussion References: <20130522080633.GD21691@kalnich.nine.ch> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.20 (2009-06-14) X-Virus-Checked: Checked by ClamAV on apache.org On Wed, May 22, 2013 at 02:38:53PM +0530, srihari na wrote: > Here I have attached logs for both scenarios with log level of > org.apache.http.level = FINEST > Target server with Digest Auth is working fine > Target server with Digest Auth with Proxy (Basic Auth) fails > > It is a known compatibility issue with Microsoft IIS server caused by what I believe is a bug in Microsoft's implementation of the DIGEST scheme. Please see this JIRA for detailed explanation. https://issues.apache.org/jira/browse/HTTPCLIENT-1071 Oleg > On Wed, May 22, 2013 at 1:36 PM, Oleg Kalnichevski wrote: > > > On Tue, May 21, 2013 at 02:58:45PM +0530, srihari na wrote: > > > Hi Folks, > > > > > > We are trying to do HTTPGet on a target server enabled with Digest > > > authentication. It works perfectly fine, however when proxy with basic > > > authentication is introduced target authentication is failing. We are > > using > > > IBM JDK, HTTP Client 4.2.5. Has anybody faced similar issues and knows a > > > fix to it? > > > > > > > Please post a complete wire log of the session. See HttpClient logging > > guide for instructions on wire / context logging. > > > > Oleg > > > > > > > > > Code: > > > HttpHost proxy = new HttpHost(proxyHost, 808); > > > HttpHost target = new HttpHost(targetHost, 80); > > > HttpGet req = new HttpGet("/default.asp"); > > > Credentials targetCredentials = new > > UsernamePasswordCredentials(targetUser, > > > targetpassword); > > > Credentials proxyCredentials = new UsernamePasswordCredentials(proxyUser, > > > proxyPassword); > > > DefaultHttpClient httpclient = null; > > > try { > > > final PoolingClientConnectionManager connectionManager = new > > > PoolingClientConnectionManager(); > > > httpclient = new DefaultHttpClient(connectionManager); > > > HttpContext localContext = new BasicHttpContext(); > > > req.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, > > > proxy); > > > System.out.println("executing request to " + target + " via > > " + > > > proxy); > > > httpclient.getCredentialsProvider().setCredentials(new > > > AuthScope(proxy), proxyCredentials); > > > httpclient.getCredentialsProvider().setCredentials(new > > > AuthScope(target), targetCredentials); > > > HttpResponse rsp = httpclient.execute(target, > > req,localContext); > > > AuthState proxyAuthState = (AuthState) > > > localContext.getAttribute(ClientContext.PROXY_AUTH_STATE); > > > System.out.println("Proxy auth state: " + > > > proxyAuthState.getState()); > > > System.out.println("Proxy auth scheme: " + > > > proxyAuthState.getAuthScheme()); > > > System.out.println("Proxy auth credentials: " + > > > proxyAuthState.getCredentials()); > > > AuthState targetAuthState = (AuthState) > > > localContext.getAttribute(ClientContext.TARGET_AUTH_STATE); > > > System.out.println("Target auth state: " + > > > targetAuthState.getState()); > > > System.out.println("Target auth scheme: " + > > > targetAuthState.getAuthScheme()); > > > System.out.println("Target auth credentials: " + > > > targetAuthState.getCredentials()); > > > > > > HttpEntity entity = rsp.getEntity(); > > > > > > if (entity != null) { > > > System.out.println(EntityUtils.toString(entity)); > > > } > > > > > > }catch (Exception e) { > > > } finally { > > > httpclient.getConnectionManager().shutdown(); > > > } > > > > > > } > > > > > > -- > > > Regards, > > > Srihari NA > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org > > For additional commands, e-mail: httpclient-users-help@hc.apache.org > > > > > > > -- > Regards, > Srihari NA > > --------------------------------------------------------------------- > To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org > For additional commands, e-mail: httpclient-users-help@hc.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org For additional commands, e-mail: httpclient-users-help@hc.apache.org