【问题标题】:iOS ATS configuration for handling internal redirects to HTTP connection用于处理内部重定向到 HTTP 连接的 iOS ATS 配置
【发布时间】:2017-05-10 23:15:18
【问题描述】:

正如在 WWDC 2016 中宣布的那样,Apple 将从 2016 年 12 月末开始为所有应用强制实施 HTTPS 连接。 尽管我已经在 ATS 设置中添加了我的应用程序作为异常通信的所有 HTTP 域,但不确定如何处理一种特殊情况,如果我在 info.plist 中引用作为 ATS 异常添加的 HTTP 连接,该连接在内部重定向到另一个不属于 info.plist 中添加的 ATS 异常的 HTTP 连接。 请提出建议。

【问题讨论】:

  • 要允许所有不安全的域<key>NSAppTransportSecurity</key> <dict> <!--Include to allow all connections (DANGER)--> <key>NSAllowsArbitraryLoads</key> <true/> </dict> 检查此链接。 stackoverflow.com/questions/32631184/…
  • 在应用发布之前,您知道这些重定向的域吗?存在服务器重定向的固定域,或者它们可以更改?
  • @Ni 不,内部重定向是未知的,也不是固定的。

标签: ios app-transport-security


【解决方案1】:

很遗憾,如果您不知道重定向目标的域,则必须使用 info.plist 中的 NSAllowsArbitraryLoads 键禁用 ATS。

只要您有正当理由,Apple 将允许您这样做。如果您正在访问执行重定向的第三方站点,并且您无法控制这些站点,那么这可能是您提交应用程序时的有效理由。你可以做些什么来增加 Apple 接受你的理由的机会,就是在你的 info.plist 中包含你知道是安全的所有域的异常域。 NSAllowsArbitraryLoads 和启用 ATS 的异常域的组合至少会向 Apple 表明您正在尝试在您的应用中尽可能安全。

【讨论】:

    猜你喜欢
    • 2017-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-20
    • 2017-04-23
    • 2017-01-30
    • 1970-01-01
    • 2011-07-14
    相关资源
    最近更新 更多