繁体   English   中英

Unix上的WebSphere MQ安全认证异常

[英]WebSphere MQ Security Authentication Exception on Unix

我们的应用程序在Sun Solaris系统上运行,并具有本地WebSphere MQ安装。 该应用程序使用绑定模式连接到队列管理器。 尝试将消息发送到本地队列时,JNDI绑定成功,但是遇到javax.jms.JMSSecurityException: MQJMS2013: invalid security authentication supplied for MQQueueManager错误javax.jms.JMSSecurityException: MQJMS2013: invalid security authentication supplied for MQQueueManager 经过调查发现,用于身份验证的凭据(用户ID)与运行应用程序的用户不区分大小写。 userid匹配,但不是区分大小写的匹配。 默认情况下,将通过运行应用程序的用户进行身份验证,但是此处区分大小写的匹配失败。 应用程序服务器是WebLogic。 感谢任何输入。

为了打开本地队列,应用程序必须首先成功连接到队列管理器。 远程队列上的错误是连接错误,因此甚至没有到达队列管理器。 这表明您使用的连接工厂不同,而第二个工厂的连接参数有所不同。 第一步是调和这些差异。

另外,MQJMS2013安全错误可能有很多原因,其中大多数实际上并不是MQ问题。 例如,有些人将其托管对象存储在LDAP中,并且身份验证问题将引发此错误。 对于使用基于文件系统的JNDI的人,OS文件权限可能会导致相同的情况。 但是,如果这是实际的WMQ问题(看来是这样),则链接的异常将包含MQ原因代码(例如MQRC = 2035)。 如果您希望能够更好地诊断MQ(或就此而言,任何JMS传输)问题,则要养成打印链接异常的习惯。

如果您不能根据此输入解决此问题,建议您使用托管对象定义的详细信息以及从打印链接的异常中获取的原因代码来更新问题。

我们在QueueConnectionFactory中使用createQueueConnection()创建连接,并且通过使用方法createQueueConnection(“”,“”)解决了该问题。 UNIX用户标识(webA)区分大小写,并且应用程序尝试使用不区分大小写的用户标识(weba)在MQ上进行身份验证,并且MQ队列管理器拒绝连接尝试。 您能否告诉我们为什么应用程序较早发送了不区分大小写的用户ID(Weba)?

谢谢,阿伦

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM