невозможно подключить приложение к администратору очередей при получении ошибки JMSWMQ2013 - PullRequest
0 голосов
/ 27 апреля 2018

мы используем websphere MQ версии 9.0.0.1, в основном мы настроили установку активного / пассивного кластера на машине linux, все администраторы очередей работают нормально на обоих активных / пассивных узлах. Мы настроили очереди каналов в администраторах очередей , пока приложение пытается подключиться к моему администратору очередей, мы сталкиваемся с ошибками

ниже ошибки при получении на стороне приложения.

The Security athuntication was not valid that supplied for  QUEUEMANAGER 'xxxxx_OUTWARD'WITH CONNECTION 'CLIENT' and HOST NAME 'xxxxx'PLEASE CHECK IF THE ERROR QUEUEMANAGER 'xxxxx_OUTWARD'WITH CONNECTION MODE 'CLIENT'AND HOST NAME'xxxxxx.

ниже ОШИБКИ, которую мы нашли в журналах ошибок уровня queuemanager

----- cmqxrsrv.c : 2362 -------------------------------------------------------
04/27/2018 07:52:35 PM - Process(29498.16) User(mqm) Program(amqzlaa0)
                    Host(xxxxxxx) Installation(Installation2)
                    VRMF(9.0.0.1) QMgr(xxxxx_INWARD)

AMQ5534: User ID 'mqm' authentication failed

EXPLANATION:
The user ID and password supplied by the 'WebSphere MQ Client for Java' program
could not be authenticated. 
Additional information: 'N/A'.
ACTION:
Ensure that the correct user ID and password are provided by the application.
Ensure that the authentication repository is correctly configured. Look at
previous error messages for any additional information.
----- amqzfuca.c : 4486 -------------------------------------------------------
04/27/2018 07:52:35 PM - Process(29498.16) User(mqm) Program(amqzlaa0)
                    Host(JPRIPAYMENTMQ2) Installation(Installation2)
                    VRMF(9.0.0.1) QMgr(xxxxx_INWARD)

AMQ5542: The failed authentication check was caused by the queue manager
CONNAUTH CHCKCLNT(OPTIONAL) configuration.

EXPLANATION:
The user ID 'mqm' and its password were checked because the queue manager
connection authority (CONNAUTH) configuration refers to an authentication
information (AUTHINFO) object named 'SYSTEM.DEFAULT.AUTHINFO.IDPWOS' with
CHCKCLNT(OPTIONAL). 

This message accompanies a previous error to clarify the reason for the user ID
and password check.
ACTION:
Refer to the previous error for more information. 

Ensure that a password is specified by the client application and that the
password is correct for the user ID. The authentication configuration of the
queue manager connection determines the user ID repository. For example, the
local operating system user database or an LDAP server. 

If the CHCKCLNT setting is OPTIONAL, the authentication check can be avoided by
not passing a user ID across the channel. For example, by omitting the MQCSP
structure from the client MQCONNX API call. 

To avoid the authentication check, you can amend the authentication
configuration of the queue manager connection, but you should generally not
allow unauthenticated remote access.
-------------------------------------------------------------------------------
04/27/2018 07:52:36 PM - Process(18265.105) User(xxx) Program(amqrmppa)
                    Host(xxxxx) Installation(Installation2)
                    VRMF(9.0.0.1) QMgr(xxxxx_INWARD)

AMQ9557: Queue Manager User ID initialization failed for 'mqm'.

EXPLANATION:
The call to initialize the User ID 'mqm' failed with CompCode 2 and Reason
2035. If an MQCSP block was used, the User ID in the MQCSP block was 'mqm'.
ACTION:
Correct the error and try again.
----- cmqxrsrv.c : 2362 -------------------------------------------------------

после этого я предоставил разрешение пользователю 'mqm' на уровне администратора очередей и на уровне очереди с помощью приведенной ниже команды, но мы все еще сталкиваемся с той же ошибкой.

setmqaut -m queue manager name -t qmgr -p mqm +connect & 
setmqaut -m queue manager name -n queue name -t queue -p mqm user name +all

может ли кто-нибудь помочь в решении этой проблемы

@ Мораг Хьюсон: - Как отключить ИД и пароль на уровне администратора очередей

@ Мораг Хьюсон: - Любая команда для отключения идентификатора пользователя и пароля, пожалуйста, поделитесь командой для решения этой проблемы.

@ JoshMC: - если я его выключил, то это хорошая практика или есть какой-то другой способ решить эту проблему со стороны администратора очередей / приложения?

@ Привет всем, я был проинформирован о том, что приложение разместило сообщения без указания идентификатора пользователя и пароля. После этого мое приложение получило доступ ко всем администраторам очередей. проблема решена Спасибо всем за помощь в решении этой проблемы.

Ответы [ 2 ]

0 голосов
/ 28 апреля 2018

Сообщения об ошибках диспетчера очереди сообщают вам точно проблему. Сначала говорится: -

AMQ5534: User ID 'mqm' authentication failed

EXPLANATION:
The user ID and password supplied by the 'WebSphere MQ Client for Java' program
could not be authenticated. 

Итак, приложение Java, которое пыталось подключиться через клиента, отправляло «mqm» в качестве идентификатора пользователя и либо неверного пароля (или, возможно, вообще никакого пароля).

Пароль проверяется администратором очередей. Второе сообщение об ошибке сообщает вам, ПОЧЕМУ оно проверяется.

AMQ5542: The failed authentication check was caused by the queue manager
CONNAUTH CHCKCLNT(OPTIONAL) configuration.

EXPLANATION:
The user ID 'mqm' and its password were checked because the queue manager
connection authority (CONNAUTH) configuration refers to an authentication
information (AUTHINFO) object named 'SYSTEM.DEFAULT.AUTHINFO.IDPWOS' with
CHCKCLNT(OPTIONAL). 

Конфигурация, описанная во втором сообщении об ошибке, по умолчанию присутствует в вашем администраторе очередей.

У вас есть два варианта.

  1. Отправьте правильный пароль для использования с идентификатором пользователя mqm в приложении Java.
  2. Выберите, чтобы отключить проверку идентификатора пользователя и пароля в администраторе очередей.
0 голосов
/ 27 апреля 2018

Прежде всего, никакие приложения не должны использовать учетную запись mqm, за исключением MQAdmins и тех служб MQ, которые работают под учетной записью mqm. Обычные бизнес-приложения НИКОГДА не должны использовать учетную запись mqm. Это БОЛЬШАЯ угроза безопасности, которая противоречит рекомендациям IBM MQ Best Practices.

Во-вторых, учетная запись mqm уже обладает всеми правами доступа.

setmqaut -m queue manager name -t qmgr -p mqm +connect & 
setmqaut -m queue manager name -n queue name -t queue -p mqm +all

Вы пытаетесь дать разрешение на UserId, который уже имеет полное разрешение.

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

Да, сообщение об ошибке не о авторизации, а, как указал JoshMc, о аутентификации . Команда setmqaut предназначена для авторизации (т.е. разрешения).

В-пятых, создайте UserId и пароль на сервере, на котором вы запускаете администратор очередей (или используете MS AD), и укажите эти учетные данные, когда ваше приложение подключается к администратору очередей. Примечание: вам нужно будет использовать команду setmqaut, чтобы дать вашему новому UserId разрешение на доступ к администратору очередей и очередям.

...