我使用阿里云做直播,有什么手段保护直播安全?
2018-01-02 15:06
302 查看
准备工作
开通阿里云直播服务:阿里云直播服务接收直播流,并提供直播播放地址,完成一场直播需要先开通阿里云直播服务,在 直播官网详情页 中单击 立即开通 ,开通阿里云直播服务。如您已经能够使用阿里云进行直播,但还没有进行过直播,可参考 如何使用 PC 推流。
系统架构
由下图可知,我们可以通过三个方面控制直播的安全。对推流进行鉴权
对直播流的管控
对播放进行鉴权
直播鉴权
推流鉴权与播放鉴权的机制是一样的,都是属于直播鉴权。鉴权原理:
用户对加速域名设置一个密钥,并根据将访问阿里云的 uri、时间戳、密钥构成的字符串进行 hash,将 hash 值以及时间戳作为请求参数的一部分,当如下两项通过时,允许访问该 url。时间戳没有超过当前时间。服务端用同样的 hash 算法计算 hash 值,请求参数中的 hash 值一致。
鉴权算法:
未鉴权 url:`js
http:// DomainName/AppName/StreamName.flv。
- 鉴权后的 ```js url:http:// DomainName/Filename?auth_key=timestamp-rand-0-md5hash。
参数说明:
timestamp:失效时间,整形正数,固定长度 10,1970 年 1 月 1 日以来的秒数。用来控制失效时间。rand:随机数,一般设成 0。
md5hash:通过md5算法计算出的验证串,算法(假设用户的密钥为 123456:md5hash=md5(timestamp-rand-0-123456)。
一个鉴权的例子:
我有几张阿里云幸运券分享给你,用券购买或者升级阿里云相应产品会有特惠惊喜哦!把想要买的产品的幸运券都领走吧!快下手,马上就要抢光了。用户给 a.com 这个域名配置了一个鉴权密钥:xyz,希望鉴权有效时间为:2017-07-28 05:43:20,准备用
`js
rtmp://video-center.alivecdn.com/live/abc?vhost=a.com
`进行推流,相应的鉴权计算逻辑为:
推流
获取推流js uri:/live/abc。
获取 timestamp:过期时间 2017-07-28 05:43:200 的unixtimestamp为:1501191800。
组装加密字符串:
`js
/live/abc-1501191800-0-0-xyz。
- 计算加密后的字符串:md5 (“/live/abc-1501191800-0-0-xyz”) = 7856896499b661b1123dca82d7406aa3。 - 拼接加密后的推流 ```js url:rtmp://video- center.alivecdn.com/live/abc?vhost=a.com?auth_key=1501191800-0-0-7856896499b661b1123dca82d7406aa3。
播放
播放的计算方法与推流类似,以 httpflv 播放地址为例。未鉴权的 url 为:`js
http:// a.com/live/abc.flv。
- 获取播放 ```js url:/live/abc.flv。获取 timestamp:过期时间 2017-07-28 05:43:200 的 unixtimestamp 为:1501191800。
组装加密字符串:
`js
/live/abc.flv-1501191800-0-0-xyz。
- 计算加密后的字符串:md5(“/live/abc.flv-1501191800-0-0-xyz”) = b022238fd0cd1c8efae2ba84fc0c9119 - 拼接加密后的推流 url:```js http://a.com/live/abc.flv?auth_key=1501191800-0-0-b022238fd0cd1c8efae2ba84fc0c9119。[/code]设置方法:可以在直播控制台进行设置,控制台中鉴权计算器,可以方便的生成鉴权 url。详情参考 直播鉴权。
原文链接
相关文章推荐
- 我使用阿里云做直播,有什么手段保护直播安全?
- 我使用阿里云做直播,有什么手段保护直播安全?
- 服务器使用Kerberos安全验证保护网络文件系统(NFS)
- 阿里云安全管家使用教程
- 使用安全令牌保护 RTMP 流
- 如何使用Microsoft .NET保护应用程序和数据的安全
- 使用安全配置向导保护Exchange Server 2007 角色
- 军队使用什么操作系统才安全
- 使用ModSecurity 保护Web服务安全(1)
- 阿里云服务器上使用iptables设置安全策略
- 使用 Spring Security 保护 Web 应用的安全
- 什么是信息安全等级保护?
- 使用 Spring Security 保护 Web 应用的安全
- 阿里云直播PHP SDK如何使用
- 守好信息安全第一道关口,使用动态密码保护ERP登录安全
- 阿里云服务器windows版本的使用以及安全策略的添加
- 【阿里聚安全·安全周刊】阿里云9大新年礼|正式上线移动直播问答解决方案
- 怎么使用阿里云直播服务应用到现在主流直播平台中
- 【android安全】之使用ssl验证保护网络数据传输安全。