Получение исключения недопустимого ключа с помощью процесса JBOSS с включенным AMS IBM MQ - PullRequest
0 голосов
/ 18 июня 2020

Я получаю следующее сообщение об ошибке при подключении к AMS Enabled IBM-MQ из моей службы, работающей в JBOSS AS 7.0.

2020-06-19 19:12:48,344 ERROR [stderr] (JBOSSEngineThread1-event51129525) Could not initialize log file, java.nio.file.AccessDeniedException: mqjms.log.0.lck
2020-06-19 19:12:48,347 ERROR [stderr] (JBOSSEngineThread1-event51129525) June 19, 2020 11:12:48 PM GMT[JBOSSEngineThread1-event51129525] com.ibm.mq.ese.prot.MessageProtectionBCImpl
2020-06-19 19:12:48,347 ERROR [stderr] (JBOSSEngineThread1-event51129525) The IBM MQ Advanced Message Security Java interceptor failed to protect message.
2020-06-19 19:12:48,347 ERROR [stderr] (JBOSSEngineThread1-event51129525) The IBM MQ Advanced Message Security Java interceptor was not able to protect the message.
2020-06-19 19:12:48,347 ERROR [stderr] (JBOSSEngineThread1-event51129525) See subsequent messages in the exception for more details about the cause of the error.
2020-06-19 19:12:48,347 ERROR [stderr] (JBOSSEngineThread1-event51129525) --------------------------------------------------------------------
2020-06-19 19:12:48,348 ERROR [stderr] (JBOSSEngineThread1-event51129525) June 19, 2020 11:12:48 PM GMT[JBOSSEngineThread1-event51129525] com.ibm.mq.ese.prot.MessageProtectionBCImpl
2020-06-19 19:12:48,348 ERROR [stderr] (JBOSSEngineThread1-event51129525) org.bouncycastle.operator.OperatorCreationException: cannot create signer: Supplied key (null) is not a RSAPrivateKey instance
2020-06-19 19:12:48,348 ERROR [stderr] (JBOSSEngineThread1-event51129525) --------------------------------------------------------------------
2020-06-19 19:12:48,348 ERROR [stderr] (JBOSSEngineThread1-event51129525) June 19, 2020 11:12:48 PM GMT[JBOSSEngineThread1-event51129525] com.ibm.mq.ese.prot.MessageProtectionBCImpl
2020-06-19 19:12:48,348 ERROR [stderr] (JBOSSEngineThread1-event51129525) java.security.InvalidKeyException: Supplied key (null) is not a 
2020-06-19 19:12:48,348 ERROR [stderr] (JBOSSEngineThread1-event51129525) --------------------------------------------------------------------
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525)
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525)
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525)                                     FDCTitle
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525)
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525)
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525) Product          :- ProductName
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525) Date/Time        :- Fri Jun 19 23:12:48 GMT 2020
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525) System time      :- 1592608368365
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525) Operating System :- Linux
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525) UserID           :- abcd
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525) Java Vendor      :- Oracle Corporation
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525) Java Version     :- 25.241-b26
2020-06-19 19:12:48,435 ERROR [stderr] (JBOSSEngineThread1-event51129525)
2020-06-19 19:12:48,436 ERROR [stderr] (JBOSSEngineThread1-event51129525) Source Class     :- com.ibm.mq.ese.intercept.JmqiPutInterceptorImpl
2020-06-19 19:12:48,436 ERROR [stderr] (JBOSSEngineThread1-event51129525) Source Method    :- beforePut
2020-06-19 19:12:48,436 ERROR [stderr] (JBOSSEngineThread1-event51129525) ProbeID          :- MP006004
2020-06-19 19:12:48,436 ERROR [stderr] (JBOSSEngineThread1-event51129525) Thread           :- name=JBOSSEngineThread1-event51129525 priority=5 group=EJB default ccl=ModuleClassLoader for Module "deployment.engineserver.war:main" from Service Module Loader

Тот же служебный код работает нормально, когда AMS отключена. ранее у меня отсутствовала ошибка trustAnchor, которую я решил, объединив сертификаты хранилища ключей и хранилища доверенных сертификатов в один файл jks. Я вижу, что сертификат загружается, и когда я изменил псевдоним сертификата в свойствах хранилища ключей, я получаю сообщение об ошибке недопустимого псевдонима.

my MQS_KEYSTORE_CONF: /apps//keystore.conf

jks.keystore=/apps/<PATH>/app-keystore.jks
jks.certificate=<alias_name for Cert>
jks.encrypted=no
jks.keystore_pass=<keystore password>
jks.key_pass=<keystore password>
jks.provider=IBMJCE

Я использую IBM jar версии 9.0.0.5. Очень признателен за любой вклад, чтобы исправить эту проблему !!

...