C # - SSL с Websphere MQ версии 7.0.1 - PullRequest
2 голосов
/ 09 декабря 2010

При подключении к администратору очередей с поддержкой SSL с помощью C #, какие значения мне нужно установить, чтобы заставить работать очереди?

В настоящее время я получаю эту ошибку: Код причины: 2393 MQRC_SSL_INITIALIZATION_ERROR

В своем коде я устанавливаю MQEnvironment.SSLKeyRepository и MQEnvironment.SSLCipherSpec

Есть ли что-то еще, что мне нужноустановить с C #, чтобы это работало?Я видел несколько примеров Java, которые устанавливают пароли и типы хранилищ ключей и тому подобное.

Я также видел примеры установки системных переменных среды, но, похоже, это тоже не имело никакого значения.

1 Ответ

1 голос
/ 10 декабря 2010

Общий шаблон для отладки WMQ SSL выглядит следующим образом ...

  1. Получите приложение для подключения без использования SSL.Это устраняет проблемы с подключением, неправильными именами очереди или администратора очередей и т. Д.
  2. Получите SSL, работающий с аутентификацией только на сервере.Это означает настройку SSLCAUTH (ДОПОЛНИТЕЛЬНО) на канале SVRCONN.QMgr предоставит сертификат, которому приложение должно доверять, но приложению не нужно проходить аутентификацию на сервере.Это подтверждает, что и приложение, и QMgr могут получить доступ к своим хранилищам ключей и что сертификат QMgr или цепочка CA должным образом загружены в хранилище ключей приложения.
  3. Наконец, установите SSLCAUTH (REQUIRED) в канале SVRCONN, чтобы приложениеаутентифицируется обратно в QMgr.На данный момент единственными возможными проблемами является то, что QMgr не доверяет сертификату или CA приложения.

Если QMgr отклонит попытку подключения, ошибки на клиенте будут намеренно зашифрованы.Подробные сообщения можно найти в файлах AMQERR ??. LOG QMgr.Если ошибка на клиенте, эти сообщения будут найдены в журналах ошибок клиента, или вы можете включить трассировку.

Включить трассировку с помощью команды strmqtrc и остановить ее с помощью endmqtrc.В руководстве для клиентов WMQ есть раздел , описывающий, где заканчиваются файлы трассировки клиента, и другой раздел , посвященный трассировке в Windows в целом.Это может быть очень полезно при определении проблем конфигурации на стороне клиента, таких как не удается найти закрытый ключ, не удается найти хранилище ключей и т. Д.

В вашем случае, 2393 указывает, что что-то в конфигурации клиента терпит неудачу,Поскольку вы больше не получаете сообщение об ошибке с паролем хранилища ключей, я предполагаю, что у него могут быть проблемы с поиском закрытого ключа или с недоверием к сертификату, предоставленному QMgr.В первом случае настройка SSLCAUTH (ДОПОЛНИТЕЛЬНО) будет работать, потому что клиенту не понадобится его закрытый ключ.Однако, если проблема заключается в доверии QMgr или других проблемах конфигурации, SSLCAUTH (ДОПОЛНИТЕЛЬНО) не поможет, но трассировка должна решить эту проблему.

Кстати, именно поэтому IBM отслеживает и диагностирует на стороне клиентане поддерживает установку клиента, где были скопированы файлы jar или libs вместо полной установки клиента.Хотя вы можете запустить клиент, скопировав несколько файлов и классов lib, это не обеспечивает всех возможностей для трассировки и диагностики.Если вы не выполнили полную установку клиента, то, что я описал здесь, будет невозможно.В этом случае загрузите и установите клиент с SupportPac MQC7 .

...