【问题标题】:iOS allowed invalid certificate while android did notiOS 允许无效证书,而 android 不允许
【发布时间】:2016-01-18 07:11:21
【问题描述】:

在我们的一个应用部署过程中遇到了不寻常的情况。 iOS 版本运行良好,但应用程序的 android 版本无法运行。经过一些故障排除后,我们发现该应用程序调用了api。 Api Web 服务器缺少证书链。我们在带有 safari 的 iOS8 iphone 上尝试了 api 调用,它在 android 上运行时没有任何警告,它给出了证书警告。我理解这个问题,但想知道为什么它在 iOS 上有效? iOS 在 OS 层面的 SSL 验证是否存在 bug?

【问题讨论】:

    标签: android ios iphone security ssl


    【解决方案1】:

    您看到的行为是由于某些浏览器和用户代理(包括 iOS 上的 Safari)实现的称为 AIA 追逐的功能。证书可以具有 Authority Information Access extension 的值,浏览器或底层框架可以使用该值通过获取中间体(如果服务器未提供中间体)来构建完整的证书链。

    Android 不执行 AIA 追踪,这就是您在从 Android 应用调用 API 时看到错误的原因。我一直无法找出为什么它没有内置在 Android 中。

    解决此问题的正确方法是确保 Web 服务器为连接的客户端提供必要的中间证书。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-11
      • 2013-06-07
      • 1970-01-01
      相关资源
      最近更新 更多