##自定义信任管理器
###简介
访问Web应用的编程接口基本都封装了SSL,使得访问HTTPS和访问HTTP一样简单。JSSE是一个SSL和TLS的纯Java实现,可以透明地提供数据加密,服务器认证,信息完整性等功能,通过JSSE可以很容易由编程实现对HTTPS站点的访问。客户端在链接SSL服务器时,SSL服务器会将自己的正式链接交给客户端验证,如果在验证链中发现存在无效的证书,客户端会立即终止连接。
**客户端访问HTTPS链接时,有两种方法能够让JSSE信任HTTPS服务器端的安全证书:**
1. 将HPPS服务器端的安全证书导入到客户端的TrustStore文件中;
2. 实现自定义的信任管理器类。
第一种方法需要手工导入。
第二种则需要特别小心编码实现,否则可能会留下安全隐患
###自定义信任管理器
自定义的信任管理器类需要实现X509TrustManager接口,并且实现该接口的3个方法,方法的介绍如下:
1. checkClientTrusted()方法:该方法用于检查客户端的证书,若不信任则抛出异常。由于我们不需要对客户端进行认证,可以不做任何处理。
2. checkServerTrusted()方法:该方法用于检查服务器端的证书,若不信任则抛出异常。通过自己实现该方法,可以使之信任我们这顶的任务证书。在实现该方法时,也可以不做任何处理,即一个空的方法实现,由于不会抛出异常,它就会信任任何证书。
3. getAcceptedIssures()方法:返回受信任的X509证书数组。
源代码如下:
[MyX509TrustManager.java](http://www.kancloud.cn/yongxin/wxapi/196781)