使用各种教程尝试在处理付款的代理服务中进行双向SSL连接 . 使用Weblogic服务器10.3.5,在受信任的密钥库'cacerts'中添加了证书 . 从curl可以测试这笔付款 - 有ssl.key,ssl.cer和ssl.crt - 一切都很好 .
使用keytool实用程序将它们添加到'cacerts',如下所示:
-
将ssl.key和ssl.cer转换为一个文件ssl.p12
-
使用别名'demo'将ssl.crt添加到'cacerts'
-
使用别名'1'将ssl.p12添加到'cacerts'
导入密钥库到Weblogic并重新启动服务器 . 在OSB服务代理中,将HTTP传输配置设置为“使用客户端证书启用” . 在业务服务中,HTTP方法设置为POST,并使用https://添加 endpoints uri .
在sbconsole中测试时收到此类错误:
General runtime error: [Security:090497]HANDSHAKE_FAILURE alert received from demo - *.*.*.*. Check both sides of the SSL configuration for mismatches in supported ciphers, supported protocol versions, trusted CAs, and hostname verification settings.
你能告诉我哪里出错了吗?
1 回答
启用调试!能够追踪这类问题原因的唯一方法 . 我添加了一个带有此值的环境变量JAVA_OPTIONS:“ - Dssl.debug = true -Dweblogic.StdoutDebugEnabled = true -Djavax.net.debug = all”
此外,在WLS中,我启用了以下主题的调试: - > Environment-> Servers-> AdminServer:选项卡'Debug': - 默认值:DebugSSL - Weblogic,节点'Security':certpath,certrevocchecking,credmap,keystore和ssl
你仍然需要做很多挖掘,但至少有错误信息!