Example usage for org.apache.http.client.protocol HttpClientContext getCredentialsProvider

List of usage examples for org.apache.http.client.protocol HttpClientContext getCredentialsProvider

Introduction

In this page you can find the example usage for org.apache.http.client.protocol HttpClientContext getCredentialsProvider.

Prototype

public CredentialsProvider getCredentialsProvider() 

Source Link

Usage

From source file:org.opensaml.security.httpclient.HttpClientSecuritySupport.java

/**
 * Marshal the supplied {@link HttpClientSecurityParameters} to the supplied {@link HttpClientContext}.
 * //from  w  w w .  j  av a  2  s  .  c  o  m
 * @param context the client context instance
 * @param securityParameters the security parameters instance
 * @param replace whether a non-null security parameter value should replace an existing context value
 */
public static void marshalSecurityParameters(@Nonnull final HttpClientContext context,
        @Nullable final HttpClientSecurityParameters securityParameters, boolean replace) {
    if (securityParameters == null) {
        return;
    }
    Constraint.isNotNull(context, "HttpClientContext was null");

    if (securityParameters.getCredentialsProvider() != null) {
        if (replace || context.getCredentialsProvider() == null) {
            context.setCredentialsProvider(securityParameters.getCredentialsProvider());
        }
    }

    setContextValue(context, CONTEXT_KEY_TRUST_ENGINE, securityParameters.getTLSTrustEngine(), replace);

    setContextValue(context, CONTEXT_KEY_CRITERIA_SET, securityParameters.getTLSCriteriaSet(), replace);

    setContextValue(context, CONTEXT_KEY_TLS_PROTOCOLS, securityParameters.getTLSProtocols(), replace);

    setContextValue(context, CONTEXT_KEY_TLS_CIPHER_SUITES, securityParameters.getTLSCipherSuites(), replace);

    setContextValue(context, CONTEXT_KEY_HOSTNAME_VERIFIER, securityParameters.getHostnameVerifier(), replace);

    setContextValue(context, CONTEXT_KEY_CLIENT_TLS_CREDENTIAL, securityParameters.getClientTLSCredential(),
            replace);

}

From source file:org.commonjava.util.jhttpc.auth.BasicAuthenticator.java

@Override
public HttpClientContext decoratePrototypeContext(final AuthScope scope, SiteConfig location, PasswordType type,
        HttpClientContext ctx) {
    CredentialsProvider creds = ctx.getCredentialsProvider();
    if (creds == null || !(creds instanceof BasicCredentialsProvider)) {
        creds = new BasicCredentialsProvider();
        ctx.setCredentialsProvider(creds);
    }/*from  ww  w  .  j  a  v a  2 s .  c  o  m*/

    if (PasswordType.USER == type) {
        final String password = passwords.lookup(new PasswordKey(location, PasswordType.USER));
        creds.setCredentials(scope, new UsernamePasswordCredentials(location.getUser(), password));
    } else if (PasswordType.PROXY == type) {
        final String password = passwords.lookup(new PasswordKey(location, PasswordType.PROXY));
        creds.setCredentials(scope, new UsernamePasswordCredentials(location.getProxyUser(), password));
    }

    return ctx;
}

From source file:org.sonatype.nexus.httpclient.PreemptiveAuthHttpRequestInterceptor.java

@Override
public void process(final HttpRequest request, final HttpContext context) throws HttpException, IOException {
    HttpClientContext clientContext = HttpClientContext.adapt(context);
    AuthState authState = clientContext.getTargetAuthState();
    if (authState.getAuthScheme() == null) {
        CredentialsProvider credsProvider = clientContext.getCredentialsProvider();
        HttpHost targetHost = clientContext.getTargetHost();
        Credentials creds = credsProvider
                .getCredentials(new AuthScope(targetHost.getHostName(), targetHost.getPort()));
        if (creds != null) {
            authState.update(new BasicScheme(), creds);
        }//  www.  j a  v a2  s .c  om
    }
}

From source file:org.sonatype.nexus.apachehttpclient.PreemptiveAuthHttpRequestInterceptor.java

@Override
public void process(final HttpRequest request, final HttpContext context) throws HttpException, IOException {
    final HttpClientContext clientContext = HttpClientContext.adapt(context);
    final AuthState authState = clientContext.getTargetAuthState();
    if (authState.getAuthScheme() == null) {
        final CredentialsProvider credsProvider = clientContext.getCredentialsProvider();
        final HttpHost targetHost = clientContext.getTargetHost();
        final Credentials creds = credsProvider
                .getCredentials(new AuthScope(targetHost.getHostName(), targetHost.getPort()));
        if (creds != null) {
            authState.update(new BasicScheme(), creds);
        }//from ww  w.j  a  v  a2s . c o m
    }
}

