来自 MobileApplication 的 IBM MobileFirst Platform v8.0 Https 连接

Posted

技术标签:

【中文标题】来自 MobileApplication 的 IBM MobileFirst Platform v8.0 Https 连接【英文标题】:IBM MobileFirst Platform v8.0 Https connection from MobileApplication 【发布时间】:2018-07-04 11:30:13 【问题描述】:

我正在使用在 IBM Liberty WAS V17.0.0.2 中配置的 MFP 8.0

使用从 Mfpconsole 下载中心下载的示例应用程序尝试访问默认 HTTPS 端口 9443 进行访问。

访问 mfpserver 失败,以下是我的错误,

错误代码:“UNEXPECTED_ERROR” errorMsg:"javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: 找不到证书路径的信任锚。"

所以为了测试我的服务器是否正常工作,我用 9080 端口测试了它工作正常,没有任何问题。

在我的 liberty server.xml 中, 我正在使用默认密钥库,我添加了以下行

ssl id="defaultSSLConfig" keyStoreRef="defaultKeyStore" sslProtocol="SSL_TLSv2"

确定我错过了什么,请指导我解决这个问题。提前致谢

注意:我使用的是启动 Liberty 节点时生成的默认密钥库和证书。

【问题讨论】:

我在 liberty server.xml 中添加的行 默认密钥库包含自签名证书。对于大多数新的移动操作系统,这将不起作用。您是否尝试过包含正确 CA 或自定义 CA 签名证书的密钥库?如果 CA 正确,则无需将根 CA 添加到设备。否则,您需要 是的,谢谢 vivin,这解决了一个问题,但这是令牌注册失败的另一个问题,将简要介绍它,WLAuthorizationManager.obtainAccessToken() .then( function (accessToken) titleText.innerhtml = "耶!"; statusText.innerHTML = "已连接到 MobileFirst Server"; , function (error) titleText.innerHTML = "Bummer..."; statusText.innerHTML = "无法连接到 MobileFirst Server"; ) ; ,因为当我使用 https::9443. 时,这个 sn-p 会失败 当你说“解决一个”时,它解决了什么?你能连接到服务器吗? 进入时没有此错误“未找到证书路径的信任锚”。我尝试了上面的代码,现在我得到了“无效请求” 【参考方案1】:

默认密钥库包含一个自签名证书。对于大多数新的移动操作系统,这将不起作用。 在这种情况下,您需要创建一个包含适当 CA 或自定义 CA 签名证书的自定义密钥库,并将应用程序服务器配置为使用此自定义密钥库。

如果您的自定义密钥库包含众所周知的 CA 颁发的证书(Verisign、DigiCert、GeoTrust 等),则无需将根 CA 添加到设备。设备的证书存储包含大部分这些证书。否则,您需要导出根 CA 并将其手动添加到设备证书存储中。

【讨论】:

以上是关于来自 MobileApplication 的 IBM MobileFirst Platform v8.0 Https 连接的主要内容,如果未能解决你的问题,请参考以下文章

如何在 IB 中创建 PKPaymentButton?

无法与 IB 中的约束建立出口连接

IB_DESIGNABLE 和 IBInspectable 的用法

LoadRunner如何进行移动端性能测试

UIViewController 子类的便利初始化器,带有来自 nib 的实例?

MySQL 将某些结果分组到一个数组中