Example usage for org.apache.commons.httpclient.auth AuthPolicy registerAuthScheme

List of usage examples for org.apache.commons.httpclient.auth AuthPolicy registerAuthScheme

Introduction

In this page you can find the example usage for org.apache.commons.httpclient.auth AuthPolicy registerAuthScheme.

Prototype

public static void registerAuthScheme(String paramString, Class paramClass) 

Source Link

Usage

From source file:CustomAuthenticationExample.java

public static void main(String[] args) {

    // register the auth scheme
    AuthPolicy.registerAuthScheme(SecretAuthScheme.NAME, SecretAuthScheme.class);

    // include the scheme in the AuthPolicy.AUTH_SCHEME_PRIORITY preference,
    // this can be done on a per-client or per-method basis but we'll do it
    // globally for this example
    HttpParams params = DefaultHttpParams.getDefaultParams();
    ArrayList schemes = new ArrayList();
    schemes.add(SecretAuthScheme.NAME);/*from   ww w  . j  av  a2 s .c o  m*/
    schemes.addAll((Collection) params.getParameter(AuthPolicy.AUTH_SCHEME_PRIORITY));
    params.setParameter(AuthPolicy.AUTH_SCHEME_PRIORITY, schemes);

    // now that our scheme has been registered we can execute methods against
    // servers that require "Secret" authentication... 
}

From source file:net.adamcin.httpsig.http.apache3.Http3Util.java

public static void enableAuth(HttpClient client, Keychain keychain, KeyId keyId) {
    Signer signer = new Signer(keychain, keyId);
    CredentialsProvider credProvider = (CredentialsProvider) client.getParams()
            .getParameter(CredentialsProvider.PROVIDER);

    CredentialsProvider newProvider;/*from   w w w .j  a  v  a2  s  .com*/
    if (credProvider instanceof SignerCredentialsProvider) {
        newProvider = new SignerCredentialsProvider(signer,
                ((SignerCredentialsProvider) credProvider).getDelegatee());
    } else {
        newProvider = new SignerCredentialsProvider(signer, credProvider);
    }

    client.getParams().setParameter(CredentialsProvider.PROVIDER, newProvider);
    AuthPolicy.registerAuthScheme(Constants.SCHEME, Http3SignatureAuthScheme.class);
    List<String> schemes = new ArrayList<String>();
    schemes.add(Constants.SCHEME);

    Collection authSchemePriority = (Collection) DefaultHttpParams.getDefaultParams()
            .getParameter(AuthPolicy.AUTH_SCHEME_PRIORITY);
    if (authSchemePriority != null) {
        schemes.addAll(authSchemePriority);
    }
    client.getParams().setParameter(AuthPolicy.AUTH_SCHEME_PRIORITY, schemes);
}

From source file:ir.keloud.android.lib.common.KeloudBearerCredentials.java

@Override
public void applyTo(KeloudClient client) {
    AuthPolicy.registerAuthScheme(BearerAuthScheme.AUTH_POLICY, BearerAuthScheme.class);

    List<String> authPrefs = new ArrayList<String>(1);
    authPrefs.add(BearerAuthScheme.AUTH_POLICY);
    client.getParams().setParameter(AuthPolicy.AUTH_SCHEME_PRIORITY, authPrefs);

    client.getParams().setAuthenticationPreemptive(true);
    client.getState().setCredentials(AuthScope.ANY, new BearerCredentials(mAccessToken));
}

From source file:com.cerema.cloud2.lib.common.OwnCloudBearerCredentials.java

@Override
public void applyTo(OwnCloudClient client) {
    AuthPolicy.registerAuthScheme(BearerAuthScheme.AUTH_POLICY, BearerAuthScheme.class);

    List<String> authPrefs = new ArrayList<String>(1);
    authPrefs.add(BearerAuthScheme.AUTH_POLICY);
    client.getParams().setParameter(AuthPolicy.AUTH_SCHEME_PRIORITY, authPrefs);

    client.getParams().setAuthenticationPreemptive(true);
    client.getState().setCredentials(AuthScope.ANY, new BearerCredentials(mAccessToken));
}

