API 文档

播放鉴权配置

最近更新时间:2020-06-01 15:06:40

操作场景

云直播内容默认为公开资源,您在获取播放地址后即可访问直播内容。若需要对直播内容进行访问控制,可通过鉴权设置来实现直播资源的内容保护。

配置原理

URL 鉴权的原理是云直播客户通过鉴权配置生成加密 URL,并将此 URL 提供给用户,用户采用加密 URL 对云直播加速节点发起请求后,直播加速节点对其权限信息进行校验以判断请求是否合法。若请求合法,将返回正常内容,若请求非法将被拒绝,以此实现对直播资源的保护。

前提条件

操作步骤

  1. 选择【域名管理】,单击需做鉴权配置的播放域名或【管理】进入域名管理。
  2. 在【访问控制】>【鉴权配置】,单击【编辑】进入鉴权配置页。
  3. 在鉴权配置页进行如下设置:
    1. 单击开启播放鉴权。
    2. 填写自定义鉴权主 Key,例如:testlive
    3. 选填自定义鉴权备 Key,例如:testing
    4. 填写签名有效时间,例如:20
    5. 单击【保存】,即可保存配置。
说明:

  • 播放域名的播放鉴权默认为关闭状态。
  • 鉴权 Key:用户自定义设置,支持大小写字母和数字。Key 包含主 Key 和备 Key,主 Key 必填、备 Key 选填,主备 Key 可实现当 Key 泄露时平滑更换 Key 不影响业务。
  • 有效时间:签名的有效时间,时间戳为十六进制 UNIX 时间。

注意:

开启播放域名的鉴权设置后,原有播放 URL 将无法直接访问,会返回403。开启此功能,请确保您的业务兼容以下鉴权算法,以免影响您的直播业务。

配置案例

若原始播放 URL 为:

http://www.test.com/live/test01.flv

对此域名配置鉴权时,参数如下:

主 Key:ngoeiq03
备 Key:无
有效时间:12495秒
注意:

  • 若您开启了域名鉴权,实际过期时间等于 txTime + 鉴权有效时间。
  • 控制台为了方便使用,设置的时间即为实际过期时间。若您开启了域名鉴权,计算播放地址时会按照公式倒推出 txTime。

时间戳计算:

设置时间:2018.12.01 08:30:00
十进制 UNIX 时间戳:1543624200
十六进制 UNIX 时间戳:5C01D608(云直播鉴权配置使用十六进制 UNIX 时间戳,十六进制不区分字母大小写)

鉴权签名计算:

txSecret = MD5(key+StreamName+txTime) 
StreamName 为流名称,与 StreamID 概念等同
txTime 为时间戳
key 为鉴权密钥
txSecret = MD5(ngoeiq03+test01+5C01D608)
txSecret = MD5(ngoeiq03test015C01D608)
txSecret = 6cfcc16fa1eb1200c78b8296468b9180

新生成的播放 URL 为:

http://www.test.com/live/test01.flv?txSecret=6cfcc16fa1eb1200c78b8296468b9180&txTime=5C01D608

此 URL 的有效时间时间截止到:2018.12.01 08:30:00 + 12495秒,即北京时间:2018.12.01 11:58:15。
若鉴权未通过或 URL 已失效,则云直播将返回403。

目录