云服务器内容精选

  • 示例说明 以使用MD5算法为例: 通过req_auth请求对象: http://hwcdn.example.com/T128_2_1_0_sdk/0210/M00/82/3E/test.mp3 密钥设为:huaweicloud12345(由用户自行设置) 鉴权生效开始日期为:2017年6月30日00:00:00,计算出来的秒数为1498752000。并且设置有效时间为1800s。 CDN服务器构造一个用于计算HashValue的签名字符串: /T128_2_1_0_sdk/0210/M00/82/3E/test.mp3-1498752000-0-0-huaweicloud12345 CDN服务器根据该签名字符串计算HashValue: HashValue = md5sum(“/T128_2_1_0_sdk/0210/M00/82/3E/test.mp3-1498752000-0-0-huaweicloud12345”) =4143ae4a8034c637fd256dfd3542bafc 请求时URL为: http://cdn.example.com/T128_2_1_0_sdk/0210/M00/82/3E/test.mp3?auth_key=1498752000-0-0-4143ae4a8034c637fd256dfd3542bafc 如果请求在有效时间内(请求时间小于等于2017年6月30日00:30:00),并且计算出来的HashValue与用户请求中带的md5hash值(4143ae4a8034c637fd256dfd3542bafc)一致,则鉴权通过。
  • 校验方法 CDN服务器拿到请求后,会按照如下步骤进行校验: 是否携带鉴权参数。如果没有携带鉴权参数,认为请求非法,返回HTTP 403错误。 时间校验:CDN服务器接收到客户端请求后,判断鉴权URL中的“timestamp参数 + 鉴权URL有效时长”是否大于当前时间。 如果“timestamp参数 + 鉴权URL有效时长”小于当前时间,认为过期失效并返回HTTP 403错误。 如果“timestamp参数 + 鉴权URL有效时长”大于或等于当前时间,则通过时间校验,继续执行步骤3。 加密串校验:时间校验通过后,则以sstring方式构造出一个字符串(参考以下sstring构造方式)。然后使用md5(sha256)算法算出HashValue,并和用户请求中带来的md5hash(sha256)进行对比。结果一致则认为鉴权通过并返回文件,否则鉴权失败返回HTTP 403错误。HashValue计算方式如下: sstring = "Filename-Timestamp-rand-uid-PrivateKey" HashValue = md5sum(sstring) 或: sstring = "Filename-Timestamp-rand-uid-PrivateKey" HashValue = sha256sum(sstring)