Ibm mobilefirst 从Worklight Adapter对HTTPS服务器进行web服务调用-javax.net.ssl.SSLPeerUnverifiedException:对等未验证

Ibm mobilefirst 从Worklight Adapter对HTTPS服务器进行web服务调用-javax.net.ssl.SSLPeerUnverifiedException:对等未验证,ibm-mobilefirst,worklight-adapters,worklight-server,Ibm Mobilefirst,Worklight Adapters,Worklight Server,我试图从适配器中点击一个基于REST的HTTPS服务,我的.xml文件如下所示 <connectionPolicy xsi:type="http:HTTPConnectionPolicyType"> <protocol>https</protocol> <domain>myco.company.com</domain> <port>443</por

我试图从适配器中点击一个基于REST的HTTPS服务,我的.xml文件如下所示

<connectionPolicy xsi:type="http:HTTPConnectionPolicyType">
            <protocol>https</protocol>
            <domain>myco.company.com</domain>
            <port>443</port>    
            <!-- Following properties used by adapter's key manager for choosing specific certificate from key store  
            <sslCertificateAlias></sslCertificateAlias> 
            <sslCertificatePassword></sslCertificatePassword>
            -->     
        </connectionPolicy>
        <loadConstraints maxConcurrentConnectionsPerNode="2"/>
    </connectivity>

但当我使用HTTP协议和不同的服务器ip地址时,一切都很正常。部署的服务器代码是相同的,服务在浏览器上似乎工作正常。我看到了,但不知道。非常感谢您的帮助。

当您提供的证书错误或未提供正确的证书时,会发生SSLPeerUnverifiedException。它使用HTTP的原因是它不需要证书;它仅适用于HTTPS

在本例中,您似乎没有指定服务器将用于创建HTTPS连接的证书。为此,您必须做几件事:

  • 创建用于测试目的的证书,或者根据您的情况使用您需要使用的证书。您提供的链接解释了如何为测试目的创建自己的自定义证书。(请注意,您应仅将自定义证书用于测试目的,因为它们不安全,因此不应在生产环境中使用)

  • 将您拥有的证书放入Java密钥库中,并将Worklight配置为使用所述密钥库。有关更多详细信息,请参阅

  • 完成前两个步骤后,在您的connectionPolicy中,必须指定SSLCertificateAlias和SSLCertificateAssword。别名是保存在密钥库中的名称,密码是用于加密密钥库的密码。有关更多详细信息,请参见此处:


  • 这样就可以了。

    我使用前面提到的链接从服务器获取证书,然后将其导入密钥库。我在适配器中使用了相同的别名,效果很好。谢谢!嗨,Daniel,当在真实WAS服务器上部署适配器时,适配器不工作,知道为什么会发生这种情况吗?
    Http request failed: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated