OSS+CDN的資費和安全

文章目錄

    • 花費
      • OSS
      • CDN
      • OSS + CDN
    • 安全
      • OSS
        • 防盜鏈
        • 跨域設置CORS
        • 數據加密
      • CDN
        • 防盜鏈
        • URL鑒權
        • Cookie鑒權
        • 遠程鑒權
        • IP黑白名單
        • UA黑白名單
      • 回源服務
        • 自定義私有參數
        • IP黑白名單
        • 數據加密

花費

OSS

  • 存儲費用 :0.12元/GB/月
  • 下行流量費用 :0.5元/GB
  • 請求費用 :0.01元/10000次

CDN

  • 下行流量費用:0.24元/GB(梯度計費,用的越多越便宜)
  • 靜態HTTPS請求數:0.05元/萬次

OSS + CDN

  • CDN流出流量:由CDN收取費用:0.24元/GB
  • CDN回源流出流量:由OSS收取費用:0.15元/GB
  • 請求費用:由OSS收取費用:0.01元/萬次

安全

OSS

防盜鏈

防盜鏈通過設置Referer列表(包括白名單Referer和黑名單Referer)以及是否允許空Referer的方式,限制您Bucket內資源的訪問來源,避免Bucket內的資源被其他人盜用。

開啟防盜鏈后,OSS會根據請求Header中的Referer地址判斷訪問來源的方式,確定是否允許當前請求。具體流程如下圖所示。

在這里插入圖片描述

  1. 判斷請求Referer是否為空。
    • 如果請求Referer為空,則查看是否允許空Referer。
      • 如果允許空Referer,則請求被允許。
      • 如果不允許空Referer,且白名單Referer列表為空,則請求被允許。
      • 如果不允許空Referer,且白名單Referer列表不為空,則請求被拒絕。
    • 如果請求Referer不為空,則執行步驟2。
  2. 判斷黑名單Referer列表是否為空。
    • 如果黑名單Referer列表為空,且白名單Referer列表為空,則請求被允許。
    • 如果黑名單Referer列表為空,且白名單Referer列表不為空,則跳過步驟3,執行步驟4。
    • 如果黑名單Referer列表不為空,則執行步驟3。
  3. 遍歷黑名單Referer列表。
    • 如果黑名單Referer列表存在匹配條目,則請求被拒絕。
    • 如果黑名單Referer列表不存在匹配條目,則執行步驟4。
  4. 遍歷白名單Referer列表。
    • 如果白名單Referer列表存在匹配條目,則請求被允許。
    • 如果白名單Referer列表不存在匹配條目,則請求被拒絕。
跨域設置CORS

同源檢測 跨域訪問是瀏覽器出于安全考慮而設置的一個限制,即同源策略,是用于隔離潛在惡意文件的關鍵安全機制。當A、B兩個網站屬于不同域時,來自于A網站頁面中的JavaScript代碼訪問B網站時,瀏覽器會拒絕該訪問。

同協議、同域名(或IP)以及同端口視為同域。兩個頁面的協議、域名和端口(如果指定了端口)相同,則視為同源。下表給出了相對http://www.aliyun.com/org/test.html的同源檢測示例:

URL訪問是否成功原因
http://www.aliyun.com/org/other.html協議、域名、端口相同
http://www.aliyun.com/org/internal/page.html協議、域名、端口相同
https://www.aliyun.com/page.html協議不同(HTTPS)
http://www.aliyun.com:22/dir/page.html端口不同(22)
http://help.aliyun.com/dir/other.html域名不同

從上表中可以看出,協議、域名或者端口不同的情況下,瀏覽器會拒絕該來源的訪問。如果要允許這些來源的訪問,需要設置跨域規則。

數據加密

CDN

防盜鏈

配置訪問請求來源的域名(即Referer黑名單和白名單),實現對訪客身份的識別和過濾,限制訪問CDN資源的用戶,禁止其他網站引用您的資源鏈接。

URL鑒權

URL鑒權是指用戶按照指定的簽名方式對于特定的URL增加鑒權認證,您可以通過自行配置校驗鑒權URL中的加密串和時間戳,保護用戶站點的資源不被非法站點下載盜用。URL鑒權比Referer防盜鏈安全性更高,適合于安全密級較高的文件。

  • 源站應用服務器:根據鑒權URL生成規則(包括鑒權算法、密鑰)生成鑒權URL返回給客戶端。
  • 客戶端:發起資源請求,并發送鑒權URL給CDN節點進行驗證。
  • CDN節點:對鑒權URL中的鑒權信息(鑒權字符串、時間戳等)進行驗證。

示例

1.應用服務器生成如下的URL

