在我的网络(Rails)应用程序中,我想提供播放音乐文件的功能,这些音乐文件我已获得其出版商的特别许可,可用于收听,但仅限于网站。有没有一种方法可以支持播放音乐文件,从而无法下载该文件?
浏览器的 HTML 5 音频播放器可让您下载正在播放的文件,因此我正在寻找一种不同的方法。
我意识到用户可以通过将系统音频重定向到文件或以其他方式录制文件来规避任何限制,但我仍然想阻止下载文件。
最佳答案
如果浏览器或客户端可以在本地播放音频,那么它必须下载它 - 可以执行混淆 URL 等操作,但这些通常很容易解决。
通常的下一个防御措施是加密内容并安全地传递 key ,或者使用某种安全的专有方法或使用 DRM 系统。
然而,对于音频,因为一旦音频播放,音频路径本身在设备中大多是不安全的,正如您所指出的,您必须平衡工作量/成本与这会给您带来的额外安全性。
撰写本文时使用的主要商业 DRM 系统是 Google 的 Widevine、Apple 的 FairPlay 和 Microsoft 的 PlayReady。覆盖范围大致为:
如您所见,要使用这些默认 DRM 获得广泛覆盖,您通常需要多个 DRM,并且通常会使用第三方 Multi DRM 服务。
还有一些不太安全的 DRM 技术,它们不需要商业服务并且通常以明文方式传输 key ,但可能会满足您的需求。这些包括:
您可以在此处查看一些示例:https://stackoverflow.com/a/46666226/334402
关于html - 如何在网络上播放音频文件但未启用下载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63333840/