From source file:com.owncloud.android.oc_framework.network.webdav.WebdavClient.java

public void setBearerCredentials(String accessToken) {
    AuthPolicy.registerAuthScheme(BearerAuthScheme.AUTH_POLICY, BearerAuthScheme.class);

    List<String> authPrefs = new ArrayList<String>(1);
    authPrefs.add(BearerAuthScheme.AUTH_POLICY);
    getParams().setParameter(AuthPolicy.AUTH_SCHEME_PRIORITY, authPrefs);

    mCredentials = new BearerCredentials(accessToken);
    getState().setCredentials(AuthScope.ANY, mCredentials);
    mSsoSessionCookie = null;/*from  w w  w .  j av a 2 s. c  om*/
}

From source file:eu.alefzero.webdav.WebdavClient.java

public void setBearerCredentials(String accessToken) {
    AuthPolicy.registerAuthScheme(BearerAuthScheme.AUTH_POLICY, BearerAuthScheme.class);

    List<String> authPrefs = new ArrayList<String>(1);
    authPrefs.add(BearerAuthScheme.AUTH_POLICY);
    getParams().setParameter(AuthPolicy.AUTH_SCHEME_PRIORITY, authPrefs);

    mCredentials = new BearerCredentials(accessToken);
    getState().setCredentials(AuthScope.ANY, mCredentials);
    mSsoSessionCookie = null;/*w ww.  ja v a2 s .c  o  m*/
    mAuthTokenType = AccountAuthenticator.AUTH_TOKEN_TYPE_ACCESS_TOKEN;
}

From source file:davmail.http.DavGatewayHttpClientFacade.java

/**
 * Enable NTLM authentication on http client
 *
 * @param httpClient HttpClient instance
 *//* w ww. j  a  v a2  s .  c  o  m*/
public static void addNTLM(HttpClient httpClient) {
    // disable preemptive authentication
    httpClient.getParams().setParameter(HttpClientParams.PREEMPTIVE_AUTHENTICATION, false);

    // register the jcifs based NTLMv2 implementation
    AuthPolicy.registerAuthScheme(AuthPolicy.NTLM, NTLMv2Scheme.class);

    ArrayList<String> authPrefs = new ArrayList<String>();
    authPrefs.add(AuthPolicy.NTLM);
    authPrefs.add(AuthPolicy.DIGEST);
    authPrefs.add(AuthPolicy.BASIC);
    httpClient.getParams().setParameter(AuthPolicy.AUTH_SCHEME_PRIORITY, authPrefs);

    // separate domain from username in credentials
    AuthScope authScope = new AuthScope(null, -1);
    NTCredentials credentials = (NTCredentials) httpClient.getState().getCredentials(authScope);
    String userName = credentials.getUserName();
    int backSlashIndex = userName.indexOf('\\');
    if (backSlashIndex >= 0) {
        String domain = userName.substring(0, backSlashIndex);
        userName = userName.substring(backSlashIndex + 1);
        credentials = new NTCredentials(userName, credentials.getPassword(), "UNKNOWN", domain);
        httpClient.getState().setCredentials(authScope, credentials);
    }

    // make sure NTLM is always active
    needNTLM = true;
}

From source file:com.google.enterprise.connector.sharepoint.spiimpl.SharepointConnectorType.java

/**
 * All the initial set-up and pre-requisites for Kerberos Authentication.
 * Following are the responsibilities: - If KDC Host is provided on UI
 * configuration then the Negotiate AuthScheme is registered with AuthPolicy
 * of Httpclient. - krb5.conf and login.conf files are copied to the connector
 * instance's directory. - Values of KDC Server and Realm are changed at
 * runtime in krb5.conf. - System properties required for the Kerberos AuthN
 * are set.//from  w w  w. ja  va 2s .c  o m
 */
