Ibm mq 获得';未经授权';通过命令行创建MQ sub时

Ibm mq 获得';未经授权';通过命令行创建MQ sub时,ibm-mq,Ibm Mq,我试图在linux安装上通过命令行创建IBM MQ SUB,我得到: AMQ8135: Not authorized. 我的日志显示: AMQ8009: Entity '' has insufficient authority to access topic string 'WW/XX/YY'. EXPLANATION: The specified entity is not authorized to access the required topic. The following perm

我试图在linux安装上通过命令行创建IBM MQ SUB,我得到:

AMQ8135: Not authorized.
我的日志显示:

AMQ8009: Entity '' has insufficient authority to access topic string 'WW/XX/YY'.
EXPLANATION: The specified entity is not authorized to access the required topic.
The following permissions were requested: altusr/ctrl
看起来命令行没有从它试图查找的位置获取实体值,不确定它在哪里

但令人困惑的是,其他mq对象(队列/主题)的创建在命令行上工作得很好,甚至create SUB在MO71上工作,在cmd上失败

文件权限看起来不错,环境变量对我来说也不错,除非

cmd-  DEFINE SUB('ABC.1') TOPICSTR('xx/yy/zz') DEST('lq.abc') 

任何人都遇到过这样的问题/解决了这样的问题?

为了成功运行
定义子命令,您运行它的用户ID需要以下权限(您可以通过查看
AMQERR01.LOG
中的整个
AMQ8009
消息,特别是解释:部分,来解决这些问题)

  • 在最近的管理主题对象上按ctrl
  • 放在指定的目标队列上
  • 也读

    • (对于输出的权限-
      put
      -订阅所需)
    例如,让我们假设:-

    • TOPIC(XYZ)
      定义为
      TOPICSTR('xx/yy/zz')
    • 队列(LQ.ABC)
      存在
    • 运行该命令的非特权用户ID是组
      mqgemadm
    然后,您需要设置以下两个权限(超过您可能已经为此组设置的权限,以便能够发出一般命令):-

    如果您认为您的用户id已经拥有这些权限,并且失败的原因是该用户id没有进入命令,则可以尝试将
    子用户
    字段添加到命令中

    DEFINE SUB('ABC.1') TOPICSTR('xx/yy/zz') DEST(LQ.ABC) SUBUSER('mqgemusr')
    

    如果这样做有效,但没有
    子用户
    仍然失败,建议您通过PMR/支持案例向IBM报告缺陷。

    为了成功运行
    定义子
    命令,您运行它的用户ID需要以下权限(您可以通过查看
    AMQERR01.LOG
    中的整个
    AMQ8009
    消息,特别是解释:部分,来解决这些问题)

    • 在最近的管理主题对象上按ctrl
    • 放在指定的目标队列上
    也读

    • (对于输出的权限-
      put
      -订阅所需)
    例如,让我们假设:-

    • TOPIC(XYZ)
      定义为
      TOPICSTR('xx/yy/zz')
    • 队列(LQ.ABC)
      存在
    • 运行该命令的非特权用户ID是组
      mqgemadm
    然后,您需要设置以下两个权限(超过您可能已经为此组设置的权限,以便能够发出一般命令):-

    如果您认为您的用户id已经拥有这些权限,并且失败的原因是该用户id没有进入命令,则可以尝试将
    子用户
    字段添加到命令中

    DEFINE SUB('ABC.1') TOPICSTR('xx/yy/zz') DEST(LQ.ABC) SUBUSER('mqgemusr')
    

    如果这样做有效,但没有
    子用户
    仍然失败,建议您通过PMR/支持案例向IBM报告缺陷。

    当您收到
    AMQ8135
    错误时,
    AMQ8009
    错误显示了什么。通常
    AMQ8009
    错误应该比您粘贴的错误更多。在中的
    AMQ8009
    错误e> AMQERR01.LOG仍然会告诉您您缺少权限的主题以及您缺少的权限。我猜您需要子权限。您使用什么工具来发出MQSC命令,例如
    runmqsc
    ?您指的是什么环境变量?IBM MQ的哪个版本?JoshMC-这是我的日志-03/09/2020 10:31:55 AM-过程(93102.236)用户(mqm)程序(amqzlaa0)VRMF(8.0.0.9)QMgr(Qmgr1)AMQ8009:实体“”没有足够的权限访问主题字符串“WW/XX/YY”。说明:指定的实体无权访问所需的主题。请求了以下权限:altusr/ctrl8.0.0.9包含许多与用户身份验证(CONNAUTH)相关的固定权限和CHLAUTH规则。我建议您更新到8.0.0.14最新版本或更好的版本,然后升级到最新的9.0或9.1版本(8.0将在2020年4月底停止支持)。这可能无法解决问题,但至少可以排除自8.0.0.9以来所做的任何更改。
    AMQERR01.LOG
    在您获得
    AMQ8135
    错误时显示了什么。
    AMQ8009
    错误应该比您粘贴的错误更多。通常
    amqrr01.LOG
    中的
    AMQ8009
    错误仍然存在告诉你们两个你们缺乏权限的主题以及你们缺乏的权限。我猜你们需要子权限。你们使用什么工具来发出MQSC命令,例如
    runmqsc
    ?你们指的是什么环境变量?IBM MQ的什么版本?JoshMC-这是我的日志-03/09/2020 10:31:55 AM-Process(93102.236)User(mqm)程序(amqzlaa0)VRMF(8.0.0.9)QMgr(Qmgr1)AMQ8009:实体“”没有足够的权限访问主题字符串“WW/XX/YY”。说明:指定的实体无权访问所需的主题。请求了以下权限:altusr/ctrl8.0.0.9包含许多与用户身份验证相关的固定权限(CONNAUTH)和CHLAUTH规则。我建议您更新到8.0.0.14最新版本或更好的版本,然后移动到最新的9.0或9.1版本(8.0将在2020年4月底停止支持)。这可能无法解决问题,但至少可以排除自8.0.0.9以来所做的任何更改。一如既往的回答非常好。您是否发现KC中记录了用于此目的的
    ctrl
    ,或者这只是通过跟踪和错误知识实现的?(例如查看整个AMQ8009错误消息)我是通过loo完成的