java - 发生 MQException : Completion Code 2, 原因 2400 MQJE011:套接字连接尝试被拒绝

标签 java ssl ibm-mq

我编写了一个程序将消息放入 MQ 中。当我没有适当的 SSL 配置时,它工作正常。如果我在 QueueManager 和 Channel 中配置 SSL,总是会发生 MQException:完成代码 2,原因 2400 MQJE011:套接字连接尝试被拒绝。尝试使用不同的密码套件 请告知如何解决它。

SSL 属性:

com.ibm.mq.MQEnvironment.sslCipherSuite = "TLS_RSA_WITH_AES_256_GCM_SHA384"; 
System.setProperty("javax.net.ssl.trustStore", "D:/keystore/testKS.jks");
System.setProperty("javax.net.ssl.trustStorePassword", "12345678");
System.setProperty("javax.net.ssl.keyStore", "D:/keystore/testKS.jks");
System.setProperty("javax.net.ssl.keyStorePassword", "12345678");

最佳答案

此答案特定于 Java 代码。

Java JRE(包括 Oracle/Sun 和 IBM 的)启用了加密算法的导入限制。这限制了最大 key 大小以及一些算法。

尝试使用 AES 256 密码时,例如 ECDHE_RSA_AES_256_CBC_SHA384TLS_RSA_WITH_AES_256_CBC_SHA256 ,您需要确保 JRE 支持此密码。在大多数情况下,当需要更强的密码算法时,例如 AES 256 密码,必须获取 JCE Unlimited Strength Jurisdiction Policy Files 并将其安装在 JDK/JRE 中。

JDK/JRE 文档中提到了这一点:对于 Oracle 1.7:

http://docs.oracle.com/javase/7/docs/technotes/guides/security/SunProviders.html

对于 IBM JRE:** 使用 AES_256 的密码套件需要安装 JCE Unlimited Strength Jurisdiction Policy Files。

http://www-01.ibm.com/support/knowledgecenter/SSYKE2_7.0.0/com.ibm.java.security.component.71.doc/security-component/jsse2Docs/ciphersuites.html?lang=en

这类似于在 IBM MQ Explorer 中指出的问题:

https://developer.ibm.com/answers/questions/187285/why-is-a-mqrc-ssl-initialization-error-displayed-w.html

请使用 MSPKI 和密码值“TLS_RSA_WITH_AES_256_CBC_SHA”更新此运行的 JAR 文件

将支持所有算法的新策略 jar,您需要将 jar 更新到您的 C:\java-8\jdk1_8_0\jre\lib\security

http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html

关于java - 发生 MQException : Completion Code 2, 原因 2400 MQJE011:套接字连接尝试被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35292388/

相关文章:

java - 如何使用 Chrome Chromedriver 79 和 Selenium Java 下载 .xml 文件时隐藏警告 "This type of file can harm your computer"

java - RESTEasy 启用 GZIP 支持?

java - 如何从外部不相关的代码读取正在运行的 Swing GUI 的 TextField 或 Cell 值?

python - 使用Python获取smtp服务器证书

ssl - puppet : Did not receive certificate

java - 将 Java 客户端 (JMS) 连接到 IBM MQ 时出现问题

c# - Websphere MQ 队列深度与 XMS.Net

java - 露天文件夹树 opencmis

基于 HTTPS 的 Perl XML-RPC

java - 如何设计MQ Server?