使用托管客户端时出现 MQRC_Q_MGR_NOT_AVAILABLE

Yur*_*uri 5 ssl-certificate mq c#-4.0 ibm-mq

收到签名证书,安装在 Windows 用户证书中。使用来自 MQ 的公钥存储,但收到 MQRC_Q_MGR_NOT_AVAILABLE 错误?

 <add key="sslCertStore" value="*USER"/> 
 <add key="SslCipherSpec" value="TLS_RSA_WITH_AES_128_CBC_SHA256"/>
Run Code Online (Sandbox Code Playgroud)

少了什么东西?

编辑 还有一个问题 - 证书应该放在哪里才能使用

<add key="sslCertStore" value="*SYSTEM"/> 
Run Code Online (Sandbox Code Playgroud)

Rob*_*ker 3

看看评论和问题我看到你提到

收到签名证书,使用来自 MQ 的公钥安装在 Windows 用户证书存储中

当 SSL 在服务器上是可选的时,一切都会神奇地起作用

由此,我相信您正在尝试将客户端连接到队列管理器,其中客户端应用程序拥有自己的证书。因为您没有指定客户端使用的证书,所以我不相信客户端正在与您添加到 Windows 证书存储中的(签名)证书进行连接。这就是为什么当 SSL 设置为可选时它可以工作,但当 SSL 设置为必需时它不起作用。(假设您正在谈论通道上的 SSLCAUTH 属性)

这个知识中心页面我相信您需要添加以下内容:

<add key="CertificateLabel" value="certificatelabel"/>
Run Code Online (Sandbox Code Playgroud)

certificatelabel替换为您希望客户端使用的证书的标签。