public static SSLContext getEffectiveSSLContext(HttpEmitterSSLClientConfig sslConfig, SSLContext sslContext) { SSLContext effectiveSSLContext; if (sslConfig.isUseDefaultJavaContext()) { try { effectiveSSLContext = SSLContext.getDefault(); } catch (NoSuchAlgorithmException nsae) { throw new RuntimeException(nsae); } } else if (sslConfig.getTrustStorePath() != null) { log.info("Creating SSLContext for HttpEmitter client using config [%s]", sslConfig); effectiveSSLContext = new TLSUtils.ClientSSLContextBuilder() .setProtocol(sslConfig.getProtocol()) .setTrustStoreType(sslConfig.getTrustStoreType()) .setTrustStorePath(sslConfig.getTrustStorePath()) .setTrustStoreAlgorithm(sslConfig.getTrustStoreAlgorithm()) .setTrustStorePasswordProvider(sslConfig.getTrustStorePasswordProvider()) .build(); } else { effectiveSSLContext = sslContext; } return effectiveSSLContext; } }
public static SSLContext getEffectiveSSLContext(HttpEmitterSSLClientConfig sslConfig, SSLContext sslContext) { SSLContext effectiveSSLContext; if (sslConfig.isUseDefaultJavaContext()) { try { effectiveSSLContext = SSLContext.getDefault(); } catch (NoSuchAlgorithmException nsae) { throw new RuntimeException(nsae); } } else if (sslConfig.getTrustStorePath() != null) { log.info("Creating SSLContext for HttpEmitter client using config [%s]", sslConfig); effectiveSSLContext = new TLSUtils.ClientSSLContextBuilder() .setProtocol(sslConfig.getProtocol()) .setTrustStoreType(sslConfig.getTrustStoreType()) .setTrustStorePath(sslConfig.getTrustStorePath()) .setTrustStoreAlgorithm(sslConfig.getTrustStoreAlgorithm()) .setTrustStorePasswordProvider(sslConfig.getTrustStorePasswordProvider()) .build(); } else { effectiveSSLContext = sslContext; } return effectiveSSLContext; } }
@Override public SSLContext get() { log.info("Creating SslContext for https client using config [%s]", config); return new TLSUtils.ClientSSLContextBuilder() .setProtocol(config.getProtocol()) .setTrustStoreType(config.getTrustStoreType()) .setTrustStorePath(config.getTrustStorePath()) .setTrustStoreAlgorithm(config.getTrustStoreAlgorithm()) .setTrustStorePasswordProvider(config.getTrustStorePasswordProvider()) .setKeyStoreType(config.getKeyStoreType()) .setKeyStorePath(config.getKeyStorePath()) .setKeyStoreAlgorithm(config.getKeyManagerFactoryAlgorithm()) .setCertAlias(config.getCertAlias()) .setKeyStorePasswordProvider(config.getKeyStorePasswordProvider()) .setKeyManagerFactoryPasswordProvider(config.getKeyManagerPasswordProvider()) .build(); } }
SSLContext intermediateClientSSLContext = new TLSUtils.ClientSSLContextBuilder() .setProtocol(sslClientConfig.getProtocol()) .setTrustStoreType(sslClientConfig.getTrustStoreType()) .setTrustStorePath(sslClientConfig.getTrustStorePath()) .setTrustStoreAlgorithm(sslClientConfig.getTrustStoreAlgorithm()) .setTrustStorePasswordProvider(sslClientConfig.getTrustStorePasswordProvider()) .setKeyStoreType(sslClientConfig.getKeyStoreType()) .setKeyStorePath(keystorePath) .setKeyStoreAlgorithm(sslClientConfig.getKeyManagerFactoryAlgorithm()) .setCertAlias(certAlias) .setKeyStorePasswordProvider(sslClientConfig.getKeyStorePasswordProvider()) .setKeyManagerFactoryPasswordProvider(sslClientConfig.getKeyManagerPasswordProvider()) .setCertificateChecker(certificateChecker) .build();
private HttpClient makeCertlessClient() { SSLContext certlessClientSSLContext = new TLSUtils.ClientSSLContextBuilder() .setProtocol(sslClientConfig.getProtocol()) .setTrustStoreType(sslClientConfig.getTrustStoreType()) .setTrustStorePath(sslClientConfig.getTrustStorePath()) .setTrustStoreAlgorithm(sslClientConfig.getTrustStoreAlgorithm()) .setTrustStorePasswordProvider(sslClientConfig.getTrustStorePasswordProvider()) .setCertificateChecker(certificateChecker) .build(); final HttpClientConfig.Builder builder = getHttpClientConfigBuilder(certlessClientSSLContext); final Lifecycle lifecycle = new Lifecycle(); HttpClient client = HttpClientInit.createClient( builder.build(), LifecycleUtils.asMmxLifecycle(lifecycle) ); HttpClient adminClient = new CredentialedHttpClient( new BasicCredentials("admin", "priest"), client ); return adminClient; }
@Override public SSLContext get() { log.info("Creating SslContext for https client using config [%s]", config); return new TLSUtils.ClientSSLContextBuilder() .setProtocol(config.getProtocol()) .setTrustStoreType(config.getTrustStoreType()) .setTrustStorePath(config.getTrustStorePath()) .setTrustStoreAlgorithm(config.getTrustStoreAlgorithm()) .setTrustStorePasswordProvider(config.getTrustStorePasswordProvider()) .setKeyStoreType(config.getKeyStoreType()) .setKeyStorePath(config.getKeyStorePath()) .setKeyStoreAlgorithm(config.getKeyManagerFactoryAlgorithm()) .setCertAlias(config.getCertAlias()) .setKeyStorePasswordProvider(config.getKeyStorePasswordProvider()) .setKeyManagerFactoryPasswordProvider(config.getKeyManagerPasswordProvider()) .setValidateHostnames(config.getValidateHostnames()) .setCertificateChecker(certificateChecker) .build(); } }