You need to enable JavaScript to run this app.
导航
鉴权类型 TypeB 说明
最近更新时间:2024.05.14 17:08:14首次发布时间:2023.12.12 15:46:13

算法说明

请求 URL 构成

请求 URL 构成:http://DomainName/timestamp/md5hash/FileName

说明

  • 请求 URL 中不能包含汉字。
  • 有效时间的最大值为:31536000秒。

鉴权字段说明

字段

描述

DomainName

全站加速的加速域名。

Filename

资源所在的相对路径,鉴权URL的 Filename 需以正斜线/开头。

timestamp

鉴权URL被生成的时间。时间点取自全站加速的UTC+8时间,格式为:YYYYMMDDHHMM

  • timestamp 将与在控制台配置的有效时间一起计算得出鉴权URL的失效时间。

md5hash

通过 MD5 算法计算出的固定长度为32位的字符串,由数字 0-9 和小写英文字母 a-z 混合组成。

  • 计算 md5hash 的具体公式为:md5hash = md5sum(pkeytimestampuri)
    • pkey:鉴权KEY,由6 - 40位大小写字母、数字组成。密钥需要严格保密,仅客户端与服务端知晓。
    • timestamp:取值为上述中的timestamp。
    • uri:请求资源的相对地址,地址不包含参数,以正斜线/开头,如/Filename。
    • 公式中的鉴权参数之间无任何符号。

控制台配置

字段

描述

鉴权类型

全站加速支持四种鉴权类型:TypeA、TypeB、TypeC、TypeD。

鉴权KEY

  • 请输入大小写字母、数字。鉴权KEY长度为6 - 40位。
  • 密钥需要严格保密,仅客户端与服务端知晓。
  • 点击随机生成,控制台将自动为您生成鉴权KEY。
  • 在计算 md5hash 时,pkey表示鉴权KEY。

访问路径

请输入资源所在相对路径,以/开头,无需携带参数。

开始日期

  • 鉴权URL被生成的时间。
  • 在计算 md5hash时,开始日期将被转化为格式为YYYYMMDDHHMMtimestamp,时间点取自全站加速的UTC+8时间。

有效时间

  • 指鉴权URL的有效时间,单位是秒。
  • 有效时间默认为0秒,最大可输入31536000秒,即1年。
  • 如果您设置有效时间为 1800s,则用户可在从timestamp 开始的 1800s 内访问全站加速上的相关资源 。超出该有效时间后,全站加速将拒绝来自该鉴权URL的请求。

鉴权逻辑说明

收到来自鉴权URL的请求后,全站加速将解析出鉴权URL 中的 timestamp 参数 、鉴权 URL 有效时间。然后与当前时间比较。具体逻辑如下:

  • 如果 timestamp + 鉴权 URL 有效时间 < 当前时间,那么全站加速判定鉴权URL已过期,拒绝该请求并返回 403状态码。
  • 如果 timestamp + 鉴权 URL 有效时间 ≥ 当前时间,那么全站加速会使用 MD5 算法算出 md5hash 的值。
    • 如果全站加速基于鉴权参数计算得到的 md5hash 值与鉴权URL中的 md5hash 值相同,则鉴权成功,全站加速正常响应该请求。
    • 如果全站加速基于鉴权参数计算得到的 md5hash 值与鉴权URL中的 md5hash 值不同,则鉴权失败,全站加速拒绝响应该请求,并返回403状态码。

注意事项

  1. 回源策略:某加速域名开启了 URL鉴权 功能,鉴权类型为 TypeB。鉴权URL的格式为:http://DomainName/timestamp/md5hash/FileName。鉴权成功后,如果未匹配上边缘节点的资源,边缘节点会向源站发起回源请求。回源时,系统将去除鉴权参数。回源URL的实际格式为:http://DomainName/Filename
  2. 缓存命中率:鉴权 URL 会携带鉴权参数。全站加速根据鉴权请求生成缓存键时,会自动忽略对应的鉴权参数,因此启用URL鉴权功能并不会影响边缘节点上的缓存资源被命中的概率。

说明

如:某个加速域名开启了 URL鉴权 功能,鉴权类型为 TypeB。URL的时间戳鉴权参数为timestamp,那么边缘节点根据这个鉴权URL请求生成缓存键时,系统会自动忽略时间戳及其他鉴权参数timestamp/md5hash