全部產品
Search
文件中心

Object Storage Service:原圖保護

更新時間:Feb 28, 2024

原圖保護功能可以防止您OSS內允許匿名訪問的圖片檔案被盜用。開啟原圖保護後,匿名訪問者可以使用攜帶樣式參數的請求或通過簽名URL訪問原圖。

背景資訊

您可以通過以下方式訪問開啟原圖保護的圖片:

  • 使用攜帶樣式參數的檔案URL訪問,格式為https://BucketName.Endpoint/ObjectName?x-oss-process=style/StyleName

  • 使用攜帶簽名的檔案URL訪問,格式為https://BucketName.Endpoint/ObjectName?Signature

操作步驟

  1. 登入OSS管理主控台

  2. 單擊Bucket 列表,然後單擊目標Bucket名稱。

  3. 在左側導覽列,選擇數據處理 > 圖片處理

  4. 圖片處理頁面,單擊訪問設置

  5. 訪問設置面板,開啟原圖保護開關,並設定以下參數:

    參數

    說明

    原圖保護規則

    最多可設定10條原圖保護規則,每條規則由首碼和尾碼組成。

    說明

    原圖保護規則功能公測中,請聯絡支援人員申請使用。

    規則說明如下:

    • 設定單條原圖保護規則時,首碼和尾碼可單獨配置,也可以同時配置。同時配置時,檔案名稱需同時匹配前尾碼才會生效。

      說明

      如果您希望對某個檔案夾(例如image/)下的圖片檔案開啟原圖保護,請將首碼設定為image/

    • 設定多條原圖保護規則時,檔案名稱匹配任意一條規則即可生效。

    • 原圖保護規則和原圖保護尾碼同時配置時,檔案名稱匹配兩者中的任一配置即可生效。

    • 如果您希望忽略規則中指定首碼或尾碼的大小寫,請選中忽略大小寫

    原圖保護後綴

    原圖保護後綴下拉式清單選擇檔案尾碼,Bucket中所有匹配指定尾碼的檔案都會被保護。

    說明

    如果設定為*,則所有檔案都會被保護。

    自定義分隔符

    支援四種自訂分隔字元,分別為虛線(-)、底線(_)、正斜線(/)以及驚嘆號(!)。設定自訂分隔字元後,可使用分隔字元代替樣式參數,進一步簡化圖片處理URL。

    例如,使用攜帶樣式參數的圖片處理URL訪問圖片時,格式為https://BucketName.Endpoint/ObjectName?x-oss-process=style/StyleName。將自訂分隔字元設定為驚嘆號(!)時,可直接使用格式為http(s)//:BucketName.Endpoint/ObjectName!StyleName的圖片URL訪問圖片。

  6. 單擊確定

常見問題

  • 問題一:OSS開啟了原圖保護,直接存取圖片檔案時會正常返回403,但是通過CDN來進行請求時原圖保護無效,返回200。

    這種情況有可能是CDN回源到了私人Bucket,造成原圖保護失效。原圖保護功能僅針對匿名訪問檔案有效,對於帶簽名的訪問是無效的。

  • 問題二:開啟原圖保護後,為什麼通過簽名後的URL仍可以訪問原圖?

    原圖保護僅針對允許匿名訪問的檔案,使用簽名URL訪問圖片屬於非匿名訪問。所以開啟原圖保護後,使用簽名後的URL仍然可以訪問原圖。