我有一个用户购买套餐和观看视频教程的网站。不幸的是,该URL可以从HTML获得,因此用户可以从该位置轻松下载。我想阻止用户下载该文件,他只能从我的页面上观看。
有没有办法在ASP.NET中执行此操作,或者可能通过配置IIS?
答案 0 :(得分:3)
正如您所发现的,如果您通过网址制作视频(或其他任何内容),则可以下载。
另一种方法是创建一个ASP.NET页面,检查用户是否已正确登录,然后重定向到该文件 - 而不显示URL。在没有直接链接的情况下提供视频的其他方式是将它(或访问它)嵌入到像Java或Flash这样的编译器中。
无论您选择哪种解决方案,而不是透露网址 - 或者首先不在互联网上直接访问视频 - 都将成为关键。一旦URL可用,就可以轻松下载。
仅供参考,世界上有很多视频捕捉者。即使您隐藏了URL,他们也可以在某种程度上“下载”它。
答案 1 :(得分:1)
即使您隐藏了网址或添加了令牌查看功能,也始终可以使用视频下载插件下载视频。
答案 2 :(得分:1)
这个问题的答案就是NO。您无法阻止用户下载视频。通过使用不同的下载程序或直接链接,可以看到您的视频的人可以通过使用某种屏幕捕获软件(如camstudio或getcam等)来窃取视频。 / p>
因此,任何人都无法做到这一点。你可以用一种方式做到但HotLink protection不准确。保护那些您不希望被用户下载的文件扩展名。
希望这有帮助。
答案 3 :(得分:1)
在我看来,最好的方法是通过HTTP实现基本的访问身份验证。
所以没有人能够访问该视频:
访问视频时,系统会提示他们输入用户名和密码。 或者他们可以使用类似的URl模式下载它:
答案 4 :(得分:0)
简短回答,不。
更长的答案,取决于你的目的,有两种可能性。
如果您想阻止人们在您的网站中嵌入您的视频(从而使用您的带宽),则问题类似于热链接图片。这涉及到诸如检查引用者之类的事情(尽管并非所有用户代理都提供了引用者)。另一种选择是使视频用户的URL特定,例如超时的临时URL,在URL中嵌入反csrf令牌,检查它是否与cookie匹配等。
如果您想阻止用户下载实际视频,则不能,请参阅How to prevent downloading images and video files from my website?和How to prevent user from downloading or saving an image?。