Чтобы успешно выполнить команду DEFINE SUB
, для идентификатора пользователя, с которым вы ее запускаете, требуются следующие полномочия (вы можете проверить их, просмотрев все сообщение AMQ8009
в вашем AMQERR01.LOG
, в частности, ОБЪЯСНЕНИЕ: раздел).
ctrl
в ближайшем административном объекте topi c * put
в именованной очереди назначения
Также прочитайте
В качестве примера, давайте предположим: -
TOPIC(XYZ)
определяется с TOPICSTR('xx/yy/zz')
QUEUE(LQ.ABC)
существует - Идентификатор непривилегированного пользователя, выполняющего команду, является членом группы
mqgemadm
Затем необходимо установить следующие две привилегии (сверх и выше все, что вы уже могли установить для этой группы, чтобы иметь возможность выдать ommands в общем): -
SET AUTHREC PROFILE(XYZ) OBJTYPE(TOPIC) GROUP('mqgemadm') AUTHADD(ctrl)
SET AUTHREC PROFILE(LQ.ABC) OBJTYPE(QUEUE) GROUP('mqgemadm') AUTHADD(put)
Если вы считаете, что у вашего идентификатора пользователя уже есть эти разрешения, и причина его сбоя заключается в том, что идентификатор пользователя не входит в команду, вы можете попробовать добавить SUBUSER
поле для команды.
DEFINE SUB('ABC.1') TOPICSTR('xx/yy/zz') DEST(LQ.ABC) SUBUSER('mqgemusr')
Если это работает, но без SUBUSER
все еще не удается, предложите сообщить об ошибке в IBM через PMR / случай поддержки.