保护我网站上的视频?

时间:2010-09-27 22:48:37

标签: video e-commerce amazon-s3

我想在s3上播放视频。我想将它“嵌入”我网站的一个页面,例如:

http://example.com/demo.html
   <video>the video</video>

我不确定如何嵌入视频播放器并将其指向s3上托管的网址,我只使用了youtube api播放器,但这可能是可能的。

我想知道的问题是,一旦他们知道视频资源的网址是什么,是否有办法阻止人们观看视频?例如,如果我在网页上找到图片的网址,我可以复制其网址并直接在浏览器中查看。有办法阻止吗?我希望人们只能看到视频,如果他们从该特定页面查看该视频。较大的计划是仅向已在我的网站上创建帐户的会员显示视频。 vimeo api看起来很有前景,但仅用于非商业用途,所以看看s3是否可行,

由于

4 个答案:

答案 0 :(得分:1)

您可以使用存储分区策略功能来保护文件不被泄露。

以下是允许您阻止热链接的存储桶策略示例:

{ 
        "Version":"2008-10-17", 
        "Id":"preventHotLinking",

        "Statement":[ { 

            "Sid":"1", 
            "Effect":"Allow",
            "Principal": {
                "AWS":"*"
            },

            "Action":"s3:GetObject",
            "Resource":"arn:aws:s3:::your.bucket.name/*",

            "Condition":{

                "StringLike": { 

                    "aws:Referer": [
                        "http://yourwebsitename.com/*", 
                        "http://www.yourwebsitename.com/*"
                    ]
                }
            }
        }]
}

但请不要忘记将 your.bucket.name 替换为您的实际存储桶名称,将 yourwebsitename 替换为您的网站名称。

您可以使用S3 Browser免费软件查看和编辑广告连播政策。您可以找到更多Bucket Policies示例here.

答案 1 :(得分:0)

这是一个猫捉老鼠的游戏,有一个Firefox扩展程序:"DownloadHelper"可以抓取来自大多数嵌入式来源的视频。如果重要的是人们无法拍摄视频并做他们喜欢的事情,你可能想要研究一些DRM,但这也不是防弹,在这种情况下可能有点过分。

答案 2 :(得分:0)

如果您拥有该服务器,则可以执行诸如仅在暂时有效的URL上提供视频(使用HTTP会话过期或在5分钟后过期)的操作。但是,由于您正在服务于S3,而您无法控制,因此这种技术不可用。除此之外,S3 URL是一个很好的老式URL,如果可以通过视频播放器访问,也可以通过任何其他方式访问...

答案 3 :(得分:0)

我没有使用s3所以我不知道具体细节,但我要做的是有一个客户端Silverlight / Flash播放器,它可以从引用视频文件的URL流式传输(如果你想使用Silverlight,请检查MediaPlayer元素) ),然后应连接到您的网络服务器上的通用处理程序,该处理程序将提供来自s3的内容,就像它实际上有内容一样。一旦你有了工作,你可以将处理程序与当前的安全性(会话等)集成,以检查它们是否已登录。 通用处理程序是一个ASHX文件,用.NET编写,非常灵活。最近我需要跟踪图像的带宽使用情况 - 我编写了一个处理程序,它将添加到SQL数据库中的计数器,然后通过设置contenttype来提供图像。因此,用户将加载http:www.mydomain.com/pichandler.ashx?file = grrr.jpg,它会产生一个图像,就像它们直接进入图像一样。

P.S。我正在讨论的解决方案需要.NET的知识 - 我不知道你将使用什么语言。