Подключение клиента mq к серверу mq с зашифрованным каналом с использованием C++ API

У меня есть устаревшее приложение, которое обращается к серверу MQ из клиента MQ с помощью API C++. Как этот API используется для добавления шифрования по каналу подключения к серверу? Я не могу найти место, где сертификат предоставляется объекту imqChannel.


person jmucchiello    schedule 16.09.2020    source источник


Ответы (1)


Вы не предоставляете какой-либо код, который не работает, чтобы помочь вам, поэтому я могу дать только некоторое общее направление.

Вы указываете шифр следующим образом:

pchannel->setSslCipherSpecification("TLS_RSA_WITH_AES_256_CBC_SHA256");

Вы можете указать расположение файлов kdb и sth следующим образом:
(обратите внимание, что в этом примере предполагается найти два файла, /tmp/key.kdb и /tmp/key.sth)

manager.setKeyRepository("/tmp/key");

Вы также можете указать расположение репозитория ключей непрограммно, используя mqclient.ini или установив переменную среды MQSSLKEYR, если вас интересуют эти параметры, прокомментируйте, и я расширю этот ответ.

person JoshMc    schedule 16.09.2020
comment
Кода не было, потому что не было попыток написать какой-либо код, потому что я понятия не имел, как начать: менеджер.setKeyRepository был недостающей частью. Мы изучали непрограммную версию, но камнем преткновения была общая среда, когда нам нужно поддерживать разные диспетчеры очередей, чем мы не контролируем. В любом случае спасибо за информацию. - person jmucchiello; 18.09.2020
comment
@jmucchiello API C ++ был стабилизирован IBM, и функциональность на уровне MQ больше не поддерживается. Они рекомендуют использовать обычный C API из C++. Вы можете поместить mqclient.ini в текущий рабочий каталог процесса, MQ сначала будет смотреть туда. Вы можете использовать это, чтобы иметь конкретные конфигурации процесса - person JoshMc; 18.09.2020
comment
Я хорошо осведомлен о статусе C++ API. Четвертое слово моего вопроса является наследием по какой-то причине. У вас есть URL-адрес, по которому сделана эта рекомендация? Я хотел бы вырвать C++ API, но поскольку это устаревшее приложение... yada yada - person jmucchiello; 19.09.2020