2012-09-07 48 views
2

我正在尝试创建一个私人播客供稿。我的服务的每个用户都会获得一个帐户,并且根据他们的付款情况,他们会收到不同的内容。有些内容很敏感,所以安全性非常重要。如果任何随附的音频文件绕过互联网,对我们的业务可能是灾难性的。用Amazon S3保护私人播客MP3文件的好方法是什么?

我目前正在对服务进行原型设计,并且MP3存储在S3上,并且它们不安全。现在是时候保护他们。从我的研究中,我了解到,实际上,我可以在访问过期期间保护S3上的文件。但是,因为我有很多用户,用我的“全局”键请求签名,并有可能到期不能因为

  1. 如果我需要取消访问,我需要做一个好主意大家
  2. 因为我不知道什么时候,确切地说,他们的podcatcher会要求文件,我不知道什么时候设置到期。有时候,podcatcher会下载供稿XML,但是稍后才会获取MP3文件,以便在客户端有机会获取它们之前URL可能会过期(我正在考虑iTunes,但可能还有其他的)。

我看到它的方式,我有两个选择,我不知道是否有任何可行:

编辑另一个潜在的方式,我想,将是role my own security, and simply redirect对S3的MP3如果用户很好去,则很短的到期。这似乎最明智。

  1. 我可以在亚马逊上为我的所有用户创建用户帐户,并将它们链接到我的数据库中的亚马逊令牌。每个人的MP3网址都是用他们的秘密令牌签署的,并且从现在开始很久就会过期。我不喜欢将它们的令牌存储在我的数据库中的想法,但我不确定亚马逊ACL是否适用于此场景。这也意味着如果您知道URL,文件仍然可以共享。
  2. 我可以通过我的服务器代理每个请求。这意味着我只有一个亚马逊账户,我可以扮演我自己的安全系统。但是通过我的服务器代理每个MP3下载听起来很慢,浪费和昂贵。

有关最佳方式的任何想法。

P.S.我没有和S3结婚。其他解决方案可以考虑。而且我正在使用Ruby的Heroku,以防万一你在乎。

+0

你相信你所有的客户吗?如果没有,如果只通过[模拟洞](http://en.wikipedia.org/wiki/Analog_hole),你将如何阻止他们泄漏文件?如果即使是少量的盗版真的会导致您的企业发生灾难性的失败,您可能需要重新考虑您的商业模式。 –

+0

我大部分都信任我的客户。通过任何方案,他们都可以轻松分享他们的用户名和密码,从而共享音频。如果他们这样做了,我们可以检测到并取消他们的帐户。如果他们能够永久和不可撤销地共享数字文件,那将会是灾难性的。那么,人们就没有理由付钱了。 –

+0

因此,他们下载MP3文件,播放它,将其录制并将录制内容发布到文件共享网站。灾难?或者,如果他们能够不可撤销地共享对所有_future_播客的访问权限,这只是一个问题? –

回答

0

我打算用重定向解决方案suggested elsewhere。这似乎给了我最大的灵活性和非常低的开销。你绝对应该而不是做的是直接使用链接到S3的链接,因为它们可能会在它们被客户端下载之前过期。

相关问题