最近更新时间:2024.05.11 17:38:27
首次发布时间:2023.08.23 19:50:16
本文为您详细介绍 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 + 有效时长。示例: |
key | 您在视频点播控制台配置的密钥。可以使用主密钥或者备密钥。 |
uri | 请求的文件路径。路径以斜杠(/)开头,不包含域名。比如请求的完整路径为 |
鉴权流程:
md5(key + timestamp + uri)
公式计算签名值。MD5 值在鉴权时会转化成小写进行比较。说明
MD5 值是 32 位。
timestamp
+ 您在视频点播控制台配置的有效时长”跟当前时间进行对比。如果签名的过期时间早于当前时间,视频点播判定签名已过期;反之,则判定签名有效。对于 B 类型鉴权方式,您可以在视频点播控制台中配置以下参数:
参数 | 说明 |
---|---|
生效对象 | 指定哪些文件的请求需要被鉴权。您可以指定以下匹配类型和匹配规则:
|
主 Key | 主密钥。长度限制为 6-40 个字符,只能包含可打印 ASCII 字符,Delete(ASCII code 127)除外。不支持纯空白字符。 |
备 Key | 备密钥。长度限制为 6-40 个字符,只能包含可打印 ASCII 字符,Delete(ASCII code 127)除外。不支持纯空白字符。 说明 对线上业务域名变更 URL 鉴权时,建议在过渡期使用备 Key,避免业务中断。 |
有效时间 | 签名的有效时长。默认的有效时间是 1800。单位为秒。取值范围是 [0,315,360,000]。该参数与客户端请求中的 |
时间格式 | 固定为 YYYYMMDDHHMM。 |
以下示例可以帮助您准确理解鉴权方式 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 秒。
本示例中的鉴权流程如下:
视频点播 CDN 节点收到客户端的带签名请求后,使用 MD5 算法,基于 md5(key + timestamp + uri)
公式计算签名值。在本示例中,签名计算公式为:md5(abc123def456202202091133/img/image.png)
CDN 节点将签名值加入原始请求。得到的请求如下:
https://www.example.com/2202091133/542b6a3b47fbdd5bffd1a318a514e5b7/img/image.png
CDN 节点验证请求合法性: