云点播
有奖捉虫:办公协同&微信生态&物联网文档专题 HOT
文档中心 > 云点播 > 最佳实践 > 分发播放 > 如何测试生成的防盗链

如何测试生成的防盗链

最近更新时间:2021-11-09 11:20:04

我的收藏
  • 简介
  • 实现安全的防盗链测试
    • 术语说明
    • 方案细节
  • 操作实例

简介

云点播提供了 防盗链 功能,开发者可以根据实际需要,对视频播放 URL 使用的域名合理设置防盗链,实现对用户视频播放行为的控制。
然而,不经测试就对使用中的域名设置防盗链有以下风险:
可能导致现网用户播放失败。
可能未达到播放控制的效果。
例如,开发者希望对视频播放 URL 的有效期进行控制,就需要启用 KEY 防盗链
如果生成的防盗链中签名参数sign计算错误,启用防盗链可能导致现网所有视频播放失败
如果生成的防盗链中过期时间参数t过大,启用防盗链后视频播放 URL 不会在预期的时间失效
因此,开发者为域名设置防盗链前应当先测试,确认符合预期后再执行变更操作。并且,开发者终端测试防盗链的同时,不能影响现网用户(即保证防盗链测试对现网安全)。

实现安全的防盗链测试

云点播为开发者提供了安全测试防盗链的解决方案。

术语说明

为了便于说明方案,下面介绍一些会涉及的术语:
点播默认域名:现网环境中,用户播放点播视频使用的正式域名。“预置点播域名”和“自定义域名”都能被设置成“点播默认域名”(设置方法请参见 自定义域名)。
预置点播测试域名:一个用于开发者调试的测试域名(通常为xxx-test.vod2.myqcloud.com),不得用于现网环境,不能被设为默认域名。
正式 App 后台:业务的 App 后台服务,现网用户从这里获取视频的播放 URL。
测试 App 后台:业务测试环境中的 App 后台服务,测试客户端从这里获取视频的播放 URL。

方案细节

通常情况下,现网用户从业务的正式 App 后台获取视频的播放 URL,测试客户端从业务的测试 App 后台获取视频播放 URL,两处获得的 URL 中的域名相同(都是点播默认域名)。当对防盗链测试时,不能直接变更点播默认域名,否则现网用户将受到影响。



为了避免防盗链测试影响现网用户,云点播提供了一个“预置点播测试域名”,与现网中使用的点播默认域名隔离。开发者测试防盗链时,仅操作测试域名的防盗链配置。
云点播还提供了一个“测试域名代理”(IP 为122.152.250.73),开发者只需要修改测试客户端的 HOST 表,将点播默认域名解析到这个代理上,测试客户端的视频播放请求,将经过代理转发到测试域名(下图中的红色路径),而现网用户的播放请求仍然通过正式域名获取视频内容(下图中的黑色路径)。



因此,开发者可以自由修改测试域名的防盗链配置,以及测试 App 后台派发的视频播放 URL,而不必担心影响到现网用户。



开发者使用测试客户端和测试 App 后台,充分验证防盗链并确认无误后,可以依次执行以下步骤:
1. 将正式 App 后台派发视频播放 URL 的规则修改成与测试 App 后台一致。
2. 将点播默认域名的防盗链配置修改成和预置点播测试域名一致。
如此,点播默认域名的防盗链正式生效,经过测试验证的防盗链配置被应用到了现网。

操作实例

下面,以用户开启 KEY 防盗链为例,介绍防盗链测试的操作步骤:
1. 预置点播测试域名开启防盗链。
2. 获取一个原始播放 URL。
3. 测试客户端仍然能够播放视频原始 URL。
4. 测试客户端修改 HOST 表。
5. 测试客户端不能再播放视频原始 URL。
6. 测试客户端能够播放带防盗链参数的 URL。
7. 正式 App 后台生成带防盗链参数的 URL。
8. 点播默认域名开启防盗链。

背景



用户(例中 appid 为125xxx655)登录云点播控制台,在 域名管理 将看到以下两种域名:
预置点播域名(125xxx655.vod2.myqcloud.com)。
预置点播测试域名(125xxx655-test.vod2.myqcloud.com)。
初始状态下,预置点播域名125xxx655.vod2.myqcloud.com为点播默认域名,并且没有开启 KEY 防盗链。

1. 预置点播测试域名开启防盗链

选择预置点播测试域名(125xxx655-test.vod2.myqcloud.com),单击设置,进入Key 防盗链,启用 Key 防盗链,并使用“生成 Key”生成一个防盗链 Key。单击确定保存,等待配置生效。

2. 获取一个原始播放 URL

视频的原始播放 URL,是指没有带 防盗链参数 的 URL 地址,可以从控制台 媒资管理 中获取。例子中使用的 URL 为:https://125xxx655.vod2.myqcloud.com/ca7xxx655/cfbxxx349/PkxxxIA.mov

3. 测试客户端仍然能够播放视频原始 URL



此时,测试客户端仍然可以直接通过视频原始播放 URL 播放视频,执行curl返回的 HTTP 状态码为200。

4. 测试客户端修改 HOST 表

修改测试终端的 HOST 表(Windows 系统为C:\\Windows\\System32\\drivers\\etc\\hosts,Mac 系统为/private/etc/hosts),添加一条记录``122.152.250.73 125xxx655.vod2.myqcloud.com``,然后保存。
修改后,执行``ping 125xxx655.vod2.myqcloud.com``检查 HOST 修改是否生效。

5. 测试客户端不能再播放视频原始 URL

修改 HOST 表后,测试客户端使用视频原始播放 URL 将无法播放,检查 HTTP 状态码为 403 Forbidden。因为修改了 HOST 表,测试客户端发起的视频播放请求,已经被映射到了预置点播测试域名,必须为视频播放 URL 带上正确的防盗链参数才能播放。

6. 测试客户端能够播放带防盗链参数的 URL

按照 Key 防盗链的 生成规则 生成带有防盗链参数的 URL,便能成功播放视频,地址为https://125xxx655.vod2.myqcloud.com/ca7xxx655/cfbxxx349/PkxxxIA.mov?t=5bd6be00&sign=18cxxx9deb,执行``curl``返回的 HTTP 状态码为 200。
测试 App 后台按照防盗链生成规则,派发带有防盗链参数的 URL,并使用测试客户端进行验证。

7. 正式 App 后台生成带防盗链参数的 URL

测试环境验证后,业务正式 App 后台派发带防盗链参数的 URL,派发规则与测试 App 后台一致。

8. 点播默认域名开启防盗链

先在控制台打开点播预置测试域名的“Key 防盗链”,复制测试域名的防盗链 Key。然后打开点播默认域名的“Key 防盗链”,把测试域名的 Key 粘贴在“防盗链 Key”文本框中,单击确定保存。
域名配置生效后,防盗链配置就会被应用到现网使用的点播默认域名,并正式生效。
上一篇: 如何防止视频流量和存储空间被盗用 下一篇: 如何使用第三方播放器播放云点播加密视频(私有加密)

天下网标王伊犁SEO按天扣费价格枣庄营销网站天津百度爱采购公司坑梓网站优化排名吉安营销网站多少钱百色如何制作网站淮安网页设计伊春企业网站制作哪家好坪山网站制作设计价格临沧网站建设推荐潮州百度竞价报价白山网站优化软件公司南宁网站建设多少钱贺州如何制作网站报价南澳至尊标王价格韶关seo推荐深圳网站设计价格和田设计网站哪家好海东企业网站改版昭通关键词排名包年推广推荐合肥网站推广工具多少钱中山网站制作设计价格安康百度竞价包年推广哪家好定西百度seo泸州网页制作价格淄博百度网站优化排名哪家好郴州建设网站推荐红河建设网站多少钱大丰阿里店铺运营价格丹东百度爱采购多少钱香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化