我有一台服务器使用自签名证书来为我的测试客户提供https连接。交换可信任证书的自签名证书?
我的客户端应用程序是用Java编写的,我是有它接受自签名的证书,像这样:
import org.apache.http.conn.ssl.SSLSocketFactory;
import org.apache.http.impl.client.DefaultHttpClient;
SSLSocketFactory factory = new SSLSocketFactory(myTrustedStore);
DefaultHttpClient client = new DefaultHttpClient();
client.getConnectionManager().getSchemeRegistry()
.register(new Scheme("https", factory, 456));
现在,我拥有一个值得信赖的第三方供应商适当的SSL证书。
如果我换证书,将连接上述失败?因为我使用上面的SSLSocketFactory显式初始化,客户端是否会拒绝服务器证书(这将是一个真正的信任证书?)。
只是想知道如果我必须要改变上面的代码,并有我的测试更新自己的客户端应用程序,或者将连接只是透明地工作他们无需更新?
感谢
-----跟进------
我受够了 '真正的' 证书尝试。我不得不使用自签名证书的代码不起作用。所以在他们使用真正的证书之前,我必须在客户端放弃上面的代码。
喜耶同一个问题 - 这样的客户端代码并不需要进行修改,然后?它会接受新的可信证书,即使我正在使用明确的自签证书初始化连接。 – user1219278 2013-02-22 15:30:09
**“您的代码不应受到影响。”** - 不,您的代码正常。如果失败,您可能需要导入新的证书,但是 - 因为您需要使用此代码进行升级 - 您不应该更改它。 – gaborsch 2013-02-22 15:35:46
好的,谢谢我会给它一个镜头并报告回来。 – user291701 2013-02-22 16:27:20