iOS9 NSAppTransportSecurity实际上与https流量有关的含义是什么?

iOS9 NSAppTransportSecurity实际上与https流量有关的含义是什么?

问题描述:

iOS9对info.plist有一个新的设置,名为NSAppTransportSecurity。到目前为止,我一直无法找到允许我连接到我的https web服务的配置。作为一种变通方法,我在我的plist以下行:iOS9 NSAppTransportSecurity实际上与https流量有关的含义是什么?

<key>NSAppTransportSecurity</key> 
    <dict> 
     <key>NSAllowsArbitraryLoads</key> 
     <true/> 
    </dict> 

我想了解NSAppTransportSecurity实际上意味着或做。我期待at this technical note by Apple,这不是很清楚:

使用NSURLConnection的,CFURL,或为iOS 9.0 或更高版本创建的应用程序NSURLSession的API 使用应用程序传输安全默认行为,和OS所有连接X 10.11或更高版本。不符合 要求的连接将失败。

是NSAppTransportSecurity只是一个配置的保障,这将阻止TLS小于1.2,或者它实际上适用于一些特殊的运输保障,以网络连接?

  • 选择使用NSAllowsArbitraryLoads是否禁用所有形式的https通信?
  • 还是服务器仍然建立https/ssl/tls通信,除非没有苹果监督?
  • 应用此要求的所有应用程序,运行上iOS9或有iOS9作为最小的部署目标?

选择使用NSAllowsArbitraryLoads 将不会禁用https。它只是停止阻止不安全的连接,如http和https与TLS小于1.2

您必须在iOS9上运行的所有应用程序中处理此问题