Video Widevine DRM保护的html播放器内容中的用户授权。

Video Widevine DRM保护的html播放器内容中的用户授权。,video,encryption,drm,widevine,Video,Encryption,Drm,Widevine,我研究了使用WideVine DRM保护视频内容的整个过程。我能够实现的步骤是: 1-从widevine服务器请求内容密钥 2-使用我的保护信息加密/打包内容。生成MPEG加密内容和mpd清单文件。 3-将mpd文件url传递给视频播放器,并在视频播放器中设置许可证url。然后播放器播放加密内容 现在我想知道最基本的一点。使用当前设置,任何具有此url的用户都可以播放该文件。我想将用户身份验证/授权添加到流中,以便在只有mpd url可用的情况下,任何人都不能播放内容 我还在widevine文档

我研究了使用WideVine DRM保护视频内容的整个过程。我能够实现的步骤是: 1-从widevine服务器请求内容密钥 2-使用我的保护信息加密/打包内容。生成MPEG加密内容和mpd清单文件。 3-将mpd文件url传递给视频播放器,并在视频播放器中设置许可证url。然后播放器播放加密内容

现在我想知道最基本的一点。使用当前设置,任何具有此url的用户都可以播放该文件。我想将用户身份验证/授权添加到流中,以便在只有mpd url可用的情况下,任何人都不能播放内容

我还在widevine文档中发现,有一种方法可以实现代理服务器,但这似乎是一个复杂的过程


因此,我有什么方法可以1-防止播放仅提供mpd url的视频2-以一种比实现代理服务器更容易的方式向后续添加用户身份验证/授权级别。

首先,身份验证的目的不是为了通过身份验证的mpd下载。Mpd描述受DRM保护的内容=内容本身是加密的,您需要DRM许可证/解密密钥才能播放该内容。保护mpd没有任何价值-它可以在CDN上公开提供

当播放器发现内容已加密(来自mpd或流本身)时,将使用身份验证。播放器需要向DRM服务器发送一个许可证请求,这就是进行身份验证的地方

理论上,有两种方法可以确保只有选定的用户具有播放权限(获取解密密钥):

  • 您将使用代理。Widevine代理是一种web服务器,它将提取任何类型的身份验证信息,并验证客户是否有权播放内容(例如付费订阅)。基于此,它要么将呼叫转发给谷歌,要么失败
  • 您将部署自己的Widevine服务器,并对其进行扩展以支持您的身份验证方案(它很可能只包括另一种类型的代理)
在实践中,第一个选择是你想做什么。第二种选择主要用于大型流媒体服务,需要谷歌提供一些特殊协议/许可证

编辑:可能还有第三种选择-使用一些第三方解决方案,这些解决方案已经内置了身份验证功能,并允许您进行某种集成

在任何一种情况下,如果您想要控制谁将被颁发许可证,这是服务器端的工作,它涉及部署一些服务