原圖保護功能可以防止您OSS內允許匿名訪問的圖片檔案被盜用。開啟原圖保護後,匿名訪問者可以使用攜帶樣式參數的請求或通過簽名URL訪問原圖。
背景資訊
您可以通過以下方式訪問開啟原圖保護的圖片:
使用攜帶樣式參數的檔案URL訪問,格式為https://BucketName.Endpoint/ObjectName?x-oss-process=style/StyleName。
使用攜帶簽名的檔案URL訪問,格式為https://BucketName.Endpoint/ObjectName?Signature。
操作步驟
登入OSS管理主控台。
單擊Bucket 列表,然後單擊目標Bucket名稱。
在左側導覽列,選擇 。
在圖片處理頁面,單擊訪問設置。
在訪問設置面板,開啟原圖保護開關,並設定以下參數:
參數
說明
原圖保護規則
最多可設定10條原圖保護規則,每條規則由首碼和尾碼組成。
說明原圖保護規則功能公測中,請聯絡支援人員申請使用。
規則說明如下:
設定單條原圖保護規則時,首碼和尾碼可單獨配置,也可以同時配置。同時配置時,檔案名稱需同時匹配前尾碼才會生效。
說明如果您希望對某個檔案夾(例如image/)下的圖片檔案開啟原圖保護,請將首碼設定為image/。
設定多條原圖保護規則時,檔案名稱匹配任意一條規則即可生效。
原圖保護規則和原圖保護尾碼同時配置時,檔案名稱匹配兩者中的任一配置即可生效。
如果您希望忽略規則中指定首碼或尾碼的大小寫,請選中忽略大小寫。
原圖保護後綴
在原圖保護後綴下拉式清單選擇檔案尾碼,Bucket中所有匹配指定尾碼的檔案都會被保護。
說明如果設定為
*
,則所有檔案都會被保護。自定義分隔符
支援四種自訂分隔字元,分別為虛線(-)、底線(_)、正斜線(/)以及驚嘆號(!)。設定自訂分隔字元後,可使用分隔字元代替樣式參數,進一步簡化圖片處理URL。
例如,使用攜帶樣式參數的圖片處理URL訪問圖片時,格式為https://BucketName.Endpoint/ObjectName?x-oss-process=style/StyleName。將自訂分隔字元設定為驚嘆號(!)時,可直接使用格式為http(s)//:BucketName.Endpoint/ObjectName!StyleName的圖片URL訪問圖片。
單擊確定。
常見問題
問題一:OSS開啟了原圖保護,直接存取圖片檔案時會正常返回403,但是通過CDN來進行請求時原圖保護無效,返回200。
這種情況有可能是CDN回源到了私人Bucket,造成原圖保護失效。原圖保護功能僅針對匿名訪問檔案有效,對於帶簽名的訪問是無效的。
問題二:開啟原圖保護後,為什麼通過簽名後的URL仍可以訪問原圖?
原圖保護僅針對允許匿名訪問的檔案,使用簽名URL訪問圖片屬於非匿名訪問。所以開啟原圖保護後,使用簽名後的URL仍然可以訪問原圖。