“发生了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。

+2

另外应该注意的是,苹果公司不会要求对此ATS例外的理由,因为前向保密例外不是Apple需要明确理由的例外。也就是说,如果您在提交给Apple之前可以删除该异常,那将是理想的。 – wottle

+0

谢谢@wottle,我的服务器是windows 2008 R2,有一个支持ECDSA和ECDHE密钥的证书,操作系统必须是Windows 2012 R2,我等待服务器团队升级我们的服务器。 – Aviva

+0

另一件事是这个应用程序是一个企业应用程序,所以我不需要提交给苹果商店。 – Aviva