From source file:org.artifactory.util.PreemptiveAuthInterceptor.java

@Override
public void process(HttpRequest request, HttpContext context) throws HttpException, IOException {
    HttpClientContext clientContext = HttpClientContext.adapt(context);
    AuthState authState = clientContext.getTargetAuthState();

    // If there's no auth scheme available yet, try to initialize it preemptively
    if (authState.getAuthScheme() == null) {
        CredentialsProvider credsProvider = clientContext.getCredentialsProvider();
        HttpHost targetHost = clientContext.getTargetHost();
        Credentials creds = credsProvider
                .getCredentials(new AuthScope(targetHost.getHostName(), targetHost.getPort()));
        if (creds == null) {
            log.debug("No credentials found for host " + targetHost);
        } else {/*from  ww w . j a  va 2s  .c o  m*/
            log.debug("Updating credentials for host " + targetHost);
            authState.update(new BasicScheme(), creds);
        }
    }
}

From source file:org.artifactory.util.ProxyPreemptiveAuthInterceptor.java

@Override
public void process(HttpRequest request, HttpContext context) throws HttpException, IOException {
    HttpClientContext clientContext = HttpClientContext.adapt(context);
    AuthState proxyAuthState = clientContext.getProxyAuthState();

    // If there's no auth scheme available yet, try to initialize it preemptively
    if (proxyAuthState.getAuthScheme() == null) {
        CredentialsProvider credsProvider = clientContext.getCredentialsProvider();
        RouteInfo route = clientContext.getHttpRoute();
        if (route == null) {
            log.debug("No route found for {}", clientContext.getTargetHost());
            return;
        }/*from  w  w  w. ja va  2s .  c  om*/

        HttpHost proxyHost = route.getProxyHost();
        if (proxyHost == null) {
            log.warn("No proxy host found in route {} for host {}", route, clientContext.getTargetHost());
            return;
        }

        Credentials creds = credsProvider
                .getCredentials(new AuthScope(proxyHost.getHostName(), proxyHost.getPort()));
        if (creds == null) {
            log.info("No credentials found for proxy: " + proxyHost);
            return;
        }
        proxyAuthState.update(new BasicScheme(ChallengeState.PROXY), creds);
    }
}

From source file:org.opensaml.security.httpclient.HttpClientSecuritySupportTest.java

@Test
public void testMarshalNullSecurityParameters() {
    HttpClientContext context = HttpClientContext.create();

    HttpClientSecuritySupport.marshalSecurityParameters(context, null, false);

    Assert.assertNull(context.getCredentialsProvider());
    Assert.assertNull(context.getAttribute(CONTEXT_KEY_TRUST_ENGINE));
    Assert.assertNull(context.getAttribute(CONTEXT_KEY_CRITERIA_SET));
    Assert.assertNull(context.getAttribute(CONTEXT_KEY_TLS_PROTOCOLS));
    Assert.assertNull(context.getAttribute(CONTEXT_KEY_TLS_CIPHER_SUITES));
    Assert.assertNull(context.getAttribute(CONTEXT_KEY_CLIENT_TLS_CREDENTIAL));
    Assert.assertNull(context.getAttribute(CONTEXT_KEY_HOSTNAME_VERIFIER));
}

From source file:org.apache.metron.stellar.dsl.functions.RestFunctionsTest.java

/**
 * The REST_GET function should set the proper credentials in the HttpClientContext.
 * @throws Exception/*from  w w w  .  ja va  2  s  .c o  m*/
 */
