2013-07-15 134 views
1

我通过我的API提供商提供的证书是.crt文件和.p12文件。使用java客户端连接到ssl服务器

我所要求的API用openssl生成从.crt文件和 客户cert.pem和客户key.pem文件CA-cert.pem文件从.p12文件。

我还为我的api提供者提供了基本认证的用户名密码。

我的问题是如何使用Java连接到使用这些证书和证书的服务器url https(其余)。

回答

1

您基本上必须创建一个SSLSocketFactory请参阅example。一旦你创建了SSLSocketFactory,你可以在你创建一个像URL这样的URL的连接时进行设置。

SSLSocketFactory sf = ... see that example 
URL url = new URL("https://google.com"); 
HttpsURLConnection connection = (HttpsURLConnection) url.openConnection(); 
connection.setSSLSocketFactory(sf); 
... Now do stuff with that connection like GET or POST 

此外仅供参考,你会想你的证书转换成Java的喜欢,为了轻松地将它们装入的SSLSocketFactory的JKS格式。你可以使用一个叫做keytool的程序,它可以帮助你。

相关问题