ios - 应用程序传输安全性不再适用于 iOS 11 Xcode 9

标签 ios app-transport-security

我一直在开发一个应用程序...自从 iOS 11 更新禁用 ATS 不再起作用后,我在 info.plist 中添加了以下内容

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

我无法使用域异常(exception) key ,因为我正在从未知域下载图像。 以下是我尝试下载图像时得到的结果

Task <C3DC30F1-5869-46F6-ABA4-5E1EC8334FD8>.<0> HTTP load failed (error code: -1005 [4:-4])
NSURLConnection finished with error - code -1005

最佳答案

我知道 IOS 11 不再支持以下功能:

  • RC4 3DES-CBC AES-CBC
  • MD5 SHA-1
  • <2048 位 RSA 公钥 - 与服务器的所有 TLS 连接
  • http://
  • SSLv3
  • TLS 1.0
  • TLS 1.1

添加以下内容我们可以绕过 ATS(应用程序传输安全)错误:

<key>NSAppTransportSecurity</key> <dict>
     <key>NSExceptionDomains</key>
     <dict>
         <key>mydomain.com</key>
         <dict>
             <!--Include to allow subdomains-->
             <key>NSIncludesSubdomains</key>
             <true/>
             <key>NSExceptionRequiresForwardSecrecy</key>
             <false/>
         </dict>
     </dict> </dict>

引用链接:iOS 11 ATS (App Transport Security) no longer accepts custom anchor certs?

关于ios - 应用程序传输安全性不再适用于 iOS 11 Xcode 9,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47300932/

相关文章:

ios - Masonry如何使用autolayout UItableviewCell高度

ios - Apple Watchkit 模拟器不可用

ios - 使用信标测距更新 WatchKit 应用程序

iOS 9 - App Transport Security 不会加载 XML 文件

ios - iOS“应用程序传输安全实现”是否意味着我需要将 API 切换到 https?

ios - 我需要使用 NSExceptionDomains,还是可以完全禁用 App Transport Security?

ios - 是否有多个按钮具有相同的功能?

ios - 如何将 Collection View 单元格的 indexPath 传递给另一个 View Controller

ios - 为发布配置启用 NSAppTransportSecurity 并为调试/暂存配置禁用它的安全可靠的方法?

ios - App Transport Security 阻止 HTTPS