Websphere MQ 服务器配置以允许来自客户端的传入连接
Websphere MQ Server configuration to allow incoming connections from client
我过去制作了一个简单的 websphere 客户端,用于连接到我们客户端的 websphere mq 服务器 - 它可以工作。
现在,我想用它来尝试和测试我自己的 webspehere mq 服务器(试用版)。
我已经为 windows 下载了 8.0.0.4 websphere MQ 服务器,并安装了它,但现在我无法连接到它。我尝试了一些方法,根据一些在线教程手动配置所有内容,但后来我尝试了一种更简单的方法,卸载了所有内容并重新安装,并使用了 websphere 的默认配置工具。
一切顺利,我可以快速轻松地使用明信片应用程序。
但是,现在我正尝试通过我自己的客户端(c#,使用 IBM 客户端库)访问它。
看来我可以连接到侦听器。
默认情况下,在 MQ 中创建了两个通道。
S_SomeName 和 TO_QM_SomeName。
如果我连接到 S_SomeName,我会收到错误“2035 MQRC_NOT_AUTHORIZED” - 这似乎很好地表明一切正常,因为这是一些服务器连接,并且它使用默认情况下被阻止的管理员用户从作为客户端访问它。 (这就是我的理解。我对此很陌生)。
所以我尝试了 TO_QM_SomeName 希望它能让我访问任何默认创建的或我创建的队列。
但是现在,我收到错误“2059 MQRC_Q_MGR_NOT_AVAILABLE”或“2539 MQRC_CHANNEL_CONFIG_ERROR”- 我一直在玩库 versions/server 设置,不记得我在哪个错误上遇到了哪个错误。好吧……我现在有点迷路了。我找不到启用某些用户权限的任何设置或任何使其工作的设置。
我错过了什么?需要哪些步骤才能使默认配置也适用于从网络上的 localhost/somewhere 连接的客户端?
好的,由于评论中建议查看日志,我找到了答案。 (我对 mq 服务器完全陌生:)
因此,第一件事是找到日志,它们是 C:\ProgramData\IBM\MQ\qmgrs\\errors 而不是在程序文件中(文档首先指出我)。
接下来,只需阅读和分析日志,我就知道出了什么问题。
我正在访问不正确的频道 TO_QM_SomeName(也有评论)而不是 S_SomeName。但是,要访问 S_SomeName,我必须向客户端添加 user/password 组合,或者在服务器上删除 user/password 验证。我选择了第二个选项。
为此,我必须输入以下内容:
ALTER AUTHINFO(SYSTEM.DEFAULT.AUTHINFO.IDPWOS) AUTHTYPE(IDPWOS) CHCKCLNT(可选)
刷新安全类型(CONNAUTH)
在 runmqsc 程序中,然后在 mq 资源管理器中删除通道中阻止所有连接的阻止规则。瞧,我现在可以连接到我的服务器了。感谢您的提示。
我过去制作了一个简单的 websphere 客户端,用于连接到我们客户端的 websphere mq 服务器 - 它可以工作。
现在,我想用它来尝试和测试我自己的 webspehere mq 服务器(试用版)。 我已经为 windows 下载了 8.0.0.4 websphere MQ 服务器,并安装了它,但现在我无法连接到它。我尝试了一些方法,根据一些在线教程手动配置所有内容,但后来我尝试了一种更简单的方法,卸载了所有内容并重新安装,并使用了 websphere 的默认配置工具。
一切顺利,我可以快速轻松地使用明信片应用程序。 但是,现在我正尝试通过我自己的客户端(c#,使用 IBM 客户端库)访问它。 看来我可以连接到侦听器。 默认情况下,在 MQ 中创建了两个通道。 S_SomeName 和 TO_QM_SomeName。 如果我连接到 S_SomeName,我会收到错误“2035 MQRC_NOT_AUTHORIZED” - 这似乎很好地表明一切正常,因为这是一些服务器连接,并且它使用默认情况下被阻止的管理员用户从作为客户端访问它。 (这就是我的理解。我对此很陌生)。
所以我尝试了 TO_QM_SomeName 希望它能让我访问任何默认创建的或我创建的队列。 但是现在,我收到错误“2059 MQRC_Q_MGR_NOT_AVAILABLE”或“2539 MQRC_CHANNEL_CONFIG_ERROR”- 我一直在玩库 versions/server 设置,不记得我在哪个错误上遇到了哪个错误。好吧……我现在有点迷路了。我找不到启用某些用户权限的任何设置或任何使其工作的设置。 我错过了什么?需要哪些步骤才能使默认配置也适用于从网络上的 localhost/somewhere 连接的客户端?
好的,由于评论中建议查看日志,我找到了答案。 (我对 mq 服务器完全陌生:) 因此,第一件事是找到日志,它们是 C:\ProgramData\IBM\MQ\qmgrs\\errors 而不是在程序文件中(文档首先指出我)。 接下来,只需阅读和分析日志,我就知道出了什么问题。 我正在访问不正确的频道 TO_QM_SomeName(也有评论)而不是 S_SomeName。但是,要访问 S_SomeName,我必须向客户端添加 user/password 组合,或者在服务器上删除 user/password 验证。我选择了第二个选项。 为此,我必须输入以下内容: ALTER AUTHINFO(SYSTEM.DEFAULT.AUTHINFO.IDPWOS) AUTHTYPE(IDPWOS) CHCKCLNT(可选)
刷新安全类型(CONNAUTH) 在 runmqsc 程序中,然后在 mq 资源管理器中删除通道中阻止所有连接的阻止规则。瞧,我现在可以连接到我的服务器了。感谢您的提示。