视频接入服务 VIS-RTMP视频流接入VIS(已下线):推流鉴权规则

时间:2024-05-29 09:18:14

推流鉴权规则

如果创建RTMP视频流时设置了访问密钥,创建完成后,在使用客户端进行推流时,需在RTMP视频流的原始推流地址的基础上拼接相关鉴权参数(Expires、AccessKeyId、Token),参数规则请参见表2

RTMP视频流的原始推流地址查看方法:在VIS管理控制台选择“视频流管理”,单击RTMP视频流名称进入视频预览界面,查看推流地址,例如“rtmp://10.4.55.180:14201/vis/stream_name”或者 “rtmp://10.4.55.180:14201/vis/stream_name?project_id=c5648d9ee6b14xxxxxxxe6fc594e55df”,或者

需要鉴权的推流地址样例:

获取的推流地址不带有参数的,通过 ? 来拼接:
rtmp://xxx.xxx.xxx.xxx:xxxx/vis/stream_name?Expires=1472201595&AccessKeyId=J7UFQDxxxxxxNUV5LQK3CN&Token=bjKraxxxxxx%2FlM%3D
获取的推流地址带有参数的,通过 & 来拼接:
rtmp://xxx.xxx.xxx.xxx:xxxx/vis/stream_name?project_id=c5648d9ee6b14xxxxxxxe6fc594e55df&Expires=1472201595&AccessKeyId=J7UFQDxxxxxxNUV5LQK3CN&Token=bjKraxxxxxx%2FlM%3D
表2 RTMP推流鉴权查询参数说明

参数

说明

取值样例

Expires

RTMP视频流的过期时间戳,采用Unix时间戳。

1472201595

AccessKeyId

访问密钥的AK值。

J7UFQDDxxxxxxLQK3CN

Token

通过验证计算得到的token,计算规则:

Token=Base64(hmac-sha1(SecretKey, Tcurl + Expires))

该计算规则固定采用hmac-sha1加密算法和Base64编码方式,其中的参数说明如下:

  • SecretKey为访问密钥的SK值,作为加密算法密钥。
  • Tcurl + Expires由Tcurl和Expires进行字符串拼接得到,为加密算法消息数据。
    • Tcurl为VIS控制台视频预览界面上原始推流地址(不包含参数部分),例如:

      rtmp://xxx.xxx.xxx.xxx:xxxx/vis/stream_name

    • Expires同查询参数Expires,取值相同。

KH48kBm6Bp0xxxxxx6rl904rq

support.huaweicloud.com/usermanual-vis/vis_02_0012.html