假设我们有一个用于电子书购物的web应用程序,用户只能下载他们支付的图书。所有这些电子书数据(如epub数据)都存储在S3中,当我们的应用程序验证用户已经购买了一本书时,用户将获得一个S3下载url。
我知道S3会为用户生成一个临时的、有时间限制的URL。但问题是,即使url是临时的,也是有时间限制的,如果另一个用户在有限的时间内偶然获得临时url,会发生什么?
好的,一种方法似乎是让有限的时间非常短,比如10秒,但潜在的风险仍然存在。
我知道这个问题很严谨,你会怎么处理呢?还是忘了它?
发布于 2013-03-13 17:43:17
如果担心的是购买者会分发URL,那么他们也可以同样地分发他们下载的文件。
如果担心的是有人会在买家不知情的情况下获得URL,那么也许你可以用一个只有买家知道的令牌来保护下载(例如,某种密码)。这将使除买方以外的任何人都无法使用该URL。缺点是这会给那些为你的产品付钱的人带来不便。
https://stackoverflow.com/questions/15381380
复制相似问题