php - 如何保护 MP4 视频(令牌、IP 等)
问题描述
我不想直接观看 .mp4 视频。
互联网上有很多资源,但大多数都已过时或不知道它是否适合我。
所以我想咨询你。
假设我的服务器上有视频。
示例视频网址:
http://cdn.sitename.com/video15.mp4
我不想直接分享这个 http://cdn.sitename.com/video15.mp4"> 。
这样就可以直接访问视频了。
源标签之间的 .mp4 链接必须是随机 URL。这个url必须根据用户的会话打开。为该用户创建的 URL 不应该对其他任何人起作用,并且不能访问 original.mp4 源。
他们
我可以显示一个为每个用户创建自定义的 URL 吗?
原始的 .mp4 文件将包含在 PHP 页面中,但它会在源代码中向用户反映一个随机的 mp4。
解决方案
最终,如果用户可以播放视频,您无法阻止他们下载和分享视频,以防万一这是您想要避免的。
为了解决这个问题,通常的方法是加密视频并私下共享加密密钥或使用 DRM 系统将密钥安全地提供给最终用户。
如果您只想让随机用户更难猜测 URL,您可以使用以下几种方法:
使用签名 URL - 这是一个 AWS 示例https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-urls.html
混淆 URL - 您需要注意这可能被视为安全问题,具体取决于您的操作方式,因为用户可能会担心他们不知道 URL 的去向
基于会话或令牌的身份验证 - 这将允许您仅将页面或资产提供给经过身份验证的用户。这里有一个很好的差异总结:https ://security.stackexchange.com/a/92123
推荐阅读
- css - 根据语言reactjs更改字体
- c++ - 如何在终端上打印 JSON?
- python - 向当前分类代码添加更多类
- git - Git LFS:如何使.gitattributes捕获多个具有相同名称但在不同文件夹中的无扩展名文件,没有带扩展名的文件
- python - 循环通过 BeautifulSoup bs4.element.ResultSet
- javascript - React useEffect 仅在转到另一个页面并返回后才呈现
- javascript - 如何将重量为 85 kg 的数量拆分为 value=85 和 unit=kg 分别在打字稿中(角度)
- algorithm - 具有单位容量边的流网络中 Ford-Fulkerson 算法的时间复杂度
- amazon-web-services - 卓:Lambda 在生产中多久面临一次冷启动?
- java - Cadence CLI 最新镜像不支持最新版本镜像?