[發明專利]一種網站靜態資源防盜鏈方法有效
| 申請號: | 201910983265.0 | 申請日: | 2019-10-16 |
| 公開(公告)號: | CN110708328B | 公開(公告)日: | 2022-04-05 |
| 發明(設計)人: | 楊開森;任睿 | 申請(專利權)人: | 南京焦點領動云計算技術有限公司 |
| 主分類號: | H04L9/40 | 分類號: | H04L9/40;H04L67/02;H04L67/568 |
| 代理公司: | 南京瑞弘專利商標事務所(普通合伙) 32249 | 代理人: | 陳建和 |
| 地址: | 210000 江蘇省南京市*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 網站 靜態 資源 防盜 方法 | ||
1.一種網站靜態資源防盜鏈方法,其特征在于,包括如下步驟:
步驟 1:初始化階段;按照 Amazon cloudfront 服務配置過程,將網站靜態資源域名鏈接接入 CloudFront;在 CloudFront 處設置靜態資源非法訪問的錯誤響應及錯誤響應緩存時間;在 CloudFront 的白名單標頭名單中添加Referer-Host標頭;以 HTTP 狀態碼標識響應狀態,所述響應狀態包含正確響應和錯誤響應;所述錯誤響應分為短期拒絕訪問的錯誤響應和長期拒絕訪問的錯誤響應,所述短期拒絕訪問中錯誤響應的緩存時間比長期拒絕訪問中錯誤響應的緩存時間短;
步驟2:使用 Nodejs 編制 Lambda@Edge 函數并設置函數執行時間;Lambda@Edge 函數獲取請求報文中的請求頭,并提取請求來源的域名作為Referer-Host標頭的內容;通過CloudFront 觸發器建立 CloudFront 事件與 Lambda@Edge 函數關聯,設置函數在CloudFront接收到用戶 http 請求時執行域名提取;
步驟 3:通過Lambda@Edge函數的執行,在請求報文中的請求頭中新增自定義Referer-Host標頭和標頭的內容;
步驟4:根據 Referer-Host 字段內容和請求獲取的靜態資源,CloudFront 檢查緩存區內是否存在對該請求的回應,如若存在,將回應返回至瀏覽器端;如若不存在,執行步驟5;其中,緩存區中的請求的回應包括錯誤回應和正確回應,所述錯誤回應是反饋錯誤響應的http狀態碼;所述正確回應是請求獲取的靜態資源;
步驟 5:根據靜態資源域名鏈接,CloudFront 將資源訪問請求轉發至靜態資源源站點,源站點將 Referer-Host 標頭的內容值與本地存儲的合法域名進行比對,如在合法域名中找到Referer-Host 標頭的內容,則比對成功,請求源域名即請求來源的域名地址合法,返回靜態資源;如若在合法域名中沒有找到 Referer-Host 標頭的內容,繼續執行Referer-Host 標頭的內容與本地存儲的黑名單域名的比對,如若在黑名單域名找到Referer-Host 標頭的內容,則請求源域名為惡意域名;如若沒有找到,請求源域名為不合法域名;
步驟 6:源站點根據域名類型執行相應操作;針對合法請求源域名,訪問視為合法,源站點將用戶所需的靜態資源返回至 CloudFront,同時在返回的響應頭中添加緩存控制字段,所述緩存控制字段為 cache-control,字段內容是靜態資源在 CloudFront 中的緩存時間,所述緩存時間根據源站點靜態資源的更新周期確定;針對惡意域名,視為非法訪問,源站點在返回的響應頭中設置長期拒絕訪問的錯誤回應碼,針對不合法域名,視為非法訪問,源站點在返回的響應頭中設置短期拒絕訪問的錯誤回應碼;
步驟 7:CloudFront 接收到響應頭后,建立靜態資源請求與響應間的對應關系,并將對應關系存入 CloudFront 邊緣緩存區;根據緩存控制字段內容,將緩存字段指定的緩存時間設為對應關系在 CloudFront 邊緣緩存區的緩存時間;
步驟 8:CloudFront 將響應內容發送至 HTTP 客戶端,如若是合法訪問,將接收到靜態資源發送至 HTTP 客戶端;如若是非法訪問,直接返回錯誤響應碼給 HTTP 客戶端;
所述步驟 3 的Lambda@Edge 函數執行過程包括:終端用戶通過瀏覽器訪問包含靜態資源鏈接的網頁,點擊鏈接觸發靜態資源訪問請求的發送,待瀏覽器獲取到請求轉送至CloudFront 時,觸發Lambda@Edge 函數執行;Lambda@Edge 函數提取 http 請求頭中Referer-Host 標頭的內容標頭值,對其執行正則處理后得到請求源域名;在 http 請求頭中新增 Referer-Host 標頭,將得到的請求源域名作為 Referer-Host 標頭的內容。
2.如權利要求 1 所述的一種網站靜態資源防盜鏈方法,其特征在于:在所述步驟 1中,所述短期拒絕訪問的錯誤響應是指針對白名單和黑名單中都沒有記錄的請求源域名做出的反應,緩存時間范圍定在 3 天至 7 天;所述長期拒絕訪問的錯誤響應是針對黑名單中記錄的請求源域名做出的反應,緩存時間范圍定在半年至一年。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京焦點領動云計算技術有限公司,未經南京焦點領動云計算技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910983265.0/1.html,轉載請聲明來源鉆瓜專利網。