private void kerberosSetUp(Map<String, String> configData) {
    String kdcServer = configData.get(SPConstants.KDC_SERVER).toString();
    String googleConnWorkDir = configData.get(GOOGLE_CONN_WORK_DIR);

    if (!kdcServer.equalsIgnoreCase(SPConstants.BLANK_STRING)) {
        AuthPolicy.registerAuthScheme(SPConstants.NEGOTIATE, NegotiateScheme.class);

        InputStream krb5In = SharepointConnectorType.class.getClassLoader()
                .getResourceAsStream(SPConstants.CONFIG_KRB5);
        if (krb5In != null) {
            try {
                File krb5File = new File(googleConnWorkDir, SPConstants.FILE_KRB5);
                String krb5Config = new String(ByteStreams.toByteArray(krb5In), UTF_8);
                krb5Config = krb5Config.replace(SPConstants.VAR_KRB5_REALM_UPPERCASE,
                        configData.get(SPConstants.DOMAIN).toString().toUpperCase());
                krb5Config = krb5Config.replace(SPConstants.VAR_KRB5_REALM_LOWERCASE,
                        configData.get(SPConstants.DOMAIN).toString().toLowerCase());
                krb5Config = krb5Config.replace(SPConstants.VAR_KRB5_KDC_SERVER,
                        configData.get(SPConstants.KDC_SERVER).toString().toUpperCase());
                FileOutputStream out = new FileOutputStream(krb5File);
                out.write(krb5Config.getBytes(UTF_8));
                out.close();
            } catch (IOException e) {
                LOGGER.log(Level.SEVERE, "Failed to create krb5.conf in connector instance's directory.");
            }
        }

        InputStream loginIn = SharepointConnectorType.class.getClassLoader()
                .getResourceAsStream(SPConstants.CONFIG_LOGIN);
        if (loginIn != null) {
            try {
                File loginFile = new File(googleConnWorkDir, SPConstants.FILE_LOGIN);
                String loginConfig = new String(ByteStreams.toByteArray(loginIn), UTF_8);
                FileOutputStream out = new FileOutputStream(loginFile);
                out.write(loginConfig.getBytes(UTF_8));
                out.close();
            } catch (IOException e) {
                LOGGER.log(Level.SEVERE, "Failed to create login.conf in connector instance's directory.");
            }
        }

        System.setProperty(SPConstants.SYS_PROP_AUTH_LOGIN_CONFIG,
                googleConnWorkDir + File.separator + SPConstants.FILE_LOGIN);
        System.setProperty(SPConstants.SYS_PROP_AUTH_KRB5_CONFIG,
                googleConnWorkDir + File.separator + SPConstants.FILE_KRB5);
        System.setProperty(SPConstants.SYS_PROP_AUTH_USESUBJETCREDSONLY, SPConstants.FALSE);
    }
}

From source file:org.apache.abdera.protocol.client.AbderaClient.java

/**
 * Register a new authentication scheme.
 * // w ww .jav  a2 s.  c om
 * @param name
 * @param scheme
 */
public static void registerScheme(String name, Class<? extends AuthScheme> scheme) {
    AuthPolicy.registerAuthScheme(name, scheme);
}

From source file:org.sonatype.nexus.restlight.common.AbstractRESTLightClient.java

protected void connect() throws RESTLightClientException {
    client = new HttpClient();

    UsernamePasswordCredentials creds = new UsernamePasswordCredentials(user, password);

    List<String> policies = new ArrayList<String>();
    policies.add(NxBasicScheme.POLICY_NAME);
    policies.add("BASIC");

    AuthPolicy.registerAuthScheme(NxBasicScheme.POLICY_NAME, NxBasicScheme.class);
    AuthPolicy.registerAuthScheme("BASIC", BasicScheme.class);

    client.getParams().setParameter(AuthPolicy.AUTH_SCHEME_PRIORITY, policies);

    client.getState().setCredentials(AuthScope.ANY, creds);

    loadVocabulary();/* w w w. j a v  a2s .  c  o  m*/
}