Интеграция JBoss AS 5.1 с Websphere MQ через TLS - PullRequest
0 голосов
/ 16 октября 2018

Мы используем архив адаптера ресурсов websphere MQ (.rar), установленный на сервере приложений Jboss 5.1, для связи с MQ.

В коде приложения есть производитель и потребитель JMS, которые могут отправлять / получатьсообщения на MQ.

Следующий шаг, который я хочу сделать, - включить SSL на канале MQ и настроить JBoss SSLCipherSuite , чтобы сообщения можно было отправлять с включенным TLS.

У нас также есть межсетевые экраны и балансировщики нагрузки, расположенные между сервером приложений и веб-сферой MQ.

Я просмотрел несколько статей, но, очевидно, есть несколько способов использования TLS для связи JMS.

Мне нужнонекоторые рекомендации по следующим вопросам -

  • Какая конфигурация необходима в Jboss, чтобы начать использовать TLS для отправки и получения сообщений.Где эта конфигурация должна быть размещена?Я ссылался на следующую ссылку в документации IBM, в которой упоминается SSLCipherSuite: IBM MQ 7.5 SSL

  • Должны ли сертификаты, установленные в Websphere MQ, устанавливаться в приложении Jbossсервер?Я понимаю, что JSSE необходимо настроить, но я не уверен в необходимых шагах.Означает ли это, что вы просто копируете хранилище ключей и хранилище доверенных сертификатов куда-нибудь в инсталляции jboss?

  • Как это работает в кластерной среде?Нужно ли копировать сертификаты во все экземпляры Jboss?

  • Нужно ли устанавливать сертификаты на балансировщиках нагрузки?Я полагаю, что балансировщик нагрузки играет роль только для HTTP-запросов, а не для сообщений JMS-MQ.

  • Как правило, на предприятии разные порты для связи TLS и не-TLS JMS?Я понимаю, что порты с поддержкой TLS должны открываться и в брандмауэрах.

Ниже приведена фабрика соединений, которую мы используем для связи.

<tx-connection-factory>

    <jndi-name>jmsConnFac</jndi-name>

    <!-- Indicate that the connection factory supports only local transactions -->

    <local-transaction/>

    <!-- Indicate that the connection factory supports XA transactions -->

    <!-- <xa-transaction/> -->

    <!-- rar-name is the actual RAR file name, in this case wmq.jmsra.rar -->

    <rar-name>wmq.jmsra.rar</rar-name>

    <!-- connection-definition is the ConnectionFactory interface

      defined in the ra.xml -->

    <connection-definition>javax.jms.QueueConnectionFactory</connection-definition>
    <!-- Tell JBoss not to prefix the jndi name of the CF with the java: context and thus allow it to be looked up externally-->
    <use-java-context>false</use-java-context>

    <config-property name="channel" type="java.lang.String">SYSTEM.DEF.SVRCONN</config-property>

    <config-property name="hostName" type="java.lang.String">localhost</config-property>

    <config-property name="port" type="java.lang.String">1414</config-property>
    <config-property name="queueManager" type="java.lang.String">QM</config-property>
    <config-property name="transportType" type="java.lang.String">CLIENT</config-property>
    <!-- define security domain -->
    <security-domain-and-application>JmsXARealm</security-domain-and-application>
</tx-connection-factory>

РЕДАКТИРОВАТЬ:

  • Java версия 1.6.45
  • MQ версия 7.5.3
  • JBoss версии 5.1 EAP
  • Адаптер ресурсов MQ версии 7.5.9 (из пакета исправлений)
...