原始URL:http://aaa.example.com/video/test.flv

加鑒權后URL:http://cdn.com/video/test.flv?Signature=hmac(timestamp,md5(filePath),key)&Expires=xxxx

  • Expires為將來的某個時間

  • filePath : /video/test.flv

2.CDN查看傳入的timestamp看是否是超過30min。

3.CDN按相同的hmac校驗是否篡改。

要把key和可支持的過期時間在CDN提前配置好。

Cookie鑒權

簽名 Cookie 提供有限的權限和時間用于向一組文件發出請求。

下列情況下,可以使用簽名 Cookie

  • 您需要提供對多個受限文件的訪問權限。
  • 您不想更改當前網址。
  • 您不希望在每次刷新授權時要更新網址后才能訪問內容。

要是客戶禁用cookie或不支持cookie的設備就拉了

配置和發布簽名 Cookie 的過程分為三個步驟

  • 源站應用服務器:給指定Domain生成鑒權Cookie返回給客戶端。
    • Cookie 值: 網址前綴、過期時間、鍵名稱和加密簽名
  • 客戶端:發起資源請求,并發送URL給CDN節點進行驗證。
  • CDN節點:對鑒權Cookie中的鑒權信息(鑒權字符串、時間戳等)進行驗證。

示例Cookie:

// 一體
Set-Cookie: Cloud-CDN-Cookie=URLPrefix=aHR0cHM6Ly9tZWRpYS5leGFtcGxlLmNvbS92aWRlb3Mv:Expires=1566268009:KeyName=mySigningKey:Signature=0W2xlMlQykL2TG59UZnnHzkxoaw=; Domain=media.example.com; Path=/; Expires=Tue, 20 Aug 2019 02:26:49 GMT; Secure; HttpOnly
// 分開
Set-Cookie: 
CloudFront-Expires=date and time in Unix time format (in seconds) and Coordinated Universal Time (UTC); 
Domain=optional domain name; 
Path=/optional directory path; 
Secure; 
HttpOnlySet-Cookie: 
CloudFront-Signature=hashed and signed version of the policy statement; 
Domain=optional domain name; 
Path=/optional directory path; 
Secure; 
HttpOnlySet-Cookie: 
CloudFront-Key-Pair-Id=public key ID for the CloudFront public key whose corresponding private key you're using to generate the signature; 
Domain=optional domain name; 
Path=/optional directory path; 
Secure; 
HttpOnly

Cookie 中的 DomainPath 屬性決定了客戶端是否將 Cookie 發送到 Cloud CDN。

  • 明確設置 DomainPath 屬性,以匹配您希望從中傳送受保護內容的網域和路徑前綴,這可能與簽發 Cookie 的網域和路徑不同(分別是 example.commedia.example.com,或者分別是 /browse/videos)。

  • 對于同一個 DomainPath,請確保您只有一個具有指定名稱的 Cookie。

  • 請確保您未簽發有沖突的 Cookie,否則可能導致無法在其他瀏覽器會話(窗口或標簽頁)中訪問內容。

  • 在適用的情況下設置 SecureHttpOnly 標志。 Secure 可確保僅通過 HTTPS 連接發送 Cookie。HttpOnly 會禁止 JavaScript 使用 Cookie。

  • Cookie 特性 ExpiresMax-Age 是可選的。如果您省略這些特性,則 Cookie 會在瀏覽器會話(標簽頁或窗口)存在期間保持存在。

    注意:此處提及的 Expires 屬性是出現在 Cookie 值之外的屬性(如果有)。請勿將此屬性與 Cookie 值中必需的 Expires 參數混淆。Cookie 值中包含的 Expires 參數指定 Cloud CDN 允許用戶訪問受保護內容的時間限制。此時間限制與 Cookie 的有效期無關。

  • 在緩存填充或緩存未命中時,簽名 Cookie 會傳遞到后端服務中定義的源站。請確保首先驗證每個請求的簽名 Cookie 值,之后再傳送內容。

Set-Cookie: =; Domain=; Secure; HttpOnly

  • Expires 設置 cookie 的過期時間(時間戳),這個時間是客戶端時間
  • Max-Age 設置 cookie 的保留時長(秒數),同時存在 Expires 和 Max-Age 的話,Max-Age 優先
  • Domain 設置生效的域名,默認就是當前域名,不包含子域名
  • Path 設置生效路徑,/ 全匹配
  • Secure 設置 cookie 只在 https 下發送,防止中間人攻擊
  • HttpOnly 設置禁止 JavaScript 訪問 cookie,防止XSS
  • SameSite 設置跨域時不攜帶 cookie,防止CSRF
遠程鑒權

