Following code can help to create SSLSocketfactory for trusted cert by reading custom JKS (If you don't want to put cert in default trust store(cacrets) or don't want to set java system property).
This piece of code will be specific to your application and will not affect other applications if running in same JVM ...
private static String trustStorePasswd = "pass123";
private static String keyfactoryAlgorithm = "SunX509";
private static String sslContextProtocol = "SSL";
SSLContext sslCtx = SSLContext.getInstance(sslContextProtocol);
String sslTrustStore = "./setup/mytrust.jks"; // trust store file
// Create TrustManager
KeyStore trustKs = KeyStore.getInstance("JKS");
trustKs.load(new FileInputStream(sslTrustStore),
trustStorePasswd.toCharArray());
trustKs.load(is,
trustStorePasswd.toCharArray());
TrustManagerFactory tmf = TrustManagerFactory
.getInstance(keyfactoryAlgorithm);
tmf.init(trustKs);
sslCtx.init(null ,tmf.getTrustManagers(), null);
SSLSocketFactory socketFactory = sslCtx.getSocketFactory();
Now next step is to set socket factory into HttpsURLconnection :
HttpsURLconnection httpsconnections;
URL url = new URL("https://mysite.com:3434");
httpsconnections = (HttpsURLConnection) url.openConnection();
httpsconnections.setSSLSocketFactory(socketFactory);
now ur java code is ready to open connection to site and to use .. :)
cheers
This blog is dedicated to share my experience during my development as a purpose of notes and explorer various web / enterprise technologies like JAVA , JEE , Spring ,hybris, Portal , Jquery , RAI , JMS, Weblogic , SSL , Security, CS, MAC< Linux, Windows, Search, IOT, Arduino, Machine Learning, Tips, Angular, Node JS, React, Mac, Windows, Stack, Exception, Error etc. with examples.
Search This Blog
Subscribe to:
Post Comments (Atom)
Popular Posts
-
Follow the steps below add git remote origin to your local app : Use git init to create a new local repository. Add files and perform a...
-
While making a HTTP(s) connection to external resource from weblogic server following exception comes because underline API uses weblogic im...
-
Recently while installing android SDK , I was getting following error "Unable to elevate" error Solution I tried : 1. R...
-
If you want to manage and monitor the services, you can use PM2 , a process manager for Node.js. This is particularly useful in production ...
No comments:
Post a Comment
Thanks for your comment, will revert as soon as we read it.