Ssl certificate IBM Worklight:使用负载平衡器在测试环境中实现自签名CA

Ssl certificate IBM Worklight:使用负载平衡器在测试环境中实现自签名CA,ssl-certificate,ibm-mobilefirst,worklight-server,worklight-security,ibmhttpserver,Ssl Certificate,Ibm Mobilefirst,Worklight Server,Worklight Security,Ibmhttpserver,我在测试环境中有以下实现 前端服务器[IBM HTTP服务器+IBM Websphere插件] WLServer1[IBM Worklight 6.2+IBM DB2 10.1+Liberty Farm 8.5.5.1]和 WLServer2[IBM Worklight 6.2+IBM DB2 10.1+Liberty Farm 8.5.5.1] plugincfg.xml已从每个Worklight服务器生成并合并 在前端服务器的IBM Websphere plugin中部署合并的plugin-

我在测试环境中有以下实现

  • 前端服务器[IBM HTTP服务器+IBM Websphere插件]
  • WLServer1[IBM Worklight 6.2+IBM DB2 10.1+Liberty Farm 8.5.5.1]和
  • WLServer2[IBM Worklight 6.2+IBM DB2 10.1+Liberty Farm 8.5.5.1]
  • plugincfg.xml已从每个Worklight服务器生成并合并

    在前端服务器的IBM Websphere plugin中部署合并的plugin-cfg.xml后,来自多个设备的请求[http]会被定向到worklight server的

    如何实现相同的服务HTTPS请求

    我还从Worklight模块实现了“UserCertificateAuthenticationProject”,该模块将设备[HTTPS]直接连接到Worklight server

    注意仅在Android上测试

    帮助我理解如何通过IHS在测试环境中实现HTTPS

    生产环境中的程序应该是什么


    注意IBM Worklight 6.2支持Android、IOS、Blackberry和Windows,因此我必须在所有平台上实现

    听起来您遇到的问题与此类似:出现无响应主机错误的原因有两个:

  • 您的设备无法访问服务器(它们不在同一网络中)
  • 设备不信任服务器的证书
  • 因为您可以连接到HTTP连接,所以它不是#1,所以应该是#2。我上面提到的另一个问题的答案应该可以解决你的问题。确保在WL Logger中打开跟踪级别日志,以便可以看到有关不受信任证书的异常

    编辑:展开此答案;要使用HTTPS,您的服务器需要SSL证书来标识自身,否则设备无法证明它连接到了正确的服务器,而不是可能是恶意的随机服务器。您应该已经有一个您正在服务器中使用的证书;如果没有,请继续阅读

    您通常从两个地方中的一个获得SSL证书:您可以使用受信任的证书颁发机构(例如Verisign)颁发给您的证书,也可以创建一个用于内部测试的证书。在您的情况下,您可能希望创建自己的证书,因此您应该遵循“Client X.509证书验证和用户注册”入门,特别是有关生成服务器证书的部分

    一旦您设置了该证书,您应该配置您的服务器以使用它;为此,请按照说明进行操作。完成此操作后,最后一步是让设备信任服务器的证书。为此,请遵循上面的“入门”中的最后一部分,它向您展示了如何使iOS/Android设备信任服务器。你也必须在Windows和黑莓上查看如何做到这一点


    在此之后,您现在应该能够通过HTTPS成功连接。(始终确保当您遇到“无响应主机”错误时,您仍然可以通过浏览器连接到HTTP控制台,以确保您与服务器连接到同一网络。我知道您已经按照问题中的说明进行了此操作,我只是提醒您,因为很容易忘记这一点。)

    您已经尝试过什么?有些东西不起作用了吗?您是否遵循了入门指南?以下是入门指南:您可能特别感兴趣的部分是身份验证和安全性。另外,请注意,目前只有Android和iOS支持用户证书身份验证。但是,所有环境都支持HTTPS连接。最后一条注释:创建HTTPS连接不需要用户证书身份验证。您仅在希望创建双向SSL连接时使用此身份验证领域,但如果您只需要HTTPS,则不需要用户证书。谢谢@DanielA.González,我已经从您的解释中理解了用户证书的必要性。但我想从所有平台实现HTTPS连接。从Worklight应用程序[非浏览器]->IHS->Wlserver。演示Http适配器返回“helloworld”。当我通过“https://WLServer:9443/demo”访问时,主机没有响应,这是一个错误。当我使用“http://WLServer:9080/demo”访问时,我可以得到实际的响应。这个实现是通过IHS实现的。如果我在手机浏览器中访问完整的URL[Https],我会得到结果。谢谢@Daniel,我已经启用了日志级别并设置为INFO。我无法获取HTTPS的任何日志,而我可以获取http的日志。正如您所说,证书将是一个问题。建议我一个调试过程来解决这个问题。我从圆木猫那里得到了几根圆木。在下面的评论中,我给出了WLUserAuthManager.DoesValidCertificCateExistin-WLUserAuthManager.java:114::doesValidCertificateExists=false,通过isCertificateExists:false请求建立LclientAuthManager.doesValidCertificateExists[HttpPostRequestSender.java:46::在HttpPostRequestSender.java:137::OneException javax.net.ssl.SSLHandshakeException:java.security.cert.CertPathValidatorException:Trust anchor for certification path not Found中发送请求WLNativeXHRPlugin$NativeXhrpstListener.OneException同样的…这会是一个自我签名证书吗?嗨,我更新了我的答案,看看这是否修复了你的问题。嗨,丹尼尔,谢谢你的支持。我将实施和更新。让我们说,实现工作,从移动应用程序直接呼叫到工作灯服务器。如果我必须把IBM HTTP服务器放在中间,我该怎么办?我已经提到了。我在问题中提到了这一点。