1

我正在使用Worklight 6.0.1。我在验证证书时遇到问题。我可以以某种方式删除适配器中的证书检查用于PoC项目吗?IBM Worklight Server 6.1 - 后端适配器 - javax.net.ssl.SSLException:证书中的主机名不匹配

我无法在Worklight服务器上快速安装正确的证书。这个答案并没有提供正确的答案:Disabling certificate hostname verification

[ERROR ] FWLSE0099E: An error occurred while invoking procedure [project POD]html/HttpRequestFWLSE0100E: parameters: [project POD]{ 
    "arr": [ 
     { 
     "method": "get", 
     "path": "mobile", 
     "returnedContentType": "html" 
     } 
    ] 
} 

Http request failed: javax.net.ssl.SSLException: hostname in certificate didn't match: <xxx> != <xxx> OR <xxx> 
FWLSE0101E: Caused by: [project POD]javax.net.ssl.SSLException: hostname in certificate didn't match: <xxx> != <xxx> OR <xxx>java.lang.RuntimeException: Http request failed: javax.net.ssl.SSLException: hostname in certificate didn't match: <xxx> != <xxx> OR <xxx> 
     at com.worklight.adapters.http.HTTPConnectionManager.execute(HTTPConnectionManager.java:241) 
     at com.worklight.adapters.http.HttpClientContext.doExecute(HttpClientContext.java:176) 
     at com.worklight.adapters.http.HttpClientContext.execute(HttpClientContext.java:160) 
+1

也许你可以调整你的'hosts'文件,并将证书名称指向你要使用的机器(并使用这些URL)。 – Bruno

+0

谢谢你的想法。我会研究这一点。我一直认为在Java服务器上有一些配置选项可以禁用这种SSL测试用于开发/测试目的? – christianmenkens

+0

“我一直认为在Java服务器上有一些配置选项可以禁用这样的SSL测试......” - 它不是服务器。它是执行主机名验证的客户端。 – jww

回答

0

我的理解是,你在你的适配器使用WL.Server.invokeHttp调用后端HTTPS服务吗?

没有开箱即用的选项来从这些调用中删除证书验证。如果您在适配器配置中指定了https协议,则必须使用有效的https配置。

解决方法之一是在worklight服务器中使用java实现自己的https呼叫,并从适配器调用它。但这样你将跳过worklight http适配器的一个值,也许它会消耗更多的时间来完成POC。

相关问题