“发生了ssl错误,并且无法建立与服务器的安全连接”仅在电话上连接到内部开发服务器
问题描述:
我开发了一个连接到内部Web服务器的iOS应用程序。当我使用模拟器时,它工作正常,但是当我在iPhone上构建相同的应用程序时,它给了我一个错误消息“发生了ssl错误,并且无法与服务器建立安全连接。 ?“为什么错误仅发生在iPhone未在模拟器“发生了ssl错误,并且无法建立与服务器的安全连接”仅在电话上连接到内部开发服务器
这里是我的环境 的Xcode 8.2 iOS的10.3 目标C - 我的客户端代码使用ATS默认 AFNetworking框架3.1 Web服务器 - 支持TLS 1.2只有 Web服务器证书是不支持前向安全性呢。
难道是因为我的证书是不符合ATS?
答
我从苹果
012阅读本 document后<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>Your Domain</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
</dict>
</dict>
我的应用程序正在使用设备。我在服务器上的证书没有准备好Forward Secrecy。
另外应该注意的是,苹果公司不会要求对此ATS例外的理由,因为前向保密例外不是Apple需要明确理由的例外。也就是说,如果您在提交给Apple之前可以删除该异常,那将是理想的。 – wottle
谢谢@wottle,我的服务器是windows 2008 R2,有一个支持ECDSA和ECDHE密钥的证书,操作系统必须是Windows 2012 R2,我等待服务器团队升级我们的服务器。 – Aviva
另一件事是这个应用程序是一个企业应用程序,所以我不需要提交给苹果商店。 – Aviva