遠程鑒權和URL鑒權的作用一樣,都用于保護資源,讓資源只被授權成功的用戶訪問,非授權用戶將無法訪問。差異點在于URL鑒權是由CDN節點完成鑒權;遠程鑒權是用戶有自己單獨的鑒權服務器,由用戶自主管理。

IP黑白名單

可以通過配置訪問請求來源的IP地址(即IP黑名單和白名單),來實現對訪客身份的識別和過濾,限制訪問CDN資源的用戶,防止惡意IP盜刷、攻擊等問題。

UA黑白名單

User-Agent是訪問請求客戶端的標識,當您想指定訪問的客戶端時,可以通過配置User-Agent黑名單和白名單來實現對訪客身份的識別和過濾,保證用戶只從您允許的客戶端訪問。

回源服務

驗證自己提供給CDN的授權URL,但是無法防止惡意用戶直接訪問你的回源服務。

自定義私有參數

在云廠商的請求中添加自定義key在請求參數或者Header中。

IP黑白名單

只允許云廠商的IP訪問即可。

數據加密

1.回源服務返回為的文件時加密的,攜帶個keypairId參數

2.登錄的用戶才返回給他這個keypairid對應的key用于解密

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/167837.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/167837.shtml
英文地址,請注明出處:http://en.pswp.cn/news/167837.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

java全局異常處理(springboot)

介紹: 在日常項目開發中,異常是常見的,但是如何更高效的處理好異常信息,讓我們能快速定位到BUG,是很重要的,不僅能夠提高我們的開發效率,還能讓你代碼看上去更舒服,SpringBoot的項目…

C語言你愛我么?(ZZULIOJ 1205:你愛我么?)

題目描述 LCY買個n束花準備送給她暗戀的女生,但是他不知道這個女生是否喜歡他。這時候一個算命先生告訴他讓他查花瓣數,第一個花瓣表示"愛",第二個花瓣表示"不愛",第三個花瓣表示"愛"..... 為了使最…

某60區塊鏈安全之未初始化的存儲指針實戰二學習記錄

系列文章目錄 文章目錄 系列文章目錄未初始化的存儲指針實戰二實驗目的實驗環境實驗工具實驗原理實驗內容實驗過程EXP利用 未初始化的存儲指針實戰二 實驗目的 學會使用python3的web3模塊 學會分析以太坊智能合約未初始化的存儲指針漏洞 找到合約漏洞進行分析并形成利用 實驗…

機器學習之自監督學習(四)MoCo系列翻譯與總結(二)

MoCo中相關工作的對比分析 去噪自動編碼器(Denoising Autoencoder)是一種用于學習數據表示的神經網絡模型。它的主要目標是通過去除輸入數據中的噪聲,學習到輸入數據的有用表示,從而提高模型對干凈數據的魯棒性。下面是對去噪自動…

Flink 常用物理分區算子(Physical Partitioning)

Flink 物理分區算子(Physical Partitioning) 在Flink中,常見的物理分區策略有:隨機分配(Random)、輪詢分配(Round-Robin)、重縮放(Rescale)和廣播(Broadcast)。 接下來,我們通過源碼和Demo分別了解每種物理分區算子的作用和區別。 (1) 隨機…

win10安裝pytorch(py39)

cuda≤11.6,觀察控制面板 觀察torch對應cuda版本 https://download.pytorch.org/whl/torch/ 安裝cuda11.6.0 CUDA Toolkit Archive | NVIDIA Developer cmd輸入nvcc -V 編輯國內鏡像源 .condarc anaconda prompt輸入 查看環境 conda env list 安裝py3.9…

uniapp視頻倍速播放插件,uniapp視頻試看插件——sunny-video使用文檔

sunny-video視頻倍速播放器 組件名:sunny-video 效果圖 img1img2img3img4 平臺差異說明 目前已應用到APP(安卓、iOS)、微信(小程序、H5)其它平臺未測試 安裝方式 本組件符合easycom規范,HBuilderX 2.5…

emoji

圖標的網址: webfx emojipedia 1.可以直接復制粘貼 2.按照其格式文本表示(Shortcodes) 🚀 😄 🤫 ?? 💀 還有關于通過鏈接引用shield.io中的圖標,沒有深究,不…

第六十三周周報

學習目標: 項目 實驗和論文 學習時間: 2023.11.18-2023.11.24 學習產出: 論文 對論文進行了潤色和修改 實驗 1、上周DiffusionRelative的結果無法再次復現,新跑的FID與以前實驗跑的結果相差不大,上周的結果應…

點大商城V2.5.3分包小程序端+小程序上傳提示限制分包制作教程

