[
https://issues.apache.org/jira/browse/HTTPCLIENT-2171?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17401181#comment-17401181
]
Oleg Kalnichevski commented on HTTPCLIENT-2171:
-----------------------------------------------
[~neng1998] I see no evidence supporting this assertion. HttpClient 5 of all
versions correctly encodes BASIC credentials with a '\' character in the user
name. See the unit test below.
{code:java}
@Test
public void testStuff() throws Exception {
final HttpHost host = new HttpHost("somehost", 80);
final AuthScope authScope = new AuthScope(host, "some realm", null);
final UsernamePasswordCredentials creds = new
UsernamePasswordCredentials("blah/blah", "blah".toCharArray());
final BasicCredentialsProvider credentialsProvider = new
BasicCredentialsProvider();
credentialsProvider.setCredentials(authScope, creds);
final BasicScheme authscheme = new BasicScheme(StandardCharsets.ISO_8859_1);
Assert.assertTrue(authscheme.isResponseReady(host, credentialsProvider,
null));
final HttpRequest request = new BasicHttpRequest("GET", "/");
Assert.assertEquals(
"Basic " + new
String(Base64.encodeBase64("blah/blah:blah".getBytes(StandardCharsets.ISO_8859_1)),
StandardCharsets.US_ASCII),
authscheme.generateAuthResponse(host, request, null));
}
{code}
Please provide a reproducer for this issue. Otherwise I will have no choice but
to close this ticket as invalid.
Oleg
> Basic Authentication Failed With UserId containing "\"
> ------------------------------------------------------
>
> Key: HTTPCLIENT-2171
> URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2171
> Project: HttpComponents HttpClient
> Issue Type: Bug
> Components: HttpClient (classic)
> Affects Versions: 5.1
> Reporter: neng xu
> Priority: Major
>
> When upgrade HttpClient from 4.5.x version to 5.1, a problem happened when
> using UserId =ADPTestSandbox\Phoenix.API.
> All other userIds which do not have "\" work with HttpClient5.1.
> UserId which has "\" works with HttpClient 3.x and 4.5.x. but not HttpClient
> 5.1
> Test code:
> ..........
> BasicCredentialsProvider provider = new BasicCredentialsProvider();
> UsernamePasswordCredentials credentials = new
> UsernamePasswordCredentials(usrId,password.toCharArray());
> provider.setCredentials(new AuthScope(null, -1), credentials);
> CloseableHttpClient httpclient =
> HttpClients.custom().setDefaultCredentialsProvider(provider).build();
> .............
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]