MobileFirst 7.0 SSL 握手问题

Posted

技术标签:

【中文标题】MobileFirst 7.0 SSL 握手问题【英文标题】:MobileFirst 7.0 SSL Handshake issues 【发布时间】:2017-03-09 23:29:55 【问题描述】:

我有一个连接到 HTTPS 端点的 MobileFirst Platform 7.0 javascript 适配器。我已使用 p12 证书文件直接通过 androidios 和 Windows 连接到此端点,并且连接没有任何错误。但是,我似乎无法对 MobileFirst Platform 服务器上的 HTTP javascript 适配器执行相同的操作。

无论如何,我该怎么做?我已将 p12 的全部内容导出到 java 密钥库中,还从服务器导入了证书并将其添加到 java 密钥库中。但是,我不断收到以下错误:

Authentication failure in realm 'CustomAuthenticationRealm': javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

有人可以向我解释我做错了什么吗?

此外,我的 javascript 适配器正在使用以下别名和密码配置连接到本地 jks:

`<sslCertificateAlias>my alias</sslCertificateAlias>
<sslCertificatePassword>my password</sslCertificatePassword>`

我的 worklight.properties 也设置如下: ssl.keystore.path=conf/mykeystore.jks ssl.keystore.type=jks ssl.keystore.password=mypassword

非常感谢任何信息!

【问题讨论】:

您是否已将后端证书添加到服务器的信任库中?您是否打算使用相互 SSL 身份验证 我将证书添加到在 worklight.properties 中分配的密钥库中。我应该使用另一个信任库吗?如果有,它在哪里? 【参考方案1】:

我找到了答案。显然,当从 MFP 的 javascript 适配器进行安全连接时,可能需要在 2 个位置安装证书。一个位于服务器目录中的 key.jks 中,另一个位于创建的自定义密钥库中,该密钥库在 worklight.properties 中引用。

【讨论】:

以上是关于MobileFirst 7.0 SSL 握手问题的主要内容,如果未能解决你的问题,请参考以下文章

SSL 握手警报:升级到 Java 1.7.0 后出现 unrecognized_name 错误

MobileFirst 7.0 CLI - 无法启动服务器

从 MobileFirst 7.0 降级到 6.3

MobileFirst 7.0 Studio - Android 2.3.x 支持

安装最新 iFix 后的 MobileFirst 7.0 控制台文本编码问题

MobileFirst Studio 7.0 安装