Ibm mq 是否可以将MQIPT配置为对MQ客户端为特定连接设置的凭据进行身份验证

Ibm mq 是否可以将MQIPT配置为对MQ客户端为特定连接设置的凭据进行身份验证,ibm-mq,Ibm Mq,场景:MQIPT在MQ客户端和MQ服务器版本8之间使用 是否可以在MQIPT验证随通道连接一起发送的凭据。我检查了文档,似乎无法完成,除非为其编写某种安全出口 我只是想了解一下,如果可能的话,如何实现这个目标 谢谢。MQIPTcom.ibm.mq.ipt.exit.SecurityExit和com.ibm.mq.ipt.exit.CertificateExit类不会公开客户端通道的用户名和密码信息。下面是IBM关于这两种出口的文档 IBM v9.0知识中心中记录了以下信息: 公共安全出口响应验证

场景:MQIPT在MQ客户端和MQ服务器版本8之间使用

是否可以在MQIPT验证随通道连接一起发送的凭据。我检查了文档,似乎无法完成,除非为其编写某种安全出口

我只是想了解一下,如果可能的话,如何实现这个目标


谢谢。

MQIPT
com.ibm.mq.ipt.exit.SecurityExit
com.ibm.mq.ipt.exit.CertificateExit
类不会公开客户端通道的用户名和密码信息。下面是IBM关于这两种出口的文档

IBM v9.0知识中心中记录了以下信息:

公共安全出口响应验证(IPTrace)
以下属性可用:

  • 侦听器端口
  • 目的地
  • 目的港
  • 超时
  • 客户端IP地址
  • 客户端端口地址
  • 频道名称
  • 队列管理器名称
MQIPT在收到验证消息时将调用验证方法 要验证的连接请求。通道名称和队列管理器 如果已删除SSLProxyMode属性,则名称将不可用 已启用,因为此功能仅用于隧道SSL/TLS数据和 因此,通常从初始数据流获得的数据将 不可读

IBM v9.0知识中心中记录了以下信息:

支持的获取属性的方法:
public int getListenerPort()

检索由ListenerPort定义的路由侦听器端口 财产

公共字符串getDestination()

检索目标地址-由目标定义 财产

public int getDestinationPort()

检索目标侦听器端口地址-由 目的港物业

公共字符串getClientIPAddress()

检索发出连接请求的客户端的IP地址

public int getClientPortAddress()

检索进行连接的客户端使用的端口地址 请求

公共布尔isSSLClient()

用于确定出口是否被称为SSL/TLS客户端或 SSL/TLS服务器。如果返回true,则退出位于客户端 验证从中获取的证书 服务器。如果返回false,则出口位于 连接,验证客户端发送的证书。它是有效的 对于同时充当SSL/TLS服务器和SSL/TLS客户端的路由, 对流量进行解密和重新加密。在这种情况下,尽管 只有一个exit类,该类的一些实例将 称为客户端,有些称为服务器。您可以使用isSSLClient 确定给定实例的情况

public int getconnthreadd()

用于检索正在处理的工作线程的ID 连接请求,这对调试很有用

公共字符串getChannelName()

检索连接中使用的IBM®MQ通道名称 要求这仅在传入请求未使用时可用 SSL/TLS和MQIPT充当SSL/TLS客户端

公共字符串getQMName()

检索连接中使用的IBM MQ队列管理器的名称 要求这仅在客户端请求未使用时可用 SSL/TLS和MQIPT充当SSL/TLS客户端

公共布尔getTimedout()

出口用于确定超时是否已过期

公共IPTCertificate getCertificate()

检索需要验证的SSL/TLS证书

公共字符串getExitData()

检索SSLExitData属性定义的退出数据

公共字符串getExitName()

检索SSLExitName属性定义的出口名称


如果您在MQIPT讨论用户名-密码验证,那么您的评估是正确的,它无法做到这一点。您可以让客户端使用证书,并让MQIPT根据证书DN和签名者DN匹配证书。谢谢。我正在使用您指定的证书配置。@JoshMc,您知道我们是否可以读取MQIPT安全出口中的用户/密码。我的发现:MQIPT使用SecurityExit/CertificateExit类启动验证过程,只允许少量可用的连接信息,如通道名称、QM名称、客户端IP、,端口等,但无法获取任何可用于读取用户/密码详细信息的信息如果您发现我在答案中提供的信息有用,请单击答案左侧向下箭头下方的灰色复选标记接受。