List of usage examples for javax.net.ssl TrustManagerFactory getInstance
public static final TrustManagerFactory getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException
TrustManagerFactory
object that acts as a factory for trust managers. From source file:com.nesscomputing.tinyhttp.ssl.HttpsTrustManagerFactory.java
@Nonnull private static X509TrustManager trustManagerFromKeystore(final KeyStore keystore) throws GeneralSecurityException { final TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance("PKIX", "SunJSSE"); trustManagerFactory.init(keystore);/*w w w . j a va 2 s . c om*/ final TrustManager[] tms = trustManagerFactory.getTrustManagers(); for (final TrustManager tm : tms) { if (tm instanceof X509TrustManager) { final X509TrustManager manager = X509TrustManager.class.cast(tm); final X509Certificate[] acceptedIssuers = manager.getAcceptedIssuers(); LOG.debug("Found TrustManager with %d authorities.", acceptedIssuers.length); for (int i = 0; i < acceptedIssuers.length; i++) { X509Certificate issuer = acceptedIssuers[i]; LOG.trace("Issuer #%d, subject DN=<%s>, serial=<%s>", i, issuer.getSubjectDN(), issuer.getSerialNumber()); } return manager; } } throw new IllegalStateException("Could not locate X509TrustManager!"); }
From source file:org.cloudcoder.builder2.server.WebappSocketFactory.java
private SSLSocketFactory createSocketFactory() throws IOException, GeneralSecurityException { String keyStoreType = "JKS"; String keystoreFilename = options.getKeystoreFilename(); InputStream keyStoreInputStream = this.getClass().getClassLoader().getResourceAsStream(keystoreFilename); if (keyStoreInputStream == null) { throw new IOException("Could not load keystore " + keystoreFilename); }/*from w ww . j a va 2 s . c om*/ KeyStore keyStore; String keystorePassword = options.getKeystorePassword(); try { keyStore = KeyStore.getInstance(keyStoreType); keyStore.load(keyStoreInputStream, keystorePassword.toCharArray()); } finally { IOUtils.closeQuietly(keyStoreInputStream); } TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance("PKIX", "SunJSSE"); //trustManagerFactory.init(trustStore); // XXX Load the cert (public key) here instead of the private key? trustManagerFactory.init(keyStore); // TrustManager X509TrustManager x509TrustManager = null; for (TrustManager trustManager : trustManagerFactory.getTrustManagers()) { if (trustManager instanceof X509TrustManager) { x509TrustManager = (X509TrustManager) trustManager; break; } } if (x509TrustManager == null) { throw new IllegalArgumentException("Cannot find x509TrustManager"); } // KeyManager KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance("SunX509", "SunJSSE"); keyManagerFactory.init(keyStore, keystorePassword.toCharArray()); X509KeyManager x509KeyManager = null; for (KeyManager keyManager : keyManagerFactory.getKeyManagers()) { if (keyManager instanceof X509KeyManager) { x509KeyManager = (X509KeyManager) keyManager; break; } } if (x509KeyManager == null) { throw new NullPointerException(); } SSLContext sslContext = SSLContext.getInstance("TLS"); sslContext.init(new KeyManager[] { x509KeyManager }, new TrustManager[] { x509TrustManager }, null); return sslContext.getSocketFactory(); }
From source file:com.nesscomputing.httpclient.internal.HttpClientTrustManagerFactory.java
@Nonnull private static X509TrustManager trustManagerFromKeystore(final KeyStore keystore) throws GeneralSecurityException { final TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance("PKIX", "SunJSSE"); trustManagerFactory.init(keystore);// ww w . j a va2s . co m final TrustManager[] tms = trustManagerFactory.getTrustManagers(); for (TrustManager tm : tms) { if (tm instanceof X509TrustManager) { final X509TrustManager manager = (X509TrustManager) tm; X509Certificate[] acceptedIssuers = manager.getAcceptedIssuers(); LOG.debug("Found TrustManager with %d authorities.", acceptedIssuers.length); for (int i = 0; i < acceptedIssuers.length; i++) { X509Certificate issuer = acceptedIssuers[i]; LOG.trace("Issuer #%d, subject DN=<%s>, serial=<%s>", i, issuer.getSubjectDN(), issuer.getSerialNumber()); } return manager; } } throw new IllegalStateException("Could not find an X509TrustManager"); }
From source file:be.fgov.kszbcss.rhq.websphere.connector.security.TrustStoreManager.java
private void reloadTrustManager() throws GeneralSecurityException, IOException { if (trustManager.get() == null) { log.info("Initializing trust manager using " + truststoreFile); } else {// w ww . jav a2 s . co m log.info("Reinitializing trust manager"); } TrustManagerFactory factory = TrustManagerFactory.getInstance("IbmPKIX", "IBMJSSE2"); factory.init(loadTrustStore()); TrustManager[] trustManagers = factory.getTrustManagers(); if (log.isDebugEnabled()) { log.debug("Returned trust managers: " + Arrays.asList(trustManagers)); } trustManager.set((X509TrustManager) trustManagers[0]); }
From source file:org.cloudcoder.submitsvc.oop.builder.WebappSocketFactory.java
private SSLSocketFactory createSocketFactory() throws IOException, GeneralSecurityException { String keyStoreType = "JKS"; InputStream keyStoreInputStream = this.getClass().getClassLoader().getResourceAsStream(keystoreFilename); if (keyStoreInputStream == null) { throw new IOException("Could not load keystore " + keystoreFilename); }/*from w ww . j av a2 s . co m*/ KeyStore keyStore; try { keyStore = KeyStore.getInstance(keyStoreType); keyStore.load(keyStoreInputStream, keystorePassword.toCharArray()); } finally { IOUtils.closeQuietly(keyStoreInputStream); } TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance("PKIX", "SunJSSE"); //trustManagerFactory.init(trustStore); // XXX Load the cert (public key) here instead of the private key? trustManagerFactory.init(keyStore); // TrustManager X509TrustManager x509TrustManager = null; for (TrustManager trustManager : trustManagerFactory.getTrustManagers()) { if (trustManager instanceof X509TrustManager) { x509TrustManager = (X509TrustManager) trustManager; break; } } if (x509TrustManager == null) { throw new IllegalArgumentException("Cannot find x509TrustManager"); } // KeyManager KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance("SunX509", "SunJSSE"); keyManagerFactory.init(keyStore, keystorePassword.toCharArray()); X509KeyManager x509KeyManager = null; for (KeyManager keyManager : keyManagerFactory.getKeyManagers()) { if (keyManager instanceof X509KeyManager) { x509KeyManager = (X509KeyManager) keyManager; break; } } if (x509KeyManager == null) { throw new NullPointerException(); } SSLContext sslContext = SSLContext.getInstance("TLS"); sslContext.init(new KeyManager[] { x509KeyManager }, new TrustManager[] { x509TrustManager }, null); return sslContext.getSocketFactory(); }
From source file:org.openanzo.client.AnzoTrustManager.java
public AnzoTrustManager(boolean trustAll, boolean showTrace) throws AnzoException { this.trustAll = trustAll; this.showTrace = showTrace; String truststorePath = CommandContext.preprocessString(System.getProperty("javax.net.ssl.trustStore")); String userHome = System.getProperty("user.home"); try {/* w w w . j ava 2 s. c o m*/ if (truststorePath == null && userHome != null) { File truststoreFile = new File(new File(userHome, ANZO_DIR), DEFAULT_CLIENT_TRUST); if (truststoreFile.exists()) // check the default location for the trust store in the user's .anzo directory truststorePath = truststoreFile.getCanonicalPath(); } String truststoreType = System.getProperty("javax.net.ssl.trustStoreType", "JCEKS"); String truststorePassword = System.getProperty("javax.net.ssl.trustStorePassword", DEFAULT_PWORD); // create a "default" JSSE X509TrustManager. KeyStore ks = KeyStore.getInstance(truststoreType); if (truststorePath != null && truststorePassword != null) { File trustFile = new File(truststorePath); if (trustFile.exists()) { ks.load(new FileInputStream(trustFile), truststorePassword.toCharArray()); } } TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509", "SunJSSE"); tmf.init(ks); TrustManager tms[] = tmf.getTrustManagers(); /* * Iterate over the returned trustmanagers, look * for an instance of X509TrustManager. If found, * use that as our "default" trust manager. */ for (int i = 0; i < tms.length; i++) { if (tms[i] instanceof X509TrustManager) { x509tm = (X509TrustManager) tms[i]; return; } } } catch (Exception e) { throw new AnzoException(ExceptionConstants.CLIENT.FAILED_INITIALIZE_TRUST_MANAGER, e); } // could not find the java default trust manager so throw an exception throw new AnzoRuntimeException(ExceptionConstants.CLIENT.FAILED_INITIALIZE_TRUST_MANAGER, "The default Java Trust Manager was not found"); }
From source file:com.qpark.eip.core.spring.security.https.EipX509TrustManager.java
/** * Initialize./*from www . j a v a 2 s. com*/ * * @throws Exception */ @PostConstruct public void init() throws Exception { // create a "default" JSSE X509TrustManager. this.ks = KeyStore.getInstance("JKS"); if (this.keystore != null) { this.ks.load(this.keystore.getInputStream(), this.keystorePassword); } TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509", "SunJSSE"); tmf.init(this.ks); TrustManager tms[] = tmf.getTrustManagers(); /* * Iterate over the returned trust managers, look for an instance of * X509TrustManager. If found, use that as our "default" trust manager. */ for (TrustManager tm : tms) { if (tm instanceof X509TrustManager) { this.sunJSSEX509TrustManager = (X509TrustManager) tm; return; } } /* * Find some other way to initialize, or else we have to fail the * constructor. */ throw new Exception("Couldn't initialize"); }
From source file:me.vertretungsplan.parser.BaseParser.java
private static X509TrustManager trustManagerFromKeystore(final KeyStore keystore) throws GeneralSecurityException { final TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance("PKIX", "SunJSSE"); trustManagerFactory.init(keystore);//w w w .ja v a2s . com final TrustManager[] tms = trustManagerFactory.getTrustManagers(); for (final TrustManager tm : tms) { if (tm instanceof X509TrustManager) { return X509TrustManager.class.cast(tm); } } throw new IllegalStateException("Could not locate X509TrustManager!"); }
From source file:net.sf.taverna.t2.security.credentialmanager.impl.HTTPSConnectionAndTrustConfirmationIT.java
@After // Clean up the credentialManagerDirectory we created for testing public void cleanUp() throws NoSuchAlgorithmException, KeyManagementException, NoSuchProviderException, KeyStoreException, UnrecoverableKeyException, CertificateException, IOException { // assertTrue(credentialManagerDirectory.exists()); // assertFalse(credentialManagerDirectory.listFiles().length == 0); // something was created there if (credentialManagerDirectory.exists()) { try {/*from ww w . j a v a2 s . c o m*/ FileUtils.deleteDirectory(credentialManagerDirectory); System.out.println( "Deleting Credential Manager's directory: " + credentialManagerDirectory.getAbsolutePath()); } catch (IOException e) { System.out.println(e.getStackTrace()); } } // Reset the SSLSocketFactory in JVM so we always have a clean start SSLContext sc = null; sc = SSLContext.getInstance("SSLv3"); // Create a "default" JSSE X509KeyManager. KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509", "SunJSSE"); KeyStore ks = KeyStore.getInstance("JKS"); ks.load(null, null); kmf.init(ks, "blah".toCharArray()); // Create a "default" JSSE X509TrustManager. TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509", "SunJSSE"); KeyStore ts = KeyStore.getInstance("JKS"); ts.load(null, null); tmf.init(ts); sc.init(kmf.getKeyManagers(), tmf.getTrustManagers(), new SecureRandom()); SSLContext.setDefault(sc); HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); }