一个实际问题分析及解决之五:两种方法的区别和选择

前面两篇文章分别解释了在websphere环境下建立SSL连接的两种办法,那么一更进一步:

两者的区别是什么?
本质上两者是一样的都是通过JVM来建立socket连接,区别在于配置JVM socket连接方式。

两种配置方式的优先级?
系统变量方式的优先级高,会覆盖websphere的配置。具体可看下面一篇文章。

如何选择?
通常应该选择让websphere来管理你的ssl socket连接,因为这是容器的工作内容之一,但如果你采用了第三方jar包,而该第三方jar包有调用SSLContext.getInstance()语句,那么别无选择,只能小心处理你的keystore和truststore,因为这种方式下它不会读取websphere的ssl配置,你只能通过系统变量的方式指定keystore和truststore,但该系统变量是全局性的,会覆盖websphere的配置,所以你要小心的处理两个keystore。
当然如果你想自己指定keystore但又不想覆盖websphere的相关配置,也是可以的,你要在sslcontext.getInstance()之后继续调用jdk api去设置当前instance的key store和truststore,这样的设置是局部的只对当前instance可见,但往往第三方jar包并没有暴露出该instance。
另一个可行的办法就是把你所有的certificate都import进websphere配置的keystore和truststore中去,然后让javax.net.ssl.keystore指向sal配置的keystore文件,这样就完全不用担心一个被另一个覆盖的问题,因为两者用同一个文件,唯一的问题是能不能拿到websphere的keystore和truststore的密码。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值