阿里云CDN鉴权功能为您提供了三种方式,本文档为您介绍了鉴权方式B的原理并用示例说明。鉴权功能主要用于保护用户站点的内容资源不被非法站点下载盗用。

原理说明

访问加密URL格式:

http://DomainName/timestamp/md5hash/FileName

当鉴权通过时,实际回源的URL是:

http://DomainName/FileName

鉴权字段描述

字段 描述
DomainName CDN站点的域名。
timestamp 资源失效时间,作为URL的一部分,同时作为计算md5hash的一个因子,格式为: YYYYMMDDHHMM,有效时间1800s。

例如您设置访问时间为2020-08-15 15:00:00,则链接的真正失效时间为2020-08-15 15:30:00。

md5hash 通过md5算法计算出的验证串,由数字0-9和小写英文字母a-z混合组成,固定长度32。
PrivateKey 您设定的鉴权密钥。
Filename 实际回源访问的URL,鉴权时Filename需以/开头。

示例说明

您可以通过以下示例说明更好地理解鉴权方式B的实现。

  1. 回源请求对象:
    http://cdn.example.com/4/44/44c0909bcfc20a01afaf256ca99a8b8b.mp3
  2. 密钥设为:aliyuncdnexp1234 (您自行设置)。
  3. 访问源服务器时间为 201508150800(格式为: YYYYMMDDHHMM)。
  4. CDN服务器会构造一个用于计算Hashvalue的签名字符串。
    aliyuncdnexp1234201508150800/4/44/44c0909bcfc20a01afaf256ca99a8b8b.mp3
  5. 服务器根据该签名字符串计算md5hash
    md5hash = md5sum("aliyuncdnexp1234201508150800/4/44/44c0909bcfc20a01afaf256ca99a8b8b.mp3") = 9044548ef1527deadafa49a890a377f0
  6. 请求url为:
    http://cdn.example.com/201508150800/9044548ef1527deadafa49a890a377f0/4/44/44c0909bcfc20a01afaf256ca99a8b8b.mp3
    如果计算出来的md5hash与您请求中带的md5hash值(9044548ef1527deadafa49a890a377f0 )一致,鉴权通过。

鉴权方式A和鉴权方式C具体原理和示例,请参见鉴权方式A鉴权方式C

鉴权方式A和鉴权方式C具体原理和示例,请参见鉴权方式A鉴权方式C