Added immutable CredentialsProvider implementations and a CredentialsProvider builder; changed test cases and examples to use immutable CredentialsProvider where possible
This commit is contained in:
parent
17ebfc529e
commit
7b47b28d46
|
@ -48,8 +48,8 @@ import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
|||
import org.apache.hc.client5.http.config.RequestConfig;
|
||||
import org.apache.hc.client5.http.impl.DefaultAuthenticationStrategy;
|
||||
import org.apache.hc.client5.http.impl.async.CloseableHttpAsyncClient;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicScheme;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.client5.http.protocol.HttpClientContext;
|
||||
import org.apache.hc.client5.testing.BasicTestAuthenticator;
|
||||
import org.apache.hc.client5.testing.auth.Authenticator;
|
||||
|
@ -298,11 +298,10 @@ public abstract class AbstractHttpAsyncClientAuthentication<T extends CloseableH
|
|||
});
|
||||
final HttpHost target = start();
|
||||
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(new AuthScope(null, null, -1, null ,null),
|
||||
new UsernamePasswordCredentials("test", "test".toCharArray()));
|
||||
final HttpClientContext context = HttpClientContext.create();
|
||||
context.setCredentialsProvider(credsProvider);
|
||||
context.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(target, "test", "test".toCharArray())
|
||||
.build());
|
||||
|
||||
final Future<SimpleHttpResponse> future1 = httpclient.execute(SimpleRequestBuilder.get()
|
||||
.setHttpHost(target)
|
||||
|
|
|
@ -51,9 +51,9 @@ import org.apache.hc.client5.http.classic.methods.HttpPut;
|
|||
import org.apache.hc.client5.http.config.RequestConfig;
|
||||
import org.apache.hc.client5.http.impl.DefaultAuthenticationStrategy;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicAuthCache;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicScheme;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicSchemeFactory;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse;
|
||||
import org.apache.hc.client5.http.protocol.HttpClientContext;
|
||||
import org.apache.hc.client5.testing.BasicTestAuthenticator;
|
||||
|
@ -313,10 +313,9 @@ public class TestClientAuthentication extends LocalServerTestBase {
|
|||
final HttpHost target = start();
|
||||
|
||||
final HttpClientContext context = HttpClientContext.create();
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(new AuthScope(null, null, -1, null ,null),
|
||||
new UsernamePasswordCredentials("test", "test".toCharArray()));
|
||||
context.setCredentialsProvider(credsProvider);
|
||||
context.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(target, "test", "test".toCharArray())
|
||||
.build());
|
||||
|
||||
final HttpGet httpget = new HttpGet("/");
|
||||
|
||||
|
@ -365,11 +364,10 @@ public class TestClientAuthentication extends LocalServerTestBase {
|
|||
});
|
||||
|
||||
final TestTargetAuthenticationStrategy authStrategy = new TestTargetAuthenticationStrategy();
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(new AuthScope(target, "this realm", null),
|
||||
new UsernamePasswordCredentials("test", "this".toCharArray()));
|
||||
credsProvider.setCredentials(new AuthScope(target, "that realm", null),
|
||||
new UsernamePasswordCredentials("test", "that".toCharArray()));
|
||||
final CredentialsProvider credsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(target, "this realm", null), "test", "this".toCharArray())
|
||||
.add(new AuthScope(target, "that realm", null), "test", "that".toCharArray())
|
||||
.build();
|
||||
|
||||
this.clientBuilder.setTargetAuthenticationStrategy(authStrategy);
|
||||
this.httpclient = this.clientBuilder.build();
|
||||
|
@ -519,10 +517,9 @@ public class TestClientAuthentication extends LocalServerTestBase {
|
|||
final AuthCache authCache = new BasicAuthCache();
|
||||
authCache.put(target, new BasicScheme());
|
||||
context.setAuthCache(authCache);
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(new AuthScope(null, null, -1, null ,null),
|
||||
new UsernamePasswordCredentials("test", "stuff".toCharArray()));
|
||||
context.setCredentialsProvider(credsProvider);
|
||||
context.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(target, "test", "stuff".toCharArray())
|
||||
.build());
|
||||
|
||||
final HttpGet httpget = new HttpGet("/");
|
||||
final ClassicHttpResponse response1 = this.httpclient.execute(target, httpget, context);
|
||||
|
@ -587,9 +584,9 @@ public class TestClientAuthentication extends LocalServerTestBase {
|
|||
});
|
||||
|
||||
final HttpClientContext context = HttpClientContext.create();
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(new AuthScope(null, null, -1, null ,null),
|
||||
new UsernamePasswordCredentials("test", "test".toCharArray()));
|
||||
final CredentialsProvider credsProvider = CredentialsProviderBuilder.create()
|
||||
.add(target, "test", "test".toCharArray())
|
||||
.build();
|
||||
context.setCredentialsProvider(credsProvider);
|
||||
|
||||
for (int i = 0; i < 2; i++) {
|
||||
|
|
|
@ -28,11 +28,11 @@ package org.apache.hc.client5.testing.sync;
|
|||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.hc.client5.http.auth.StandardAuthScheme;
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.client5.http.auth.NTCredentials;
|
||||
import org.apache.hc.client5.http.auth.StandardAuthScheme;
|
||||
import org.apache.hc.client5.http.classic.methods.HttpGet;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.client5.http.impl.classic.HttpClients;
|
||||
import org.apache.hc.client5.http.protocol.HttpClientContext;
|
||||
import org.apache.hc.core5.http.ClassicHttpRequest;
|
||||
|
@ -71,9 +71,9 @@ public class TestClientAuthenticationFakeNTLM extends LocalServerTestBase {
|
|||
|
||||
final HttpHost target = start();
|
||||
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(new AuthScope(null, null, -1, null ,null),
|
||||
new NTCredentials("test", "test".toCharArray(), null, null));
|
||||
final CredentialsProvider credsProvider = CredentialsProviderBuilder.create()
|
||||
.add(target, new NTCredentials("test", "test".toCharArray(), null, null))
|
||||
.build();
|
||||
|
||||
this.httpclient = HttpClients.custom()
|
||||
.setDefaultCredentialsProvider(credsProvider)
|
||||
|
@ -118,9 +118,9 @@ public class TestClientAuthenticationFakeNTLM extends LocalServerTestBase {
|
|||
"AGUAcgB2AGUAcgA="));
|
||||
final HttpHost target = start();
|
||||
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(new AuthScope(null, null, -1, null ,null),
|
||||
new NTCredentials("test", "test".toCharArray(), null, null));
|
||||
final CredentialsProvider credsProvider = CredentialsProviderBuilder.create()
|
||||
.add(target, new NTCredentials("test", "test".toCharArray(), null, null))
|
||||
.build();
|
||||
|
||||
this.httpclient = HttpClients.custom()
|
||||
.setDefaultCredentialsProvider(credsProvider)
|
||||
|
@ -142,9 +142,9 @@ public class TestClientAuthenticationFakeNTLM extends LocalServerTestBase {
|
|||
"AGUAcgB2AGUAcgACAAwARABvAG0AYQBpAG4AAQAMAFMAZQByAHYAZQByAAAAAAA="));
|
||||
final HttpHost target = start();
|
||||
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(new AuthScope(null, null, -1, null ,null),
|
||||
new NTCredentials("test", "test".toCharArray(), null, null));
|
||||
final CredentialsProvider credsProvider = CredentialsProviderBuilder.create()
|
||||
.add(target, new NTCredentials("test", "test".toCharArray(), null, null))
|
||||
.build();
|
||||
|
||||
this.httpclient = HttpClients.custom()
|
||||
.setDefaultCredentialsProvider(credsProvider)
|
||||
|
@ -187,10 +187,9 @@ public class TestClientAuthenticationFakeNTLM extends LocalServerTestBase {
|
|||
final HttpHost target = start();
|
||||
|
||||
final HttpClientContext context = HttpClientContext.create();
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(new AuthScope(null, null, -1, null ,null),
|
||||
new NTCredentials("test", "test".toCharArray(), null, null));
|
||||
context.setCredentialsProvider(credsProvider);
|
||||
context.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(target, new NTCredentials("test", "test".toCharArray(), null, null))
|
||||
.build());
|
||||
final HttpGet httpget = new HttpGet("/");
|
||||
|
||||
final ClassicHttpResponse response = this.httpclient.execute(target, httpget, context);
|
||||
|
@ -208,10 +207,9 @@ public class TestClientAuthenticationFakeNTLM extends LocalServerTestBase {
|
|||
final HttpHost target = start();
|
||||
|
||||
final HttpClientContext context = HttpClientContext.create();
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(new AuthScope(null, null, -1, null ,null),
|
||||
new NTCredentials("test", "test".toCharArray(), null, null));
|
||||
context.setCredentialsProvider(credsProvider);
|
||||
context.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(target, new NTCredentials("test", "test".toCharArray(), null, null))
|
||||
.build());
|
||||
final HttpGet httpget = new HttpGet("/");
|
||||
|
||||
final ClassicHttpResponse response = this.httpclient.execute(target, httpget, context);
|
||||
|
|
|
@ -34,10 +34,11 @@ import org.apache.hc.client5.http.auth.AuthScheme;
|
|||
import org.apache.hc.client5.http.auth.AuthSchemeFactory;
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.Credentials;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.client5.http.auth.KerberosConfig;
|
||||
import org.apache.hc.client5.http.auth.StandardAuthScheme;
|
||||
import org.apache.hc.client5.http.classic.methods.HttpGet;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.client5.http.impl.auth.SPNegoScheme;
|
||||
import org.apache.hc.client5.http.impl.classic.HttpClients;
|
||||
import org.apache.hc.core5.http.ClassicHttpRequest;
|
||||
|
@ -153,9 +154,9 @@ public class TestSPNegoScheme extends LocalServerTestBase {
|
|||
final HttpHost target = start();
|
||||
|
||||
final AuthSchemeFactory nsf = new NegotiateSchemeFactoryWithMockGssManager();
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials use_jaas_creds = new UseJaasCredentials();
|
||||
credentialsProvider.setCredentials(new AuthScope(null, null, -1, null, null), use_jaas_creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(null, null, -1, null, null), new UseJaasCredentials())
|
||||
.build();
|
||||
|
||||
final Registry<AuthSchemeFactory> authSchemeRegistry = RegistryBuilder.<AuthSchemeFactory>create()
|
||||
.register(StandardAuthScheme.SPNEGO, nsf)
|
||||
|
@ -184,9 +185,9 @@ public class TestSPNegoScheme extends LocalServerTestBase {
|
|||
|
||||
final AuthSchemeFactory nsf = new NegotiateSchemeFactoryWithMockGssManager();
|
||||
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials use_jaas_creds = new UseJaasCredentials();
|
||||
credentialsProvider.setCredentials(new AuthScope(null, null, -1, null, null), use_jaas_creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(null, null, -1, null, null), new UseJaasCredentials())
|
||||
.build();
|
||||
|
||||
final Registry<AuthSchemeFactory> authSchemeRegistry = RegistryBuilder.<AuthSchemeFactory>create()
|
||||
.register(StandardAuthScheme.SPNEGO, nsf)
|
||||
|
|
|
@ -26,7 +26,6 @@
|
|||
*/
|
||||
package org.apache.hc.client5.http.impl.auth;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
|
@ -63,43 +62,9 @@ public class BasicCredentialsProvider implements CredentialsStore {
|
|||
credMap.put(authScope, credentials);
|
||||
}
|
||||
|
||||
/**
|
||||
* Find matching {@link Credentials credentials} for the given authentication scope.
|
||||
*
|
||||
* @param map the credentials hash map
|
||||
* @param authScope the {@link AuthScope authentication scope}
|
||||
* @return the credentials
|
||||
*
|
||||
*/
|
||||
private static Credentials matchCredentials(
|
||||
final Map<AuthScope, Credentials> map,
|
||||
final AuthScope authScope) {
|
||||
// see if we get a direct hit
|
||||
Credentials creds = map.get(authScope);
|
||||
if (creds == null) {
|
||||
// Nope.
|
||||
// Do a full scan
|
||||
int bestMatchFactor = -1;
|
||||
AuthScope bestMatch = null;
|
||||
for (final AuthScope current: map.keySet()) {
|
||||
final int factor = authScope.match(current);
|
||||
if (factor > bestMatchFactor) {
|
||||
bestMatchFactor = factor;
|
||||
bestMatch = current;
|
||||
}
|
||||
}
|
||||
if (bestMatch != null) {
|
||||
creds = map.get(bestMatch);
|
||||
}
|
||||
}
|
||||
return creds;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Credentials getCredentials(final AuthScope authScope,
|
||||
final HttpContext httpContext) {
|
||||
Args.notNull(authScope, "Authentication scope");
|
||||
return matchCredentials(this.credMap, authScope);
|
||||
public Credentials getCredentials(final AuthScope authScope, final HttpContext context) {
|
||||
return CredentialsMatcher.matchCredentials(this.credMap, authScope);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -109,7 +74,7 @@ public class BasicCredentialsProvider implements CredentialsStore {
|
|||
|
||||
@Override
|
||||
public String toString() {
|
||||
return credMap.toString();
|
||||
return credMap.keySet().toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,66 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
package org.apache.hc.client5.http.impl.auth;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.Credentials;
|
||||
|
||||
final class CredentialsMatcher {
|
||||
|
||||
/**
|
||||
* Find matching {@link Credentials credentials} for the given authentication scope.
|
||||
*
|
||||
* @param map the credentials hash map
|
||||
* @param authScope the {@link AuthScope authentication scope}
|
||||
* @return the credentials
|
||||
*
|
||||
*/
|
||||
static Credentials matchCredentials(final Map<AuthScope, Credentials> map, final AuthScope authScope) {
|
||||
// see if we get a direct hit
|
||||
Credentials creds = map.get(authScope);
|
||||
if (creds == null) {
|
||||
// Nope.
|
||||
// Do a full scan
|
||||
int bestMatchFactor = -1;
|
||||
AuthScope bestMatch = null;
|
||||
for (final AuthScope current: map.keySet()) {
|
||||
final int factor = authScope.match(current);
|
||||
if (factor > bestMatchFactor) {
|
||||
bestMatchFactor = factor;
|
||||
bestMatch = current;
|
||||
}
|
||||
}
|
||||
if (bestMatch != null) {
|
||||
creds = map.get(bestMatch);
|
||||
}
|
||||
}
|
||||
return creds;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,104 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
package org.apache.hc.client5.http.impl.auth;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.Credentials;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.core5.http.HttpHost;
|
||||
import org.apache.hc.core5.util.Args;
|
||||
|
||||
/**
|
||||
* {@link CredentialsProvider} builder.
|
||||
*
|
||||
* @since 5.2
|
||||
*/
|
||||
public final class CredentialsProviderBuilder {
|
||||
|
||||
private final Map<AuthScope, Credentials> credMap;
|
||||
|
||||
public static CredentialsProviderBuilder create() {
|
||||
return new CredentialsProviderBuilder();
|
||||
}
|
||||
|
||||
public CredentialsProviderBuilder() {
|
||||
super();
|
||||
this.credMap = new HashMap<>();
|
||||
}
|
||||
|
||||
public CredentialsProviderBuilder add(final AuthScope authScope, final Credentials credentials) {
|
||||
Args.notNull(authScope, "Host");
|
||||
credMap.put(authScope, credentials);
|
||||
return this;
|
||||
}
|
||||
|
||||
public CredentialsProviderBuilder add(final AuthScope authScope, final String username, final char[] password) {
|
||||
Args.notNull(authScope, "Host");
|
||||
credMap.put(authScope, new UsernamePasswordCredentials(username, password));
|
||||
return this;
|
||||
}
|
||||
|
||||
public CredentialsProviderBuilder add(final HttpHost httpHost, final Credentials credentials) {
|
||||
Args.notNull(httpHost, "Host");
|
||||
credMap.put(new AuthScope(httpHost), credentials);
|
||||
return this;
|
||||
}
|
||||
|
||||
public CredentialsProviderBuilder add(final HttpHost httpHost, final String username, final char[] password) {
|
||||
Args.notNull(httpHost, "Host");
|
||||
credMap.put(new AuthScope(httpHost), new UsernamePasswordCredentials(username, password));
|
||||
return this;
|
||||
}
|
||||
|
||||
public CredentialsProvider build() {
|
||||
if (credMap.size() == 0) {
|
||||
return new BasicCredentialsProvider();
|
||||
} else if (credMap.size() == 1) {
|
||||
final Map.Entry<AuthScope, Credentials> entry = credMap.entrySet().iterator().next();
|
||||
return new SingleCredentialsProvider(entry.getKey(), entry.getValue());
|
||||
} else {
|
||||
return new FixedCredentialsProvider(credMap);
|
||||
}
|
||||
}
|
||||
|
||||
static class Entry {
|
||||
|
||||
final AuthScope authScope;
|
||||
final Credentials credentials;
|
||||
|
||||
Entry(final AuthScope authScope, final Credentials credentials) {
|
||||
this.authScope = authScope;
|
||||
this.credentials = credentials;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,57 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
package org.apache.hc.client5.http.impl.auth;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.Credentials;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.core5.http.protocol.HttpContext;
|
||||
|
||||
final class FixedCredentialsProvider implements CredentialsProvider {
|
||||
|
||||
private final Map<AuthScope, Credentials> credMap;
|
||||
|
||||
public FixedCredentialsProvider(final Map<AuthScope, Credentials> credMap) {
|
||||
super();
|
||||
this.credMap = Collections.unmodifiableMap(new HashMap<>(credMap));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Credentials getCredentials(final AuthScope authScope, final HttpContext context) {
|
||||
return CredentialsMatcher.matchCredentials(this.credMap, authScope);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return credMap.keySet().toString();
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,61 @@
|
|||
/*
|
||||
* ====================================================================
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
package org.apache.hc.client5.http.impl.auth;
|
||||
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.Credentials;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.core5.http.protocol.HttpContext;
|
||||
import org.apache.hc.core5.util.Args;
|
||||
|
||||
final class SingleCredentialsProvider implements CredentialsProvider {
|
||||
|
||||
private final AuthScope authScope;
|
||||
private final Credentials credentials;
|
||||
|
||||
public SingleCredentialsProvider(final AuthScope authScope, final Credentials credentials) {
|
||||
super();
|
||||
this.authScope = Args.notNull(authScope, "Auth scope");
|
||||
this.credentials = credentials;
|
||||
}
|
||||
|
||||
public SingleCredentialsProvider(final AuthScope authScope, final String username, final char[] password) {
|
||||
this(authScope, new UsernamePasswordCredentials(username, password));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Credentials getCredentials(final AuthScope authScope, final HttpContext context) {
|
||||
return this.authScope.match(authScope) >= 0 ? credentials : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return authScope.toString();
|
||||
}
|
||||
|
||||
}
|
|
@ -33,12 +33,11 @@ import org.apache.hc.client5.http.async.methods.SimpleHttpResponse;
|
|||
import org.apache.hc.client5.http.async.methods.SimpleRequestBuilder;
|
||||
import org.apache.hc.client5.http.async.methods.SimpleRequestProducer;
|
||||
import org.apache.hc.client5.http.async.methods.SimpleResponseConsumer;
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.client5.http.impl.async.CloseableHttpAsyncClient;
|
||||
import org.apache.hc.client5.http.impl.async.HttpAsyncClients;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.core5.concurrent.FutureCallback;
|
||||
import org.apache.hc.core5.http.HttpHost;
|
||||
import org.apache.hc.core5.http.message.StatusLine;
|
||||
import org.apache.hc.core5.io.CloseMode;
|
||||
|
||||
|
@ -49,12 +48,10 @@ import org.apache.hc.core5.io.CloseMode;
|
|||
public class AsyncClientAuthentication {
|
||||
|
||||
public static void main(final String[] args) throws Exception {
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(
|
||||
new AuthScope("httpbin.org", 80),
|
||||
new UsernamePasswordCredentials("user", "passwd".toCharArray()));
|
||||
final CloseableHttpAsyncClient httpclient = HttpAsyncClients.custom()
|
||||
.setDefaultCredentialsProvider(credsProvider)
|
||||
.setDefaultCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(new HttpHost("httpbin.org", 80), "user", "passwd".toCharArray())
|
||||
.build())
|
||||
.build();
|
||||
httpclient.start();
|
||||
|
||||
|
|
|
@ -26,13 +26,12 @@
|
|||
*/
|
||||
package org.apache.hc.client5.http.examples;
|
||||
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.client5.http.classic.methods.HttpGet;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
|
||||
import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse;
|
||||
import org.apache.hc.client5.http.impl.classic.HttpClients;
|
||||
import org.apache.hc.core5.http.HttpHost;
|
||||
import org.apache.hc.core5.http.io.entity.EntityUtils;
|
||||
|
||||
/**
|
||||
|
@ -42,12 +41,10 @@ import org.apache.hc.core5.http.io.entity.EntityUtils;
|
|||
public class ClientAuthentication {
|
||||
|
||||
public static void main(final String[] args) throws Exception {
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(
|
||||
new AuthScope("httpbin.org", 80),
|
||||
new UsernamePasswordCredentials("user", "passwd".toCharArray()));
|
||||
try (final CloseableHttpClient httpclient = HttpClients.custom()
|
||||
.setDefaultCredentialsProvider(credsProvider)
|
||||
.setDefaultCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(new HttpHost("httpbin.org", 80), "user", "passwd".toCharArray())
|
||||
.build())
|
||||
.build()) {
|
||||
final HttpGet httpget = new HttpGet("http://httpbin.org/basic-auth/user/passwd");
|
||||
|
||||
|
|
|
@ -47,7 +47,7 @@ import org.apache.hc.client5.http.config.RequestConfig;
|
|||
import org.apache.hc.client5.http.cookie.BasicCookieStore;
|
||||
import org.apache.hc.client5.http.cookie.CookieStore;
|
||||
import org.apache.hc.client5.http.cookie.StandardCookieSpec;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
|
||||
import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse;
|
||||
import org.apache.hc.client5.http.impl.classic.HttpClients;
|
||||
|
@ -194,7 +194,8 @@ public class ClientConfiguration {
|
|||
// Use custom cookie store if necessary.
|
||||
final CookieStore cookieStore = new BasicCookieStore();
|
||||
// Use custom credentials provider if necessary.
|
||||
final CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.build();
|
||||
// Create global request configuration
|
||||
final RequestConfig defaultRequestConfig = RequestConfig.custom()
|
||||
.setCookieSpec(StandardCookieSpec.STRICT)
|
||||
|
|
|
@ -28,10 +28,9 @@ package org.apache.hc.client5.http.examples;
|
|||
|
||||
import org.apache.hc.client5.http.auth.AuthExchange;
|
||||
import org.apache.hc.client5.http.auth.AuthScheme;
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.client5.http.classic.methods.HttpGet;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.client5.http.impl.auth.DigestScheme;
|
||||
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
|
||||
import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse;
|
||||
|
@ -54,11 +53,9 @@ public class ClientPreemptiveDigestAuthentication {
|
|||
final HttpHost target = new HttpHost("http", "httpbin.org", 80);
|
||||
|
||||
final HttpClientContext localContext = HttpClientContext.create();
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
credentialsProvider.setCredentials(
|
||||
new AuthScope(target),
|
||||
new UsernamePasswordCredentials("user", "passwd".toCharArray()));
|
||||
localContext.setCredentialsProvider(credentialsProvider);
|
||||
localContext.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(target, new UsernamePasswordCredentials("user", "passwd".toCharArray()))
|
||||
.build());
|
||||
|
||||
final HttpGet httpget = new HttpGet("http://httpbin.org/digest-auth/auth/user/passwd");
|
||||
|
||||
|
|
|
@ -27,10 +27,10 @@
|
|||
package org.apache.hc.client5.http.examples;
|
||||
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.client5.http.classic.methods.HttpGet;
|
||||
import org.apache.hc.client5.http.config.RequestConfig;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
|
||||
import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse;
|
||||
import org.apache.hc.client5.http.impl.classic.HttpClients;
|
||||
|
@ -44,18 +44,16 @@ import org.apache.hc.core5.http.io.entity.EntityUtils;
|
|||
public class ClientProxyAuthentication {
|
||||
|
||||
public static void main(final String[] args) throws Exception {
|
||||
final BasicCredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||
credsProvider.setCredentials(
|
||||
new AuthScope("localhost", 8888),
|
||||
new UsernamePasswordCredentials("squid", "squid".toCharArray()));
|
||||
credsProvider.setCredentials(
|
||||
new AuthScope("httpbin.org", 80),
|
||||
new UsernamePasswordCredentials("user", "passwd".toCharArray()));
|
||||
final CredentialsProvider credsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope("localhost", 8888), "squid", "squid".toCharArray())
|
||||
.add(new AuthScope("httpbin.org", 80), "user", "passwd".toCharArray())
|
||||
.build();
|
||||
final HttpHost target = new HttpHost("http", "httpbin.org", 80);
|
||||
final HttpHost proxy = new HttpHost("localhost", 8888);
|
||||
try (final CloseableHttpClient httpclient = HttpClients.custom()
|
||||
.setProxy(proxy)
|
||||
.setDefaultCredentialsProvider(credsProvider).build()) {
|
||||
.setDefaultCredentialsProvider(credsProvider)
|
||||
.build()) {
|
||||
|
||||
final RequestConfig config = RequestConfig.custom()
|
||||
.build();
|
||||
|
|
|
@ -38,11 +38,10 @@ import org.apache.hc.client5.http.auth.AuthSchemeFactory;
|
|||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.ChallengeType;
|
||||
import org.apache.hc.client5.http.auth.StandardAuthScheme;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.client5.http.config.RequestConfig;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicScheme;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicSchemeFactory;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.client5.http.impl.auth.DigestScheme;
|
||||
import org.apache.hc.client5.http.impl.auth.DigestSchemeFactory;
|
||||
import org.apache.hc.client5.http.protocol.HttpClientContext;
|
||||
|
@ -103,11 +102,9 @@ public class TestAuthenticationStrategy {
|
|||
.register(StandardAuthScheme.BASIC, BasicSchemeFactory.INSTANCE)
|
||||
.register(StandardAuthScheme.DIGEST, DigestSchemeFactory.INSTANCE).build();
|
||||
context.setAuthSchemeRegistry(authSchemeRegistry);
|
||||
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
credentialsProvider.setCredentials(new AuthScope("somehost", 80),
|
||||
new UsernamePasswordCredentials("user", "pwd".toCharArray()));
|
||||
context.setCredentialsProvider(credentialsProvider);
|
||||
context.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope("somehost", 80), "user", "pwd".toCharArray())
|
||||
.build());
|
||||
|
||||
final List<AuthScheme> authSchemes = authStrategy.select(ChallengeType.TARGET, challenges, context);
|
||||
Assert.assertNotNull(authSchemes);
|
||||
|
@ -139,10 +136,9 @@ public class TestAuthenticationStrategy {
|
|||
context.setAuthSchemeRegistry(authSchemeRegistry);
|
||||
context.setRequestConfig(config);
|
||||
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
credentialsProvider.setCredentials(new AuthScope("somehost", 80),
|
||||
new UsernamePasswordCredentials("user", "pwd".toCharArray()));
|
||||
context.setCredentialsProvider(credentialsProvider);
|
||||
context.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope("somehost", 80), "user", "pwd".toCharArray())
|
||||
.build());
|
||||
|
||||
final List<AuthScheme> authSchemes = authStrategy.select(ChallengeType.TARGET, challenges, context);
|
||||
Assert.assertNotNull(authSchemes);
|
||||
|
|
|
@ -39,6 +39,7 @@ import org.apache.hc.client5.http.auth.AuthScheme;
|
|||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.AuthenticationException;
|
||||
import org.apache.hc.client5.http.auth.ChallengeType;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.client5.http.auth.StandardAuthScheme;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.core5.http.HttpHost;
|
||||
|
@ -81,10 +82,9 @@ public class TestBasicScheme {
|
|||
authscheme.processChallenge(authChallenge, null);
|
||||
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "test", null);
|
||||
final UsernamePasswordCredentials creds = new UsernamePasswordCredentials("testuser", "testpass".toCharArray());
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "test", null), "testuser", "testpass".toCharArray())
|
||||
.build();
|
||||
|
||||
final HttpRequest request = new BasicHttpRequest("GET", "/");
|
||||
Assert.assertTrue(authscheme.isResponseReady(host, credentialsProvider, null));
|
||||
|
@ -142,10 +142,9 @@ public class TestBasicScheme {
|
|||
authscheme.processChallenge(authChallenge, null);
|
||||
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "test", null);
|
||||
final UsernamePasswordCredentials creds = new UsernamePasswordCredentials("test", TEST_UTF8_PASSWORD.toCharArray());
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "test", null), "test", TEST_UTF8_PASSWORD.toCharArray())
|
||||
.build();
|
||||
|
||||
final HttpRequest request = new BasicHttpRequest("GET", "/");
|
||||
Assert.assertTrue(authscheme.isResponseReady(host, credentialsProvider, null));
|
||||
|
|
|
@ -26,18 +26,19 @@
|
|||
*/
|
||||
package org.apache.hc.client5.http.impl.auth;
|
||||
|
||||
import org.apache.hc.client5.http.auth.StandardAuthScheme;
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.Credentials;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.client5.http.auth.StandardAuthScheme;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.core5.http.HttpHost;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
|
||||
/**
|
||||
* Simple tests for {@link BasicCredentialsProvider}.
|
||||
* Tests for {@link org.apache.hc.client5.http.auth.CredentialsProvider} implementations.
|
||||
*/
|
||||
public class TestBasicCredentialsProvider {
|
||||
public class TestCredentialsProviders {
|
||||
|
||||
public final static Credentials CREDS1 =
|
||||
new UsernamePasswordCredentials("user1", "pass1".toCharArray());
|
||||
|
@ -155,4 +156,21 @@ public class TestBasicCredentialsProvider {
|
|||
Assert.assertEquals(expected, got);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSingleCredentialsProvider() {
|
||||
final Credentials creds1 = new UsernamePasswordCredentials("name1", "pass1".toCharArray());
|
||||
final CredentialsProvider credentialsProvider1 = new SingleCredentialsProvider(new AuthScope(null, null, -1, null, null), creds1);
|
||||
|
||||
Assert.assertEquals(creds1, credentialsProvider1.getCredentials(new AuthScope(null, null, -1, null, null), null));
|
||||
Assert.assertEquals(creds1, credentialsProvider1.getCredentials(new AuthScope("http", "someotherhost", 80, "somerealm", StandardAuthScheme.BASIC), null));
|
||||
|
||||
final CredentialsProvider credentialsProvider2 = new SingleCredentialsProvider(new AuthScope(null, "somehost", 80, null, null), creds1);
|
||||
|
||||
Assert.assertEquals(creds1, credentialsProvider2.getCredentials(new AuthScope(null, null, -1, null, null), null));
|
||||
Assert.assertEquals(creds1, credentialsProvider2.getCredentials(new AuthScope(null, "somehost", 80, null, null), null));
|
||||
Assert.assertEquals(creds1, credentialsProvider2.getCredentials(new AuthScope("http", "somehost", 80, "somerealm", StandardAuthScheme.BASIC), null));
|
||||
Assert.assertNull(credentialsProvider2.getCredentials(new AuthScope(null, "someotherhost", 80, null, null), null));
|
||||
Assert.assertNull(credentialsProvider2.getCredentials(new AuthScope(null, "somehost", 8080, null, null), null));
|
||||
}
|
||||
|
||||
}
|
|
@ -42,10 +42,9 @@ import org.apache.hc.client5.http.auth.AuthScheme;
|
|||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.AuthenticationException;
|
||||
import org.apache.hc.client5.http.auth.ChallengeType;
|
||||
import org.apache.hc.client5.http.auth.Credentials;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.client5.http.auth.MalformedChallengeException;
|
||||
import org.apache.hc.client5.http.auth.StandardAuthScheme;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.core5.http.ClassicHttpRequest;
|
||||
import org.apache.hc.core5.http.ContentType;
|
||||
import org.apache.hc.core5.http.HeaderElement;
|
||||
|
@ -96,10 +95,9 @@ public class TestDigestScheme {
|
|||
public void testDigestAuthenticationWithDefaultCreds() throws Exception {
|
||||
final HttpRequest request = new BasicHttpRequest("Simple", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " realm=\"realm1\", nonce=\"f2a3f18799759d4f1a1c068b92b573cb\"";
|
||||
final AuthChallenge authChallenge = parse(challenge);
|
||||
|
@ -123,10 +121,9 @@ public class TestDigestScheme {
|
|||
public void testDigestAuthentication() throws Exception {
|
||||
final HttpRequest request = new BasicHttpRequest("Simple", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " realm=\"realm1\", nonce=\"f2a3f18799759d4f1a1c068b92b573cb\"";
|
||||
final AuthChallenge authChallenge = parse(challenge);
|
||||
|
@ -147,10 +144,9 @@ public class TestDigestScheme {
|
|||
@Test
|
||||
public void testDigestAuthenticationInvalidInput() throws Exception {
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " realm=\"realm1\", nonce=\"f2a3f18799759d4f1a1c068b92b573cb\"";
|
||||
final AuthChallenge authChallenge = parse(challenge);
|
||||
|
@ -169,10 +165,9 @@ public class TestDigestScheme {
|
|||
public void testDigestAuthenticationWithSHA() throws Exception {
|
||||
final HttpRequest request = new BasicHttpRequest("Simple", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " realm=\"realm1\", " +
|
||||
"nonce=\"f2a3f18799759d4f1a1c068b92b573cb\", " +
|
||||
|
@ -196,10 +191,9 @@ public class TestDigestScheme {
|
|||
public void testDigestAuthenticationWithQueryStringInDigestURI() throws Exception {
|
||||
final HttpRequest request = new BasicHttpRequest("Simple", "/?param=value");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " realm=\"realm1\", nonce=\"f2a3f18799759d4f1a1c068b92b573cb\"";
|
||||
final AuthChallenge authChallenge = parse(challenge);
|
||||
|
@ -221,10 +215,9 @@ public class TestDigestScheme {
|
|||
public void testDigestAuthenticationNoRealm() throws Exception {
|
||||
final HttpRequest request = new BasicHttpRequest("Simple", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " no-realm=\"realm1\", nonce=\"f2a3f18799759d4f1a1c068b92b573cb\"";
|
||||
final AuthChallenge authChallenge = parse(challenge);
|
||||
|
@ -240,10 +233,9 @@ public class TestDigestScheme {
|
|||
public void testDigestAuthenticationNoNonce() throws Exception {
|
||||
final HttpRequest request = new BasicHttpRequest("Simple", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " realm=\"realm1\", no-nonce=\"f2a3f18799759d4f1a1c068b92b573cb\"";
|
||||
final AuthChallenge authChallenge = parse(challenge);
|
||||
|
@ -269,10 +261,9 @@ public class TestDigestScheme {
|
|||
|
||||
final HttpRequest request = new BasicHttpRequest("Simple", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, realm, null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials(username, password.toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, realm, null), username, password.toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge=StandardAuthScheme.DIGEST + " realm=\"" + realm + "\", "
|
||||
+ "nonce=\"" + nonce + "\", "
|
||||
|
@ -320,10 +311,9 @@ public class TestDigestScheme {
|
|||
|
||||
final HttpRequest request = new BasicHttpRequest("Simple", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, realm, null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials(username, password.toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, realm, null), username, password.toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge=StandardAuthScheme.DIGEST + " realm=\"" + realm + "\", "
|
||||
+ "nonce=\"" + nonce + "\", "
|
||||
|
@ -365,10 +355,9 @@ public class TestDigestScheme {
|
|||
|
||||
final HttpRequest request = new BasicHttpRequest("Simple", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, realm, null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials(username, password.toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, realm, null), username, password.toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge=StandardAuthScheme.DIGEST + " realm=\"" + realm + "\", "
|
||||
+ "nonce=\"" + nonce + "\", "
|
||||
|
@ -401,10 +390,9 @@ public class TestDigestScheme {
|
|||
|
||||
final HttpRequest request = new BasicHttpRequest("Simple", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, realm, null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials(username, password.toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, realm, null), username, password.toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge=StandardAuthScheme.DIGEST + " realm=\"" + realm + "\", "
|
||||
+ "nonce=\"" + nonce + "\", "
|
||||
|
@ -452,10 +440,9 @@ public class TestDigestScheme {
|
|||
public void testDigestNouceCount() throws Exception {
|
||||
final HttpRequest request = new BasicHttpRequest("GET", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge1 = StandardAuthScheme.DIGEST + " realm=\"realm1\", nonce=\"f2a3f18799759d4f1a1c068b92b573cb\", qop=auth";
|
||||
final AuthChallenge authChallenge1 = parse(challenge1);
|
||||
|
@ -496,11 +483,10 @@ public class TestDigestScheme {
|
|||
@Test
|
||||
public void testDigestMD5SessA1AndCnonceConsistency() throws Exception {
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "subnet.domain.com", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final HttpRequest request = new BasicHttpRequest("GET", "/");
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "subnet.domain.com", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge1 = StandardAuthScheme.DIGEST + " qop=\"auth\", algorithm=MD5-sess, nonce=\"1234567890abcdef\", " +
|
||||
"charset=utf-8, realm=\"subnet.domain.com\"";
|
||||
|
@ -579,10 +565,9 @@ public class TestDigestScheme {
|
|||
final ClassicHttpRequest request = new BasicClassicHttpRequest("Post", "/");
|
||||
request.setEntity(new StringEntity("abc\u00e4\u00f6\u00fcabc", StandardCharsets.ISO_8859_1));
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " realm=\"realm1\", nonce=\"f2a3f18799759d4f1a1c068b92b573cb\", " +
|
||||
"qop=\"auth,auth-int\"";
|
||||
|
@ -606,10 +591,9 @@ public class TestDigestScheme {
|
|||
public void testDigestAuthenticationQopAuthIntNullEntity() throws Exception {
|
||||
final HttpRequest request = new BasicHttpRequest("Post", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " realm=\"realm1\", nonce=\"f2a3f18799759d4f1a1c068b92b573cb\", " +
|
||||
"qop=\"auth-int\"";
|
||||
|
@ -634,10 +618,9 @@ public class TestDigestScheme {
|
|||
final ClassicHttpRequest request = new BasicClassicHttpRequest("Post", "/");
|
||||
request.setEntity(new InputStreamEntity(new ByteArrayInputStream(new byte[] {'a'}), -1, ContentType.DEFAULT_TEXT));
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " realm=\"realm1\", nonce=\"f2a3f18799759d4f1a1c068b92b573cb\", " +
|
||||
"qop=\"auth,auth-int\"";
|
||||
|
@ -661,10 +644,9 @@ public class TestDigestScheme {
|
|||
public void testParameterCaseSensitivity() throws Exception {
|
||||
final HttpRequest request = new BasicHttpRequest("GET", "/");
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "-", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "-", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " Realm=\"-\", " +
|
||||
"nonce=\"YjYuNGYyYmJhMzUuY2I5ZDhlZDE5M2ZlZDM 1Mjk3NGJkNTIyYjgyNTcwMjQ=\", " +
|
||||
|
@ -683,10 +665,9 @@ public class TestDigestScheme {
|
|||
final ClassicHttpRequest request = new BasicClassicHttpRequest("Post", "/");
|
||||
request.setEntity(new InputStreamEntity(new ByteArrayInputStream(new byte[] {'a'}), -1, ContentType.DEFAULT_TEXT));
|
||||
final HttpHost host = new HttpHost("somehost", 80);
|
||||
final AuthScope authScope = new AuthScope(host, "realm1", null);
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
final Credentials creds = new UsernamePasswordCredentials("username","password".toCharArray());
|
||||
credentialsProvider.setCredentials(authScope, creds);
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(host, "realm1", null), "username", "password".toCharArray())
|
||||
.build();
|
||||
|
||||
final String challenge = StandardAuthScheme.DIGEST + " realm=\"realm1\", nonce=\"f2a3f18799759d4f1a1c068b92b573cb\", " +
|
||||
"qop=\"auth-int\"";
|
||||
|
|
|
@ -31,6 +31,7 @@ import org.apache.hc.client5.http.auth.AuthCache;
|
|||
import org.apache.hc.client5.http.auth.AuthExchange;
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.Credentials;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.client5.http.protocol.HttpClientContext;
|
||||
import org.apache.hc.client5.http.protocol.RequestAuthCache;
|
||||
|
@ -52,14 +53,13 @@ public class TestRequestAuthCache {
|
|||
private AuthScope authscope2;
|
||||
private BasicScheme authscheme1;
|
||||
private BasicScheme authscheme2;
|
||||
private BasicCredentialsProvider credProvider;
|
||||
private CredentialsProvider credProvider;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
this.target = new HttpHost("localhost", 80);
|
||||
this.proxy = new HttpHost("localhost", 8080);
|
||||
|
||||
this.credProvider = new BasicCredentialsProvider();
|
||||
this.creds1 = new UsernamePasswordCredentials("user1", "secret1".toCharArray());
|
||||
this.creds2 = new UsernamePasswordCredentials("user2", "secret2".toCharArray());
|
||||
this.authscope1 = new AuthScope(this.target);
|
||||
|
@ -67,8 +67,10 @@ public class TestRequestAuthCache {
|
|||
this.authscheme1 = new BasicScheme();
|
||||
this.authscheme2 = new BasicScheme();
|
||||
|
||||
this.credProvider.setCredentials(this.authscope1, this.creds1);
|
||||
this.credProvider.setCredentials(this.authscope2, this.creds2);
|
||||
this.credProvider = CredentialsProviderBuilder.create()
|
||||
.add(this.authscope1, this.creds1)
|
||||
.add(this.authscope2, this.creds2)
|
||||
.build();
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
|
@ -35,15 +35,15 @@ import org.apache.hc.client5.http.HttpRoute;
|
|||
import org.apache.hc.client5.http.RouteInfo;
|
||||
import org.apache.hc.client5.http.auth.AuthScope;
|
||||
import org.apache.hc.client5.http.auth.ChallengeType;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.client5.http.auth.StandardAuthScheme;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.client5.http.classic.ExecChain;
|
||||
import org.apache.hc.client5.http.classic.ExecRuntime;
|
||||
import org.apache.hc.client5.http.classic.methods.HttpGet;
|
||||
import org.apache.hc.client5.http.entity.EntityBuilder;
|
||||
import org.apache.hc.client5.http.impl.TunnelRefusedException;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicScheme;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.client5.http.protocol.HttpClientContext;
|
||||
import org.apache.hc.core5.http.ClassicHttpRequest;
|
||||
import org.apache.hc.core5.http.ClassicHttpResponse;
|
||||
|
@ -238,9 +238,9 @@ public class TestConnectExec {
|
|||
.build());
|
||||
final ClassicHttpResponse response2 = new BasicClassicHttpResponse(200, "OK");
|
||||
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
credentialsProvider.setCredentials(new AuthScope(proxy), new UsernamePasswordCredentials("user", "pass".toCharArray()));
|
||||
context.setCredentialsProvider(credentialsProvider);
|
||||
context.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(proxy), "user", "pass".toCharArray())
|
||||
.build());
|
||||
|
||||
final ConnectionState connectionState = new ConnectionState();
|
||||
Mockito.doAnswer(connectionState.connectAnswer()).when(execRuntime).connectEndpoint(Mockito.any());
|
||||
|
@ -279,8 +279,9 @@ public class TestConnectExec {
|
|||
.build());
|
||||
final ClassicHttpResponse response2 = new BasicClassicHttpResponse(200, "OK");
|
||||
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
credentialsProvider.setCredentials(new AuthScope(proxy), new UsernamePasswordCredentials("user", "pass".toCharArray()));
|
||||
final CredentialsProvider credentialsProvider = CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(proxy), "user", "pass".toCharArray())
|
||||
.build();
|
||||
context.setCredentialsProvider(credentialsProvider);
|
||||
|
||||
final ConnectionState connectionState = new ConnectionState();
|
||||
|
|
|
@ -41,7 +41,6 @@ import org.apache.hc.client5.http.auth.ChallengeType;
|
|||
import org.apache.hc.client5.http.auth.Credentials;
|
||||
import org.apache.hc.client5.http.auth.CredentialsProvider;
|
||||
import org.apache.hc.client5.http.auth.StandardAuthScheme;
|
||||
import org.apache.hc.client5.http.auth.UsernamePasswordCredentials;
|
||||
import org.apache.hc.client5.http.classic.ExecChain;
|
||||
import org.apache.hc.client5.http.classic.ExecRuntime;
|
||||
import org.apache.hc.client5.http.classic.methods.HttpGet;
|
||||
|
@ -49,6 +48,7 @@ import org.apache.hc.client5.http.classic.methods.HttpPost;
|
|||
import org.apache.hc.client5.http.entity.EntityBuilder;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
|
||||
import org.apache.hc.client5.http.impl.auth.BasicScheme;
|
||||
import org.apache.hc.client5.http.impl.auth.CredentialsProviderBuilder;
|
||||
import org.apache.hc.client5.http.impl.auth.NTLMScheme;
|
||||
import org.apache.hc.client5.http.protocol.HttpClientContext;
|
||||
import org.apache.hc.core5.http.ClassicHttpRequest;
|
||||
|
@ -211,9 +211,9 @@ public class TestProtocolExec {
|
|||
.setStream(inStream2)
|
||||
.build());
|
||||
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
credentialsProvider.setCredentials(new AuthScope(target), new UsernamePasswordCredentials("user", "pass".toCharArray()));
|
||||
context.setCredentialsProvider(credentialsProvider);
|
||||
context.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(target), "user", "pass".toCharArray())
|
||||
.build());
|
||||
|
||||
Mockito.when(chain.proceed(
|
||||
Mockito.same(request),
|
||||
|
@ -257,9 +257,9 @@ public class TestProtocolExec {
|
|||
authExchange.select(new NTLMScheme());
|
||||
context.setAuthExchange(target, authExchange);
|
||||
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
credentialsProvider.setCredentials(new AuthScope(target), new UsernamePasswordCredentials("user", "pass".toCharArray()));
|
||||
context.setCredentialsProvider(credentialsProvider);
|
||||
context.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(target), "user", "pass".toCharArray())
|
||||
.build());
|
||||
|
||||
Mockito.when(chain.proceed(
|
||||
Mockito.same(request),
|
||||
|
@ -297,9 +297,9 @@ public class TestProtocolExec {
|
|||
.setStream(inStream1)
|
||||
.build());
|
||||
|
||||
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
|
||||
credentialsProvider.setCredentials(new AuthScope(target), new UsernamePasswordCredentials("user", "pass".toCharArray()));
|
||||
context.setCredentialsProvider(credentialsProvider);
|
||||
context.setCredentialsProvider(CredentialsProviderBuilder.create()
|
||||
.add(new AuthScope(target), "user", "pass".toCharArray())
|
||||
.build());
|
||||
|
||||
Mockito.when(chain.proceed(
|
||||
Mockito.same(request),
|
||||
|
|
Loading…
Reference in New Issue