鑒權方式B
更新時間 2024-10-10 17:47:25
最近更新時間: 2024-10-10 17:47:25
分享文章
配置URL鑒權后,CDN會對加密串及時間戳進行校驗,從而有效地保護用戶站點資源。天翼云CDN為您提供三種鑒權方式,本文為您詳細介紹鑒權方式B的原理和示例說明。
原理說明
- 鑒權方式B訪問URL構成:
//DomainName/timestamp/md5hash/FileName。
下文以如下URL作為示例://test.daliqc.cn/timestamp/md5hash/test/test.mp4?a=123。
- URL鑒權字段說明:
| 字段 | 描述 |
|---|---|
| DomainName | CDN加速域名。 |
| Filename | 實際回源訪問的URI,即域名后面"/"開頭,去掉一級和二級目錄后,截止到"?"之前的部分。即如上示例中的/test/test.mp4。 |
| timestamp | 1. 鑒權URL生成的時間,即:鑒權開始時間,值為從1970年1月1日0點至當前時間的總秒數 ,是十進制整數。 2. 與鑒權URL有效時長共同控制鑒權URL的失效時間。鑒權URL實際有效期=timestamp+CDN配置的鑒權URL有效時長。 |
| md5hash | 通過MD5算法計算出的32位字符串。計算公式如下:md5hash = md5sum(keytimestampFileName)。 1. md5加密元素分隔符默認無符號,也可自定義。 2. 這里的key為用戶設定的鑒權秘鑰,長度6到32,由大小寫字母與數字組成,例如:ctcdnkey123。 |
- 校驗方法
CDN服務器接收到請求后,會按照如下步驟進行校驗:
- 時間校驗:判斷系統當前時間是否在區間[timestamp,timestamp+有效時間]內。超出該區間,認為過期失效并返回HTTP 403錯誤。
- 加密串校驗:時間校驗通過后,比對CDN服務器計算出來的md5hash值與訪問請求中帶的md5hash值是否相同,結果一致則認為鑒權通過并返回文件,否則鑒權失敗返回HTTP 403錯誤。
配置示例
- 配置頁面
- 配置參數說明
| 參數名 | 說明 | 示例 |
|---|---|---|
| 加密key | 設定的鑒權密鑰。 | 123 |
| 加密元素分隔符 | 默認無符號,也可自定義。 | |
| 鑒權URL有效時長 | 判斷時間戳是否過期,單位秒。 | 300 |
- 示例說明
- 回源請求URL://test.daliqc.cn/test/test.mp4。
- 根據配置,加密key為123,生成鑒權URL時間為:2023年11月1日,轉化為十進制的整型數值為:1698768000。
- 需加密的字符串:1231698768000/test/test.mp4。
- 加密字符串:md5hash=md5sum(1231698768000/test/test.mp4)=65d443b388d46e350a8ee4ef58963c50。
- 鑒權URL://test.daliqc.cn/1698768000/65d443b388d46e350a8ee4ef58963c50/test/test.mp4。
- CDN服務器接收到請求后,進行校驗:
- 判斷系統當前時間是否在2023年11月1日0時0分0秒-2023年11月1日0時5分0秒之間,超過該區間則返回HTTP 403錯誤。
- 時間校驗通過后,比對CDN服務器計算出來的md5hash值與訪問請求中帶的md5hash值是否一致,一致則認為鑒權通過并返回文件,否則鑒權失敗返回HTTP 403錯誤。
注意事項
開啟鑒權方式B,請求的URI會攜帶時間戳和鑒權參數,緩存key和回源url默認也會增加對應值,為避免緩存命中率和回源受到影響需增加緩存及回源配置。
- 緩存配置:緩存key中的緩存URI改寫,詳情請見:緩存key設置。
配置示例:
配置說明:
| 參數 | 說明 |
|---|---|
| 待改寫PATH | ^/[^/]+/[^/]+(/[^/]+) |
| 目標PATH | $1 |
結果說明:原始請求為://test.daliqc.cn/1698768000/65d443b388d46e350a8ee4ef58963c50/test/test.mp4,經過緩存URI改寫后的緩存key為://test.daliqc.cn/test/test.mp4。
- 回源配置:回源URI改寫,詳情請見:回源URI改寫。
配置示例:
配置說明:
| 參數 | 說明 |
|---|---|
| 待改寫PATH | ^/[^/]+/[^/]+(/[^/]+) |
| 改寫后PATH | $1 |
結果說明:原始請求為://test.daliqc.cn/1698768000/65d443b388d46e350a8ee4ef58963c50/test/test.mp4,經過回源URI改寫后的回源請求為://test.daliqc.cn/test/test.mp4。