【问题标题】:Hosting password protected videos for my iphone app为我的 iPhone 应用托管受密码保护的视频
【发布时间】:2011-08-03 21:55:48
【问题描述】:

我正在构建一个付费的 iPhone 应用程序,它 - 向用户显示一些优质内容视频。 - 应用程序在 UIWebView 中从我的网络服务器加载页面 - 但这些视频是在其他一些视频托管网站上托管的。

我意识到,为了让这个应用程序保持付费,我需要保护/保护视频链接(否则如果 URL 泄露,没有人愿意为此付费)。

我可以轻松地对网页进行密码保护(指向实际视频),并使 iPhone 应用程序可以使用用户名和密码来访问该网页。但是当用户选择视频链接时,应用程序将加载该 url。如果用户此时在 iphone 上嗅探数据包,他们可以访问该 url 并直接从那里运行它。

我不相信 mod_sec_download 或 mod_xsendfile 可以在这种情况下工作,因为视频链接是外部的。对吧?

Amazon S3 是一种可行的解决方案吗?

将不胜感激任何见解/解决方案。

谢谢!

【问题讨论】:

    标签: iphone ios security video hosting


    【解决方案1】:

    不要直接指向视频文件。这将使偷窃变得微不足道。相反,请指向一个代理脚本,该脚本可以检查请求的来源并验证它来自注册购买者。

    通过适当的一次性令牌、使用情况跟踪等...您可以防止大多数人吸干您的网站。当然,最佳做法是在视频播放时将水印嵌入到视频中,这样即使视频被盗,您也可以追踪到第一个发布视频的人。

    【讨论】:

    • 您好,非常感谢您的回复。您的意思是使用 mod_xsendfile (内部重定向)之类的东西将其隐藏在 php auth 脚本后面吗?生成一次性令牌的机制是什么? (对不起,我不是网络开发者)
    【解决方案2】:

    您可能想查看 OWASP 前 10 名,特别是关于 failure to restrict URL access 的第 8 名。这实际上是您的场景:您拥有需要在服务器级别保护的资源。您不能只从设备端执行此操作,设备请求的资源位置很容易被发现。

    因此,归根结底是对资源的访问控制,在这种情况下是您的视频。你如何做到这一点将部分取决于你的服务器堆栈。例如,IIS7 有一个集成的管道,可以将访问控制应用于任何类型的资源,例如 PDF、图像和视频(更多信息请参见 OWASP Top 10 for .NET developers part 8: Failure to Restrict URL Access)。或者,您将需要某种形式的应用程序代理,它可以负责身份验证和视频内容的交付。

    这实际上更像是网络服务器问题而不是 iPhone 问题。专注于在服务器上获得访问控制权,然后 iPhone 端将是一个更直接的过程。

    【讨论】:

      猜你喜欢
      • 2019-11-10
      • 2016-01-04
      • 2012-10-12
      • 1970-01-01
      • 2020-01-24
      • 2011-02-22
      • 2021-09-06
      相关资源
      最近更新 更多