具有以下构造函数的PCFMessageAgent如何进行身份验证。需要设置哪些用户/配置权限。我连接到8.0.0.4版的MQ。

public PCFMessageAgent(java.lang.String host,
           int port,
           java.lang.String channel)
            throws MQException

最佳答案

您提供的详细信息不足,无法给出确切答案。该构造函数不允许进行身份验证,它连接到指定的主机/端口/通道,但不传递用户名/密码或不允许使用证书。

如果队列管理器上的通道不需要CONNAUTH(例如:“ CHKCLNT(OPTIONAL)”)或TLS(例如:SSLCIPH / SSLPEER),并且不受CHLAUTH规则的限制,则可以进行连接。

确定哪个用户MQ将用于授权将取决于您的Java进程正在哪个用户下运行,该通道的MCAUSER属性以及任何可将您映射到其他MCAUSER的CHLAUTH规则。根据最终的MCAUSER值,MQ将检查您是否对SYSTEM.ADMIN.COMMAND.QUEUE以及用于创建用于答复的临时动态队列的模型队列具有权限。



如果要提供用户名和密码或使用证书,则需要创建一个MQQueueManager并使用此构造函数传递它而不是主机/端口/通道:


PCFMessageAgent(MQQueueManager qmanager)

  
  使用现有的队列管理器连接初始化新的PCFMessageAgent。

10-08 17:38