You need to enable JavaScript to run this app.
文档中心
视频点播

视频点播

复制全文
下载 pdf
配置 URL 鉴权
B 类型说明
复制全文
下载 pdf
B 类型说明

本文为您详细介绍 B 类型鉴权方式的工作原理并提供鉴权示例。

工作原理

B 类型鉴权方式的工作原理说明如下:

  • 鉴权 URL 构成:

    scheme://host/timestamp/md5(key + timestamp + uri)/uri(?query)
    
  • 鉴权 URL 示例:

    https://www.example.com/2202091133/542b6a3b47fbdd5bffd1a318a514e5b7/img/image.png
    
  • 鉴权参数说明如下:

    参数

    描述

    timestamp

    鉴权 URL 的生成时间。格式为 YYYYMMDDHHMM。该参数与您在视频点播控制台中配置的有效时长搭配使用,用来计算签名的失效时间。签名的失效时间 = timestamp + 有效时长。示例:202202092011

    key

    您在视频点播控制台配置的密钥。可以使用主密钥或者备密钥。

    uri

    请求的文件路径。路径以斜杠 / 开头,不包含域名。比如请求的完整路径为 https://www.example.com/image.png,则 uri 的值为 /image.png。如果路径包含中文字符,您需要对路径编码。

  • 鉴权流程:

    1. CDN 节点收到客户端的带签名请求后,使用 MD5 算法,基于 md5(key + timestamp + uri) 公式计算签名值。MD5 值在鉴权时会转化成小写进行比较。

      说明

      MD5 值是 32 位。

    2. CDN 节点进行以下校验:
      1. 判断服务端计算出的签名值和客户端请求 URL 中的签名值是否一致。
      2. 判断签名是否过期。CDN 节点会将“timestamp+ 您在视频点播控制台配置的有效时长”跟当前时间进行对比。如果签名的过期时间早于当前时间,视频点播判定签名已过期;反之,则判定签名有效。
    3. 根据检验结果,返回资源请求或 HTTP 403 错误。

控制台配置说明

对于 B 类型鉴权方式,您可以在视频点播控制台中配置以下参数:
Image

参数

说明

生效对象

表示对哪些文件的请求需要被鉴权。该参数仅支持一个规则。

  • 规则类型:支持以下选项:
    • 文件目录:规则应用于特定目录下的所有文件。选择该类型时,固定匹配全部文件
    • 文件后缀:规则应用于特定后缀名的所有文件。
  • 是否匹配:可设为匹配不匹配
  • 规则内容:长度不能超过 1,024 个字符。不能包含以下字符:连续斜杠 //、空格、美元符号 $、问号 ?、Delete(ASCII code 127)。必须是一个或者多个以分号 ; 分隔的文件后缀。文件后缀无需以句点 . 开头。示例:png;txt

主 Key

主密钥。长度限制为 1-120 个字符,只能包含可打印 ASCII 字符,Delete(ASCII code 127)除外。不支持纯空白字符。

备 Key

备密钥。长度限制为 1-120 个字符,只能包含可打印 ASCII 字符,Delete(ASCII code 127)除外。不支持纯空白字符。

说明

对线上业务域名变更 URL 鉴权时,建议在过渡期使用备 Key,避免业务中断。

有效时间

签名的有效时长,单位为秒。该参数与客户端请求中的 timestamp 参数搭配使用,用来计算签名的失效时间。签名的失效时间 = timestamp + 有效时长。您可指定一个时间单位并输入时间。默认的有效时长是 1,800 秒。您可以指定的最长时间是 10 年,也就是 315,360,000 秒。具体说明如下:

时间格式

指定 URL 鉴权参数中时间戳的格式。CDN 节点将根据此处选择的格式解析请求 URL 中的时间戳,以判断链接是否过期。该配置有以下选项:

  • YYYYMMDDHHMM:使用“年+月+日+时+分”的明文格式。示例 : 202310271200。
  • 十进制 (Unix 时间戳):使用自 1970 年 1 月 1 日(UTC)起经过的秒数,以十进制整数表示。示例 : 1698379200。
  • 十六进制 (Unix 时间戳):将十进制的 Unix 时间戳转换为十六进制字符串。示例 : 653b3b80。

鉴权算法

表示签名计算使用的算法,支持的算法有:

  • MD5:表示 MD5 算法。
  • SHA256:表示 SHA-256 算法。

说明

SHA-256 算法的安全性比 MD5 高,生成的哈希值出现碰撞的几率比 MD5 低,但是加密和解密过程的耗时比 MD5 长。

M3U8 改写

表示在响应 .m3u8 文件的请求时,是否对 .m3u8 文件中每个分片文件的 URL 添加签名参数。每个分片 URL 的签名是基于改写后分片 URL,使用签名规则计算的。开启该配置后,您还可进行以下配置:

  • 分片 URL 原参数:在改写分片 URL 时是否保留 URL 中原有的参数。默认保留
  • 继承 M3U8 非签名参数:是否将来自该 M3U8 文件请求的不表示签名的查询参数添加到分片 URL 中。默认关闭

说明

  • 对于点播加速域名,m3u8 改写默认开启。
  • 对于自定义源站加速域名,m3u8 改写默认关闭。

鉴权示例

以下示例可以帮助您准确理解鉴权方式 B 的实现方式。

示例条件

本示例中,假设带签名的请求 URL 为:

https://www.example.com/2202091133/542b6a3b47fbdd5bffd1a318a514e5b7/img/image.png

根据以上 URL,各鉴权参数的取值具体如下:

  • uri 的值为 /img/image.png
  • timestamp 的值为 202202091133,表示鉴权 URL 的生成时间为 2022-02-09 11:33 GMT。

再假设您在视频点播控制台设置的密钥为 abc123def456,有效时长为 1800 秒。

鉴权流程

本示例中的鉴权流程如下:

  1. 视频点播 CDN 节点收到客户端的带签名请求后,使用 MD5 算法,基于 md5(key + timestamp + uri) 公式计算签名值。在本示例中,签名计算公式为:md5(abc123def456202202091133/img/image.png)

  2. CDN 节点将签名值加入原始请求。得到的请求如下:

    https://www.example.com/2202091133/542b6a3b47fbdd5bffd1a318a514e5b7/img/image.png
    
  3. CDN 节点验证请求合法性:

    1. 判断该请求和客户端请求是否一致。本示例中两者一致。
    2. 判断请求是否过期。假设本示例中,CDN 节点收到请求的时间是 2022-02-09 11:40 GMT,该时间早于 “2022-02-09 11:33 + 1800 秒”,因此判定请求未过期。
最近更新时间:2026.05.13 17:26:09
这个页面对您有帮助吗?
有用
有用
无用
无用