如何通过ssl构建Web服务客户端

时间:2014-07-21 10:07:40

标签: java ssl webservice-client

我是SSL和安全新手,我想为使用SSL的Web服务构建一个java客户端。服务器已正确配置为使用双向ssl配置,但如何构建客户端..

如果春天有任何东西,这将是好的..
提前谢谢

2 个答案:

答案 0 :(得分:0)

您不必对客户端做任何特殊处理,只需在您的请求上使用HTTPS而不是HTTP。

答案 1 :(得分:0)

要使工作正常,您必须创建客户端密钥库和信任库,然后使用这些存储定义SSLContext,然后实例化SSLSocketFactory以生成SSLSocket,如下所示:

SSLContext sslcontext = SSLContexts.createDefault();        
SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(
            sslcontext, SSLConnectionSocketFactory.STRICT_HOSTNAME_VERIFIER);

CloseableHttpClient httpClient = HttpClients.custom()
        .setSSLSocketFactory(sslsf)
        .build();    
HttpsURLConnection.setDefaultSSLSocketFactory(sslcontext.getSocketFactory());

您应该阅读此http://docs.oracle.com/javase/7/docs/technotes/guides/security/jsse/JSSERefGuide.html以了解其工作原理 此问题how to write java client and server applications that uses mutual ssl authentication between them?也许有用。