-Dcom.ibm.mq.cfg.useIBMCipherMappings = false не работает и получает MQRC_UNSUPPORTED_CIPHER_SUITE - PullRequest
0 голосов
/ 20 марта 2020

Я использую SSLCIPHERSUITE (TLS_RSA_WITH_AES_128_CBC_SHA256) в нашем приложении (проверено, что оно используется в сгенерированном файле привязки), и тот же набор шифров также настроен на канале.

Тем не менее, я постоянно получаю сообщение об ошибке ниже -

2020-03-19 12:52:46,145 [Camel (camelContext) thread #13 - JmsConsumer[queue]] [WARN] o.a.c.c.jms.DefaultJmsMessageListenerContainer [] - Could not refresh JMS Connection for destination 'queue' - retrying in 5000 ms. Cause: JMSWMQ0018: Failed to connect to queue manager 'ABC' with connection mode 'Client' and host name 'null'.; nested exception is com.ibm.mq.MQException: JMSCMQ0001: WebSphere MQ call failed with compcode '2' ('MQCC_FAILED') reason '2400' ('MQRC_UNSUPPORTED_CIPHER_SUITE').
com.ibm.msg.client.jms.DetailedJMSException: JMSWMQ0018: Failed to connect to queue manager 'ABC' with connection mode 'Client' and host name 'null'.

При просмотре журналов ibm mq на стороне клиента используется шифр SSL_RSA_WITH_AES_128_CBC_SHA256

Попытка устранения неполадок:

  1. Использование -Dcom.ibm.mq.cfg.useIBMCipherMappings=false. Похоже, что это не работает по какой-то причине, и поэтому он использует SSL *** вместо TLS ***. Попробовал другой набор шифров и заметил то же самое поведение. Настроил ту же опцию в вызове JMSAdmin, который генерирует файл привязки, но без использования.

  2. Пробовал с использованием опции предпочитаемого протокола TLS, предоставленной IBM, но в этом случае бесполезной

  3. Попытка указать настройку FIPS на стороне клиента для ДА и НЕТ, но та же проблема

  4. Проверено Java политика и это политика неограниченной юрисдикции

  5. Проверенная Java версия поддерживает настроенный набор шифров TLS ****

  6. Обновленные версии ibm mq jars до 8.0.0.10, которая является клиентской версией wmq на linux , также пробовал 8.0.0.12, 9.0.4.0, 9.1. **

  7. Обновлен jms.jar до 2.0

  8. Получены сертификаты, проверенные из MQ команда, и все они выглядят правильно и завершено

Может кто-нибудь, пожалуйста, дайте мне знать, если они столкнулись с подобной проблемой и как она была решена?

Приложение также использует spring- JMS 3.1.0-RELEASE и Camel-JMS 2.10.0

1 Ответ

0 голосов
/ 24 марта 2020

Наконец-то решена эта проблема. Пришлось настроить -Dcom.ibm.mq.cfg.useIBMCipherMappings=false в двух местах. Один из java поддерживает запуск сервера tomcat, а другой в JMSAdmin, используемый для создания файла привязки.

...