为受管连接工厂对象配置自定义SSLSocketFactory?

时间:2015-07-29 23:21:51

标签: java ssl jms websphere ibm-mq

这是我的设置:

客户端:在WebSphere Application Server上运行的MDB侦听器(版本8.5) 服务器:在不同计算机上运行的WebSphere MQ队列管理器(版本7.5)。

侦听器使用JMS队列连接工厂配置连接到队列管理器。主机名,端口,队列管理器名称等连接详细信息作为受管连接工厂对象存储在外部LDAP存储库中。 WebSphere使用其名称对受管对象进行JNDI检索,然后进行实际连接。

现在我需要使用SSL保护连接。此外,我必须使用自创建的keyStore和trustStore文件创建自定义SSLSocketFactory对象,并将其设置在连接工厂对象中。在独立的Java客户端中,它看起来像这样:

MQQueueConnectionFactory queueConnectionFactorySecure = (MQQueueConnectionFactory) initialDirContext.lookup(jndiQueueConnectionFactorySecure);
SSLSocketFactory sslSocketFactory = getCustomSocketFactory(keystoreFile, truststoreFile, keystorePassword, truststorePassword);
queueConnectionFactorySecure.setSSLSocketFactory(sslSocketFactory);

我必须为MDB监听器做类似的事情。我尝试过探索WebSphere Administration Console,但没有运气。当然,我可以选择“WebSphere MQ Provider”,直接提供主机名,端口等等,但这破坏了维护中央管理对象存储库的全部目的。

有人做过这样的事吗?有没有想过是否可以做到?通过我对这个主题的大量搜索,我找不到任何确凿的答案。

0 个答案:

没有答案