iOS9对于https流量,NSAppTransportSecurity实际上意味着什么?

时间:2015-09-18 15:12:22

标签: ssl https ios9 tls1.2 nsapptransportsecurity

iOS9具有info.plist的新设置,称为NSAppTransportSecurity。到目前为止,我一直无法找到允许我连接到我的https Web服务的配置。作为一种解决方法,我的plist中有以下行:

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

我试图了解NSAppTransportSecurity的实际含义或内容。我正在寻找at this technical note by Apple,而且不太清楚:

  

使用NSURLConnection,CFURL或NSURLSession API的所有连接   在为iOS 9.0构建的应用中使用App Transport Security默认行为   或更高版本,以及OS X 10.11或更高版本。不遵循的连接   要求将失败。

NSAppTransportSecurity只是一个阻止TLS低于1.2的配置保护措施,还是实际上对Web连接应用了一些特殊的传输安全性?

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

1 个答案:

答案 0 :(得分:2)

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

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