我有一个(php)网站,老师上传他们的课堂录音,学生可以登录然后播放录音。
我想让这些视频更安全。目前,视频存储在我的服务器上,任何有url的人都可以下载。所以,(1)我想把它们存储在一个不能用url下载的地方。其次,我需要阻止他们右键点击并保存正在播放的视频。我试着用s3解决这个问题,但没有得到它…
这可能吗?它需要使用一个特殊的球员吗?流式传输视频有帮助吗(可以流式传输任何视频吗)?
我很感谢你的帮助,我花了很多时间研究这个,只是越来越困惑,因为我走下去!
您可能希望使用几个选项。
1。Amazon CloudFront RTMP发行版
Amazon CloudFront是一个内容分发网络,在全球60多个地点缓存离用户更近的内容。它还具有服务实时媒体播放 (RTMP)协议的能力。这意味着你的网页可以呈现一个媒体播放器(如JW播放器,Flowplayer,或Adobe Flash), CloudFront可以提供内容。
参见:使用RTMP发行版
CloudFront distribution也可以服务私有内容。您的应用程序可以生成一个URL,该URL在有限的时间内提供内容。内容是通过媒体协议提供的,所以整个文件不能轻易下载。
参见:通过CloudFront提供私有内容
2。Amazon S3预签名url
默认情况下,Amazon S3中的所有对象都是私有的。然后,您可以添加权限,以便人们可以访问您的对象。这可以通过:
- 单个对象的访问控制列表权限
- 一个桶策略(根据你的上面)
- IAM Users and Groups
- 预签名URL
A 预签名URL可用于授予对S3对象的访问权限,作为"覆盖"访问控制的一种方式。通常私有对象可以通过URL访问,方法是附加一个到期时间和签名。这是一种无需web服务器就可以提供私有内容的好方法。
与上面的CloudFront示例类似,您的应用程序可以生成一个URL,该URL在有限的时间段内提供对S3内容的访问。一旦期限到期,预签名URL将不再起作用。但是,在活动期间,用户将能够下载整个文件,因此对于希望保护的视频内容,这可能是不可取的。