天翼云极速直播域名管理 - URL鉴权
文档简介:
本文介绍极速直播URL鉴权。
功能介绍:
为保障直播资源不被非法盗用,避免产生不必要的带宽浪费,您可以使用极速直播的URL鉴权功能,在主播推流或播放URL中加上鉴权信息。在主播请求直播推流或观众请求播放时,CDN会对其URL带的加密信息进行合法性判断,仅校验通过的请求会予以响应,其它非法的访问将予以拒绝,从而有效地保护直播资源。
本文介绍极速直播URL鉴权。
功能介绍
为保障直播资源不被非法盗用,避免产生不必要的带宽浪费,您可以使用极速直播的URL鉴权功能,在主播推流或播放URL中加上鉴权信息。在主播请求直播推流或观众请求播放时,CDN会对其URL带的加密信息进行合法性判断,仅校验通过的请求会予以响应,其它非法的访问将予以拒绝,从而有效地保护直播资源。
适用场景
- 需要对站点资源限制用户访问,避免资源被恶意下载或者非法盗用。
- 请求的资源都具有一定的时效性,超过时效则不允许访问。
注意事项
- 配置URL鉴权需要客户端跟CDN配合一起开启。
- 当鉴权参数发生变更时,需要通知CDN进行配合更改,否则将导致用户请求异常。
- 如果您的鉴权URL中含有中文或特殊字符,需先进行URL转码(即Encode)后使用。
- URL鉴权暂不支持自助,如需使用,请通过工单联系天翼云。
前提条件
- 客户提供用于计算加密串的key值。
- 客户与CDN约定好计算规则、校验逻辑。
配置说明
天翼云提供两种鉴权方式供您参考配置,以下为详细的鉴权原理及配置说明。
鉴权方式A
1)原理说明
- 鉴权方式A访问URL构成:http://DomainName/md5hash/timestamp/app/stream
- 鉴权字段说明
字段 | 描述 |
---|---|
DomainName | 极速直播加速域名。 |
/app/stream | 用户访问的发布点和流名。 |
timestamp |
鉴权URL的时间。支持两种方式: 1)鉴权开始时间,值为1970年1月1日以来的当前时间秒数 ,支持十进制或者十六进制。 该场景下与鉴权URL有效时长共同控制鉴权URL的失效时间。鉴权URL实际有效期=timestamp+CDN配置的鉴权URL有效时长。 2)鉴权过期时间,值为1970年1月1日以来的当前时间秒数 ,支持十进制或者十六进制。 |
md5hash |
通过MD5算法计算出的32位字符串。计算公式如下:md5hash = md5sum(keyuritimestamp) 说明: md5加密元素分隔符默认无符号,也可自定义;同时支持自定义用于计算md5的参数。 key为用户设定的鉴权秘钥,由大小写字母与数字组成,例如:ctcdnkey123。 |
- 校验方法
CDN服务器拿到请求后,会按照如下步骤进行校验:
1、时间校验:判断系统当前时间是否在时间戳有效期内。超出有效期,认为过期失效并返回HTTP 403错误。
2、加密串校验:时间校验通过后,比对CDN服务器计算出来的md5hash值与访问请求中带的md5hash值是否相同,结果一致则认为鉴权通过并返回文件,否则鉴权失败返回HTTP 403错误。
鉴权方式B
1)原理说明
- 鉴权方式B访问URL构成:http://DomainName/app/stream?auth_key=md5hash×tamp=timestamp
- 鉴权字段说明
字段 | 描述 |
---|---|
DomainName | 极速直播加速域名。 |
Filename | 用户访问的发布点和流名。不包含?后面的参数。 |
auth_key | 设定的鉴权参数名,默认为auth_key,也可自定义。 |
timestamp |
鉴权URL的时间。支持两种方式: 1)鉴权开始时间,值为1970年1月1日以来的当前时间秒数 ,支持十进制或者十六进制。 该场景下与鉴权URL有效时长共同控制鉴权URL的失效时间。鉴权URL实际有效期=timestamp+CDN配置的鉴权URL有效时长。 2) 鉴权过期时间,值为1970年1月1日以来的当前时间秒数 ,支持十进制或者十六进制。 |
md5hash |
通过MD5算法计算出的32位字符串。计算公式如下: md5hash = md5sum(keyuritimestamp), 说明如下: 1)md5加密元素分隔符默认无符号,也可自定义;同时支持自定义用于计算md5的参数。 2)key为用户设定的鉴权秘钥,由大小写字母与数字组成,例如:ctcdnkey123。 |
- 校验方法
CDN服务器拿到请求后,会按照如下步骤进行校验:
1、是否携带鉴权参数。如果没有携带鉴权参数,认为请求非法,返回HTTP 403错误。
2、时间校验:判断系统当前时间是否在时间戳有效期内。超出有效期,认为过期失效并返回HTTP 403错误。
3、加密串校验:时间校验通过后,比对CDN服务器计算出来的md5hash值与访问请求中带的md5hash值是否相同,结果一致则认为鉴权通过并返回文件,否则鉴权失败返回HTTP 403错误。