1

该问题涉及两个领域:一般 SSL 证书和 Phonegap/Cordova 相关功能。

首先让我简要描述一下我们的案例:我们正在创建一个简单的系统,该系统由一个用 Phonegap(客户端)编写的移动应用程序和一个带有 RESTful API 的 HTTP(S) 服务器组成。一些机密数据应该来回传输。客户端也应该使用两条腿的 OAuth 进行身份验证。

系统已关闭,即我们不打算将其扩展到单个桌面应用程序之外,它将被配置一次并连续工作。

然而,由于某些原因,我们不能将这些东西放在一个封闭的网络中以仅使用纯 HTTP。

所以,我想,HTTPS 是唯一的方法。

现在,问题:

  1. Phonegap 的安全指南指出,如果 HTTPS 使用自签名证书而不是 CA 颁发的证书,则使用 HTTPS 毫无意义。

  2. 另一方面,克林特哈里斯在他的回答中解释说,如果我们自己分发自签名证书,它们是完全有效的。

  3. 另一个问题是,Phonegap 不允许您通过 HTTPS 对 RESTful API 执行此类 AJAX 调用——唯一的方法是启用调试模式或简单地破解它。

这就是为什么我们完全糊涂了。

毕竟,哪种方法 - 1 或 2 - 在我们的封闭系统案例中是有效/适用的,我们如何解决最后一个 (3) 问题?此外,任何额外的解释将不胜感激。

4

1 回答 1

0
  • 当您实施证书固定时,从安全角度来看,自签名证书才有效

  • 在科尔多瓦你没有能力实现证书固定,因为安卓不给你访问权限。

总之,更简单、更安全的方法是使用系统已经信任的证书。

于 2016-03-28T10:03:48.583 回答