摘要:阿里云视频点播提供了完善的内容安全保护机制,可以满足不同业务场景的安全需求。通用性标准加密阿里云视频加密标准加密可适配所有播放场景阿里云视频加密仅支持阿里云播放器。
摘要: 如何保障视频内容的安全,不被盗链、非法下载和传播,是困扰众多企业已久的问题,特别是独播剧、在线教育、财经金融、行业培训等在线版权视频领域尤为迫切,处理不好会造成极为严重的经济损失,甚至法律风险。阿里云视频点播提供了完善的内容安全保护机制,可以满足不同业务场景的安全需求。
1. 概述
如何保障视频内容的安全,不被盗链、非法下载和传播,是困扰众多企业已久的问题,特别是独播剧、在线教育、财经金融、行业培训等在线版权视频领域尤为迫切,处理不好会造成极为严重的经济损失,甚至法律风险。
阿里云视频点播提供了完善的内容安全保护机制,可以满足不同业务场景的安全需求。
2. 访问限制
访问限制是在云端配置视频资源的访问策略,达到基本的保护目的,主要手段有:
Referer、IP和UA(User-Agent)的黑白名单
一定周期内,URL的访问次数限制、独立IP数限制
2.1 Referer黑白名单
基于 HTTP 协议支持的 Referer机制,通过 Referer跟踪来源,对来源进行识别和判断,用户可配置访问的 Referer 黑、白名单(二者互斥)来限制视频资源被访问的情况。
支持黑名单和白名单两种模式,访客对资源发起请求后,请求到达CDN 节点,节点会根据用户预设的防盗 链黑名单或白名单进行过滤,符合规则可顺利请求到视频数据;若不符合,请求会被拒绝,并返回403响应 码。
配置后会自动添加泛域名支持,例如填写a.com,最终配置生效的是*.a.com,所有子级域名都会生效。
由于移动端一般拿不到Referer,当前默认支持空Referer访问,可选择关闭。
示例
设置点播域名 vod-test1.cn-shanghai.aliyuncs.com 的Referer白名单为 aliyun.com,且不允许空Referer访问,请求 数据:
curl -i "http://vod-test1.cn-shanghai.aliyuncs.com/sv/5101d1f8-1643f9ab241/5101d1f8-1643f9ab241.mp4"
返回
当请求带上允许的referer后即正常返回:
curl -i "http://vod-test1.cn-shanghai.aliyuncs.com/sv/5101d1f8-1643f9ab241/5101d1f8-1643f9ab241.mp4" -H "Referer: http://www.aliyun.com"
2.2 UA黑白名单
UA(User-Agent)是一个特殊字符串头,帮助服务端识别用户使用的操作系统及版本、CPU类型、浏览器及版本、 浏览器渲染引擎&语言和插件等。可通过UA黑白名单来限制特定浏览器或终端的访问。
如PC端IE9浏览器:
UserAgent:Mozilla/5.0(compatible;MSIE9.0;WindowsNT6.1;Trident/5.0;
可模拟HTTP请求验证:
curl -i "http://vod-test1.cn-shanghai.aliyuncs.com/sv/5101d1f8-1643f9ab241/5101d1f8-1643f9ab241.mp4" -H "User-Agent: iPhone OS;MI 5"
2.3 IP黑白名单
视频点播支持配置IP黑名单或白名单,拒绝或只允许特定IP的访问。
支持IP列表添加,并支持添加IP网段,例如127.0.0.1/24。
网段127.0.0.1/24,24表示采用子网掩码中的前24位为有效位,即用32-24=8bit来表示主机号,该子网可以容纳2^8 - 2 = 254 台主机,故可表示IP网段范围:127.0.0.1~127.0.0.255。
可选择优先使用 remote_addr 或 X-Forwarded-For(XFF) 作为请求端IP,或者同时匹配。
2.4 访问次数和独立IP数限制
点播服务可限制媒体资源在一定时间周期内(如1天)的最大访问次数和最大独立IP数,核心原理是所有请求先到中心化的访问计数服务进行验证,判断是否超过预设的阈值,若超过则拒绝服务,返回HTTP 403。
该限制为URL(包括文件地址和签名信息)维度而非文件维度,但可配置忽略URL中的部分参数;限制的阈 值到域名粒度,可多带带设置。
访问计数服务是多区域部署的中心化服务,一个URL只能被调度到其中一个区域,以保证中心化计数。
CDN边缘节点收到请求后会访问中心化计数服务进行计数和验证。
2.5 小结
访问限制的使用门槛很低,只需简单配置即可使用,能起到一定的保护作用,特别是Web端。
Referer和UA都是基于HTTP Header,容易被伪造,安全性低。
IP黑白名单机制和访问数限制,无法实现内容分发给大量C端用户,不适合广泛的内容消费场景,且后者在 阈值范围内也可能被非法访问。
播放中心鉴权
播放地址若固定不变会带来持久的非法扩散传播,且无法有效遏制,视频点播提供的URL鉴权可通过生成动态的加密URL(包含权限验证、过期时效等信息)来区分合法请求,以达到保护视频资源的目的。
开启URL鉴权后,点播的播放器SDK、获取播放地址的API/SDK都会自动生成带时效的播放URL;如需要自己生成鉴权的动态URL,则可使用下述 鉴权 法。
开启URL鉴权后,所有媒体资源,包括视频、音频、封面、截图等地址都会进行鉴权。
鉴权Key的设置是以域名为粒度,且存于服务端以确保安全;支持主、备Key平滑切换,若更换主Key,可使用备Key生成播放地址,以做为更换的桥接,实现交替更新。
鉴权方法
鉴权URL构成
http://DomainName/Filename?au...
鉴权URL由播放文件地址+验证串构成,验证串是根据鉴权key+过期时间通过md5算法计算得出,且具有时效性, 默认为3600秒(可后台配置)的有效时间,可在生成播放地址或获取地址时设置过期时间;若地址过期则访问时 CDN会返回HTTP 403。
动态地址示例
http://vod.example.com/video/...
示例中的auth_key参数值前缀1500523200(时间为2017-07-20 12:00:00),表示该地址会在2017-07-20 13:00:00过期。
更多信息可参考 阿里云视频点播-URL鉴权。
业务方二次鉴权
播放中心鉴权使用了阿里云的默认鉴权中心,但由于没有客户业务请求信息的输入,对盗链等非法请求的判断还比较单一,使用二次鉴权会更加精准。
二次鉴权是指点播CDN将用户的请求透传到客户的鉴权中心,由客户自己判定该请求是否合法,CDN根据 客户的判断结果执行相应动作:允许或拒绝访问。
二次鉴权需要客户自己开发和部署鉴权中心,该鉴权中心的域名如果同时在 CDN上面加速,可以按照一定 规则缓存客户的鉴权结果,以减轻客户鉴权中心的压力。点播CDN会默将把用户请求的 headers 和 request_uri 透传到客户自定义的鉴权中心,并根据鉴权中心返回的结果执行相应的动作。过程如下图:
如业务方可将其用户的登录Cookie或UUID等信息隐藏于播放请求中,进而透传到自己的鉴权中心以判定是否为合法用户。
5. 视频加密
防盗链安全机制能有效保障用户的合法访问,但对于付费观看视频的场景,用户只需通过一次付费行为拿到视频合 法的防盗链播放URL,将视频下载到本地,进而实现二次分发。因此,防盗链方案对于视频版权保护是远远不够的。视频文件一旦泄露,会给付费观看模式造成十分严重的经济损失。
阿里云视频加密是对视频数据加密,即使下载到本地,视频本身也是被加密的,无法恶意二次分发,可有效防止视频泄露和盗链问题。
5.1 阿里云视频加密
阿里云视频加密采用私有的加密算法和安全传输机制,提供云端一体的视频安全方案,核心部分包括 “加密转码” 和 “解密播放”。
核心优势:
每个媒体文件拥有独立的加密钥匙,能有效避免采用单一密钥时,一个密钥的泄露引起大范围的安全问题。
提供信封加密机制“密文Key+明文Key”,仅密文Key入库,明文Key不落存储,所有过程只在内存中,用完 即销毁。
提供安全的播放器内核SDK,涵盖iOS/Android/Flash多平台,自动对加密内容进行解密播放;H5播放器不支持加密视频的播放。
播放器和云端使用私有加密协议进行密文传输,不传输明文Key,有效防止密钥被窃取。
提供安全下载,缓存到本地的视频会再次加密,在确保无网离线播放前提下,防止视频被拷贝窃取。
注意:阿里云视频加密仅支持输出HLS格式,且只能使用阿里云播放器。 更多信息参考 阿里云-视频加密
5.2 HLS标准加密
HLS标准加密支持 HTTP Live Streaming 中规定的通用加密方案,使用AES-128对视频内容本身进行加密,同时能 支持所有的HLS播放器,用户可选择使用自研或开源的播放器。相比私有加密方案,灵活性更好,但使用门槛更 高、安全性更低:
用户需搭建密钥管理服务,提供密钥生成(用于转码时对视频内容进行加密)和解密服务(用于播放时获取 解密密钥),也可基于 阿里云KMS 进行封装。
用户需提供令牌颁发服务,用于验证播放端的身份,避免解密密钥被非法获取,此处为关键点,处理不好会千里之堤溃于蚁穴。
播放器和云端传输明文Key,容易被窃取。
更多信息参考 阿里云-HLS标准加密
5.3 小结
视频加密方案各有优劣,一般来说,越是标准、通用,灵活性越高,但安全性越低,选择哪种方案取决于自己的业务场景,有所取舍:
安全等级:阿里云视频加密 > HLS标准加密
阿里云视频加密安全性明显高于HLS标准加密。
易用性:阿里云视频加密 > HLS标准加密
阿里云视频加密提供云端一体解决方案,只需简单配置并接入阿里云播放器即可无缝集成加密能力;HLS标准加密需自建密钥管理和令牌颁发服务。
通用性:HLS标准加密 > 阿里云视频加密
HLS标准加密可适配所有M3U8播放场景;阿里云视频加密仅支持阿里云播放器 (Android/iOS/Flash)。
使用费用:阿里云视频加密 = HLS标准加密
阿里云视频加密和HLS标准加密都可免费使用。
iOS/Android/Flash使用阿里云视频加密或HLS标准加密会有很好的安全性;但由于H5端为明文,要保证更高的安全性首选商业DRM(Chrome等浏览器的原生支持)。
原文链接
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/11382.html
摘要:未完,待续阿里云云数据库版兼容协议标准的提供持久化的内存数据库服务,基于高可靠双机热备架构可无缝扩展的集群架构以及读写分离架构,满足高读写性能场景及容量需弹性变配的业务需求。 摘要: Redis是开源的基于内存且可以持久化的分布式 Key – Value数据库。自2009年发布最初版本以来,Redis的热度只增不减,除了经常位居DB-Engines的最受欢迎Key-Value数据库榜首...
摘要:据悉,高清直播已在阿里云的众多游戏直播客户中广泛使用。这也是阿里云视频云第四年支持双猫晚网络直播,从作战室监控的数据上来看,猫晚直播期间各项系统数据指标运转平稳,一场稳定高清流畅的大型活动直播就就此实现。 双11猫晚是家喻户晓的综艺晚会,在今年的双11,阿里集团为2500万用户提供了一场在线直播视觉盛宴。网友评价这是一场既稳定流畅又高清的直播,当然在这背后离不开阿里云的技术支持。 本次...
阅读 555·2023-04-26 02:59
阅读 693·2023-04-25 16:02
阅读 2155·2021-08-05 09:55
阅读 3546·2019-08-30 15:55
阅读 4643·2019-08-30 15:44
阅读 1799·2019-08-30 13:02
阅读 2196·2019-08-29 16:57
阅读 2289·2019-08-26 13:35