iOS允许无效证书,而android则没有

时间:2015-10-19 20:00:16

标签: android ios iphone security ssl

在我们的某个应用部署中出现异常情况。 iOS版本运行良好,但Android版本的应用程序不起作用。经过一些故障排除后,我们发现app会调用api。 Api Web服务器缺少证书链。我们尝试使用safari在iOS8 iphone上进行api调用,它在没有任何警告的情况下工作,而在android上,它提供了证书警告。我理解这个问题,但想知道为什么它在iOS上运行? iOS在操作系统级别的SSL验证中是否有任何错误?

1 个答案:

答案 0 :(得分:0)

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

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

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