這幾天很多播播資源會員反饋點大商城V2.5.3小程序端上傳時提示大小超限,官方默認單個包都不能超過2M,總分包不能超20M。如下圖提示超了93KB,如果出現超的不多情況下可采用手動刪除一些images目錄下不使用的圖片,只要刪除超過100KB…

鴻蒙4.0開發筆記之DevEco Studio如何使用低代碼開發模板進行開發的詳細流程(六)

鴻蒙低代碼開發 一、什么是低代碼二、如何進行鴻蒙低代碼開發1、 創建低代碼開發工程(方式壹)2、已有工程則創建Visual文件(方拾貳) 三、低代碼開發界面介紹四、低代碼實現頁面跳轉五、低代碼開發建議 一、什么是低代碼 所謂低代碼…

Qt+xml解析

文章目錄 一、xml文件介紹1.1 XML 文件結構和基本概念1.2 XML 文件示例二、Qt讀取xml文件2.1 Qt讀取xml 步驟2.2 基本操作和函數 QXmlStreamReader2.3 錯誤處理errorString和hasError2.4 Qt讀取xml實例三、實際項目一、xml文件介紹 1.1 XML 文件結構和基本概念 XML(可擴展標…

三、ts高級筆記,

文章目錄 18、d.ts聲明文件19、Mixin混入20、Decorator裝飾器的使用21、-高級proxy攔截_Reflect元儲存22、-高級寫法Partial-Pick23、Readonly只讀_Record套對象24、高階寫法Infer占位符25、Inter實現提取類型和倒敘遞歸26、object、Object、{}的區別27、localStorage封裝28、協…

基于 STM32F7 和神經網絡的實時人臉特征提取與匹配算法實現

本文討論了如何使用 STM32F7 和神經網絡模型來實現實時人臉特征提取與匹配算法。首先介紹了 STM32F7 的硬件和軟件特點,然后討論了人臉特征提取和匹配算法的基本原理。接下來,我們將重點討論如何在 STM32F7 上實現基于神經網絡的人臉特征提取與匹配算法&…

微機原理_3

一、單項選擇題(本大題共15小題,每小題3分,共45分。在每小題給出的四個備選項中,選出一個正確的答案,請將選定的答案填涂在答題紙的相應位置上。) 在 8086 微機系統中,完成對指令譯碼操作功能的部件是()。 A. EU B. BIU C. SRAM D. DRAM 使計算機執行某…

【機器學習】聚類(一):原型聚類:K-means聚類

文章目錄 一、實驗介紹1. 算法流程2. 算法解釋3. 算法特點4. 應用場景5. 注意事項 二、實驗環境1. 配置虛擬環境2. 庫版本介紹 三、實驗內容0. 導入必要的庫1. Kmeans類a. 構造函數b. 閔可夫斯基距離c. 初始化簇心d. K-means聚類e. 聚類結果可視化 2. 輔助函數3. 主函數a. 命令…

ElasticSearch之虛擬內存

查看當前Linux系統中vm.max_map_count變量的值,命令如下: sysctl vm.max_map_count執行結果的樣例,如下: vm.max_map_count 65530修改參數vm.max_map_count的值,命令如下: sysctl -w vm.max_map_count2…

數組題目: 665. 非遞減數列、453. 最小移動次數使數組元素相等、283. 移動零、189. 旋轉數組、396. 旋轉函數

665. 非遞減數列 題解&#xff1a; 題目要求一個非遞減數列&#xff0c;我們可以考慮需要更改的情況&#xff1a; nums {4, 2, 5} 對于這個nums&#xff0c;由于2的出現導致非遞減&#xff0c;更改的情況就是要么4調到<2&#xff0c;要么2調到4,5. nums {1, 4, 2, 5} …

人工智能-注意力機制之注意力匯聚:Nadaraya-Watson 核回歸

查詢&#xff08;自主提示&#xff09;和鍵&#xff08;非自主提示&#xff09;之間的交互形成了注意力匯聚&#xff1b; 注意力匯聚有選擇地聚合了值&#xff08;感官輸入&#xff09;以生成最終的輸出。 本節將介紹注意力匯聚的更多細節&#xff0c; 以便從宏觀上了解注意力機…

Lubuntu 23.10用戶可使用LXQt 1.4桌面

導讀在眾多 Lubuntu 用戶的要求下&#xff0c;Lubuntu 開發人員決定將 LXQt 1.4 桌面環境向后移植到最新的 Lubuntu 23.10 &#xff08;Mantic Minotaur&#xff09; 版本。 是的&#xff0c;您沒看錯&#xff0c;您現在可以使用官方的 Lubuntu Backports PPA&#xff08;個人軟…