类 HTTPSSecureProtocolSocketFactory

java.lang.Object
io.github.mangocrisp.spring.taybct.tool.pki.util.HTTPSSecureProtocolSocketFactory
所有已实现的接口:
org.apache.commons.httpclient.protocol.ProtocolSocketFactory

public class HTTPSSecureProtocolSocketFactory extends Object implements org.apache.commons.httpclient.protocol.ProtocolSocketFactory
使用HTTPCLIENT时不检测服务器证书是否可信

扩展HttpClient 类实现自动接受证书

因为这种方法自动接收所有证书,因此存在一定的安全问题,所以在使用这种方法前请仔细考虑您的系统的安全需求。具体的步骤如下:

•提供一个自定义的socket factory (test.MySecureProtocolSocketFactory )。这个自定义的类必须实现接口org.apache.commons.httpclient.protocol.SecureProtocolSocketFactory ,在实现接口的类中调用自定义的X509TrustManager(test.MyX509TrustManager) ,这两个类可以在随本文带的附件中得到 •创建一个org.apache.commons.httpclient.protocol.Protocol 的实例,指定协议名称和默认的端口号 Protocol myhttps = new Protocol("https", new MySecureProtocolSocketFactory (), 443);

•注册刚才创建的https 协议对象 Protocol.registerProtocol("https ", myhttps);