@Test
public void restGetShouldGetHttpClientContext() throws Exception {
    RestFunctions.RestGet restGet = new RestFunctions.RestGet();
    HttpHost target = new HttpHost("localhost", mockServerRule.getPort());
    HttpHost proxy = new HttpHost("localhost", proxyRule.getHttpPort());

    {
        RestConfig restConfig = new RestConfig();
        HttpClientContext actual = restGet.getHttpClientContext(restConfig, target, Optional.empty());

        assertNull(actual.getCredentialsProvider());
    }

    {
        RestConfig restConfig = new RestConfig();
        restConfig.put(BASIC_AUTH_USER, "user");
        restConfig.put(BASIC_AUTH_PASSWORD_PATH, basicAuthPasswordPath);

        HttpClientContext actual = restGet.getHttpClientContext(restConfig, target, Optional.empty());
        HttpClientContext expected = HttpClientContext.create();
        CredentialsProvider expectedCredentialsProvider = new BasicCredentialsProvider();
        expectedCredentialsProvider.setCredentials(new AuthScope(target),
                new UsernamePasswordCredentials(restConfig.getBasicAuthUser(), basicAuthPassword));
        expected.setCredentialsProvider(expectedCredentialsProvider);

        assertEquals(expected.getCredentialsProvider().getCredentials(new AuthScope(target)),
                actual.getCredentialsProvider().getCredentials(new AuthScope(target)));
        assertEquals(expected.getCredentialsProvider().getCredentials(new AuthScope(proxy)),
                actual.getCredentialsProvider().getCredentials(new AuthScope(proxy)));
    }

    {
        RestConfig restConfig = new RestConfig();
        restConfig.put(PROXY_BASIC_AUTH_USER, "proxyUser");
        restConfig.put(PROXY_BASIC_AUTH_PASSWORD_PATH, proxyBasicAuthPasswordPath);

        HttpClientContext actual = restGet.getHttpClientContext(restConfig, target, Optional.of(proxy));
        HttpClientContext expected = HttpClientContext.create();
        CredentialsProvider expectedCredentialsProvider = new BasicCredentialsProvider();
        expectedCredentialsProvider.setCredentials(new AuthScope(proxy),
                new UsernamePasswordCredentials(restConfig.getProxyBasicAuthUser(), proxyAuthPassword));
        expected.setCredentialsProvider(expectedCredentialsProvider);

        assertEquals(expected.getCredentialsProvider().getCredentials(new AuthScope(target)),
                actual.getCredentialsProvider().getCredentials(new AuthScope(target)));
        assertEquals(expected.getCredentialsProvider().getCredentials(new AuthScope(proxy)),
                actual.getCredentialsProvider().getCredentials(new AuthScope(proxy)));
    }

    {
        RestConfig restConfig = new RestConfig();
        restConfig.put(BASIC_AUTH_USER, "user");
        restConfig.put(BASIC_AUTH_PASSWORD_PATH, basicAuthPasswordPath);
        restConfig.put(PROXY_BASIC_AUTH_USER, "proxyUser");
        restConfig.put(PROXY_BASIC_AUTH_PASSWORD_PATH, proxyBasicAuthPasswordPath);

        HttpClientContext actual = restGet.getHttpClientContext(restConfig, target, Optional.of(proxy));
        HttpClientContext expected = HttpClientContext.create();
        CredentialsProvider expectedCredentialsProvider = new BasicCredentialsProvider();
        expectedCredentialsProvider.setCredentials(new AuthScope(target),
                new UsernamePasswordCredentials(restConfig.getBasicAuthUser(), basicAuthPassword));
        expectedCredentialsProvider.setCredentials(new AuthScope(proxy),
                new UsernamePasswordCredentials(restConfig.getProxyBasicAuthUser(), proxyAuthPassword));
        expected.setCredentialsProvider(expectedCredentialsProvider);

        assertEquals(expected.getCredentialsProvider().getCredentials(new AuthScope(target)),
                actual.getCredentialsProvider().getCredentials(new AuthScope(target)));
        assertEquals(expected.getCredentialsProvider().getCredentials(new AuthScope(proxy)),
                actual.getCredentialsProvider().getCredentials(new AuthScope(proxy)));
    }
}

From source file:org.sahli.asciidoc.confluence.publisher.client.http.ConfluenceRestClientTest.java

@Test
public void sendRequest_withProvidedUsernameAndPassword_setsCredentialsProvider() throws Exception {
    // arrange//w  ww  . j a  v a 2  s .  c om
    CloseableHttpClient closeableHttpClient = anyCloseableHttpClient();
    ConfluenceRestClient confluenceRestClient = new ConfluenceRestClient("http://confluence.com",
            closeableHttpClient, "username", "password");
    HttpGet httpRequest = new HttpGet("http://confluence.com");
    ArgumentCaptor<HttpContext> httpContentArgumentCaptor = ArgumentCaptor.forClass(HttpContext.class);

    // act
    confluenceRestClient.sendRequest(httpRequest);

    // assert
    verify(closeableHttpClient, times(1)).execute(eq(httpRequest), httpContentArgumentCaptor.capture());
    HttpContext httpContext = httpContentArgumentCaptor.getValue();
    HttpClientContext httpClientContext = (HttpClientContext) httpContext;
    HttpHost httpHost = HttpHost.create("http://confluence.com");
    assertThat(httpClientContext.getAuthCache().get(httpHost), not(nullValue()));

    Credentials credentials = httpClientContext.getCredentialsProvider()
            .getCredentials(new AuthScope(httpHost));
    assertThat(credentials.getPassword(), is("password"));
    assertThat(credentials.getUserPrincipal().getName(), is("username"));
}