Web Service Connector with two-way SSL enabled
Do you have any specific questions regarding the connection?
This link: https://developer.salesforce.com/page/Making_Authenticated_Web_Service_Callouts_Using_Two-Way_SSL should be your starting point. Please use developer board for any technical question.
Thank you for the link. It is good article however it describes the flow from SF to Java app as a server hosted in Tomacat.
In my case we need to communicate in opposite way: our application should be authenticated on Saleforce using certificate.
We use the mentioned framwork for communication with SF
The question is: How to configure SSL parameters in the mentioned Web Service Connector framwork (keystore, Certificate alias, SSL protocol etc.)?
Does this java framework exposes any properties Setter whcih will allow to set SSL parameters to the client requests?
Or are any changes required in the configuration of http client embedded into application container where our application is running (jetty HTTPClient)?
I posted the same question in Developers forum https://developer.salesforce.com/forums/ForumsMain?id=9060G000000ICNpQAO
It's possible to create a Transport implementation that is based off of the com.sforce.ws.transport.JdkHttpTransport class while having the JdkHttpTransport create the connection with its static createConnection method. Your Transport implementation can then set up the SSLSocketFactory (casting the connection to HttpsURLConnection is required to do that), and your SSLSocketFactory can be created from creating an SSLContext that is initialized to include your client certificate.