【问题标题】:App Transport Security with Advertisements带有广告的应用程序传输安全性
【发布时间】:2017-04-26 14:48:24
【问题描述】:

我正在为使用 freewheel.tv 投放视频广告的客户开发一款应用。据我所知,freewheel 允许广告提供商托管他们自己的广告,这意味着广告域是动态的。我知道在第一次之后,Apple 不鼓励应用程序将 NSAllowsArbitraryLoads 设置为 true。我已经阅读了一些关于 Apple 在某些情况下允许例外的帖子,但我不愿依赖它。

处理这种情况的最佳方法是什么?我是否只是向我的客户解释我们将不得不向 Apple 展示我们的用例并希望他们批准它,或者我还能做些什么吗?这里的任何指导将不胜感激。

【问题讨论】:

    标签: ios app-transport-security


    【解决方案1】:

    根据此视频和许多其他资源What's New in Security 判断,您需要向 Apple 提供充分的解释为什么您需要有此例外。尽快与他们取得联系可能是个好主意。

    【讨论】:

    【解决方案2】:

    拥有丰富的 Apple 审批流程经验,我可以告诉你,如果他们让你的应用程序进入并将 NSAllowsArbitraryLoads 标志设置为 true 并拒绝其他人的应用程序,我将是世界上最惊讶的人.底线是,如果 freewheel.tv 想要继续在 iOS 设备上开展业务,他们将必须为其客户找到一种解决方案,以允许特定域或通过 HTTPS 投放广告成为硬性要求。

    我非常怀疑与 Apple 进行对话(如果您甚至可以为此联系他们)会有什么不同。

    要解决您的问题,您必须允许在 info.plist 中提供广告的每个域都允许您知道,或者更改广告提供商。

    【讨论】:

    • 因此,如果有充分的理由,您认为 Apple 不会坚持他们的声明,即他们将允许某些应用程序在 ATS 例外打开的情况下进入商店? Apple 从未表示如果将 NSAllowsArbitraryLoads 设置为 true,则不会批准任何应用程序。他们只是说开发人员需要提供理由。目前没有人知道什么理由会被接受。
    • 鉴于 Apple 已移除 3.5 毫米插孔并仅允许在新 MBP 上使用 USB-C,因此对于 Apple,您可能不够安全。你要么跳上船,要么淹死。我更喜欢我的应用程序留在船上:)
    • 也就是说,我并不是说他们不会批准,而是根据 Apple 允许的范围做出商业决策是在自取其辱。
    • 在大多数情况下,对于开发人员来说,Apple 一直很擅长给人们公平的警告。他们给了人们半年的时间来停止盲目禁用 ATS,因为许多 SO 答案都建议作为“修复”。对于不了解 Apple 推荐的最佳实践的开发人员来说,这将是一个艰难的过渡。 Apple 多年来一直告诉开发人员使用 Autolayout,但仍有许多应用在 6 / 6+ 上看起来像垃圾......你只能做这么多。
    • 我同意将业务决策建立在希望 Apple 会做某事的基础上是不明智的,但如果您因为不控制某些服务器而无法遵守 ATS,那似乎成为正当理由。此外,您的解决方案仍需要 Apple 提供理由,因为如果您为域添加 NSExceptionAllowsInsecureHTTPLoads,您仍需要提供理由。您的回复可能会使应用程序更安全,并且可能使证明更容易,但我敢打赌 OP 无法预测广告提供商使用的所有域。
    猜你喜欢
    • 2016-11-11
    • 1970-01-01
    • 2015-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-11
    相关资源
    最近更新 更多