全部產品
Search
文件中心

Object Storage Service:通過HTTPS協議訪問OSS

更新時間:Oct 01, 2025

訪問OSS資源時,HTTP協議以明文方式傳輸資料,存在被竊取、篡改等安全風險,無法滿足資料保護和合規要求。通過配置SSL認證啟用HTTPS協議訪問OSS,可實現資料加密傳輸,有效防範網路攻擊,顯著提升業務安全等級。

工作原理

HTTPS訪問OSS的實現基於在正確位置為指定訪問網域名稱配置有效SSL認證。HTTPS協議通過TLS/SSL加密機制對HTTP資料報文進行端到端加密,同時利用憑證鏈結驗證伺服器身份,確保資料轉送過程中的機密性、完整性和身份認證。

根據使用的訪問網域名稱類型,需要在不同位置進行SSL認證配置,具體配置方式如下:

  • OSS Bucket網域名稱

    example.oss-cn-hangzhou.aliyuncs.com。此類網域名稱由阿里雲統一管理並維護SSL認證,原生支援HTTPS協議,無需進行任何配置,直接使用https://首碼即可實現安全訪問,簡化了認證管理複雜度。

  • 自訂網域名

    對於通過自訂網域名訪問OSS,SSL認證的配置位置由是否啟用CDN加速服務決定,這種設計確保認證配置與流量路徑保持一致。

    • 未開啟CDN:流量直接存取OSS,需在OSS控制台為綁定的自訂網域名配置認證託管,具體操作請參考OSS配置認證託管實現HTTPS訪問

    • 已開啟CDN:流量先經過CDN節點再轉寄至OSS,需在CDN控制台為CDN加速網域名稱配置HTTPS認證,具體操作請參考CDN配置HTTPS認證實現HTTPS訪問

      如何判斷是否啟用CDN加速?

      準確判斷自訂網域名是否啟用CDN加速,可確保在正確位置配置SSL認證,避免認證配置無效的問題。判斷方法如下:

      • 方法一:通過OSS控制台

        前往Bucket列表頁面,單擊目標Bucket,然後在左側單擊Bucket配置 > 網域名稱管理。網域名稱列表會展示該Bucket所有已配置的CDN加速網域名稱,其HTTPS認證需在CDN控制台進行管理。

        image

      • 方法二:通過CDN控制台

        前往CDN網域名稱列表,查看已配置且生效的CDN加速網域名稱及其來源站點Bucket資訊。通過此方式可直接查看網域名稱的CDN加速狀態和來源站點配置詳情。

        image

OSS配置認證託管實現HTTPS訪問

為綁定到OSS Bucket的自訂網域名啟用HTTPS安全訪問,實現資料加密傳輸和身分識別驗證,保障訪問安全性。

開始配置前,需確保已將自訂網域名綁定至OSS Bucket,並通過購買新認證申請免費認證上傳第三方認證的方式,在數位憑證管理服務中持有一個與該網域名稱匹配的有效SSL認證。

步驟一:配置認證託管

將SSL認證託管至OSS服務,使OSS能夠為自訂網域名提供HTTPS加密訪問能力。

  1. 前往Bucket列表頁面,單擊目標Bucket,然後在Bucket左側功能表列單擊Bucket配置 > 網域名稱管理

  2. 在目標自訂網域名操作列單擊認證託管,然後在認證名稱右側下拉選擇認證。若無法選擇目標認證,請前往SSL認證管理頁面,確保認證滿足以下條件:

    • 認證已簽發並在有效期間限內。

    • 認證的綁定網域名稱包含當前要配置的網域名稱。

  3. 單擊上傳,完成認證託管配置。

    image

步驟二:驗證HTTPS訪問效果

認證託管配置完成後,需要等待配置生效。配置生效後,通過瀏覽器訪問資源驗證HTTPS加密是否正常工作,確保資料轉送安全性得到保障。

  1. 前往Bucket列表,單擊目標Bucket名稱。

  2. 單擊需要訪問的目標檔案操作列的詳情

  3. 選擇網域名稱為自訂網域名並在下拉框中選擇綁定的自訂網域名,然後單擊複製檔案URL

  4. 在瀏覽器中訪問URL,驗證HTTPS加密訪問效果。瀏覽器地址欄應顯示安全鎖表徵圖,表明串連已加密保護。

    image

CDN配置HTTPS認證實現HTTPS訪問

為已開啟CDN加速的自訂網域名啟用HTTPS安全訪問,通過CDN全球節點提供加速的同時確保資料轉送安全。

開始配置前,需確保已為OSS Bucket配置CDN加速並將加速網域名稱作為訪問入口,並通過購買新認證申請免費認證的方式,在數位憑證管理服務中持有一個與該網域名稱匹配的有效SSL認證。也可以上傳第三方認證,或在後續配置步驟中直接填寫第三方認證內容和私密金鑰。

步驟一:配置CDN HTTPS認證

在CDN控制台為加速網域名稱配置SSL認證,啟用HTTPS安全加速功能。

  1. 前往CDN控制台頁面,單擊目標加速網域名稱,然後單擊HTTPS配置,在HTTPS認證旁邊單擊修改配置

  2. 勾選HTTPS安全加速,閱讀計費提醒並確認

  3. 根據認證來源,選擇SSL認證或填寫第三方認證資訊。

    • Apsara Stack Security(SSL)認證中心:在認證名稱右側下拉選擇認證。若無法選擇目標認證,請前往SSL認證管理頁面,確保認證滿足以下條件:

      • 認證已簽發並在有效期間限內。

      • 認證的綁定網域名稱包含當前要配置的網域名稱。

    • 自訂上傳(認證+私密金鑰):按頁面提示填寫認證名稱認證(公開金鑰)私密金鑰

  4. 單擊確定,完成HTTPS認證配置。

    image

步驟二:驗證CDN HTTPS訪問效果

CDN加速網域名稱的HTTPS配置下發大約需要1分鐘,待配置生效後,可在瀏覽器通過HTTPS訪問OSS資源(如https://example.com/dest.jpg,其中example.com為CDN加速網域名稱)驗證配置是否生效。成功訪問時,瀏覽器地址欄將顯示安全鎖表徵圖,表明資料轉送已加密保護。

image

應用於生產環境

生產環境中的HTTPS配置需要考慮安全性、可靠性和效能等多個維度,通過合理的配置策略和風險防範措施,確保業務的持續穩定運行。

最佳實務

  • 強制HTTPS訪問:配置存取控制策略

    生產環境建議強制所有用戶端使用HTTPS協議訪問,防止資料在傳輸過程中被竊取或篡改,同時滿足資料保護合規要求。

    • 對於OSS自訂網域名,通過配置Bucket Policy拒絕所有HTTP請求。

      配置樣本

      前往Bucket列表頁面,單擊目標Bucket,然後在左側單擊許可權控制 > Bucket授權策略,選擇按文法策略添加方式添加以下Bucket Policy。

      添加策略時,請替換樣本配置內的 bucketname。
      {
      	"Version": "1",
      	"Statement": [{
      		"Effect": "Deny",
      		"Action": [
      			"oss:*"
      		],
      		"Principal": [
      			"*"
      		],
      		"Resource": [
      			"acs:oss:*:*:bucketname",
      			"acs:oss:*:*:bucketname/*"
      		],
      		"Condition": {
      			"Bool": {
      				"acs:SecureTransport": [
      					"false"
      				]
      			}
      		}
      	}]
      }

      配置Bucket Policy後,所有HTTP協議請求將被拒絕訪問。

      image

    • 對於CDN加速網域名稱,通過配置強制跳轉開啟HSTS強制用戶端通過HTTPS進行訪問,提升整體安全等級。

      配置樣本

      • 配置強制跳轉

        前往CDN控制台頁面,單擊目標加速網域名稱,然後單擊HTTPS配置,在強制跳轉旁邊單擊修改配置,並按下圖所示配置強制跳轉。配置完成後,CDN將通過301重新導向方式,將用戶端到CDN節點的HTTP請求強制跳轉為HTTPS請求。

        image

      • 開啟HSTS

        前往CDN控制台頁面,單擊目標加速網域名稱,然後單擊HTTPS配置,在HSTS旁邊單擊修改配置,並按下圖所示開啟HSTS。配置完成後,用戶端發起HTTP請求時將被強制轉換為HTTPS請求。

        image

  • 自動續期管理:建立認證生命週期管理

    SSL認證有固定有效期間,到期將導致訪問中斷和業務損失。建立認證到期監控警示機制,提前30天進行認證更新,確保有充足時間進行測試和部署。對於阿里雲SSL認證,開啟認證託管可減少人工幹預;對於第三方認證,建立定期更新流程和責任人制度,確保商務持續性。

  • 效能最佳化:啟用HTTP/2和壓縮傳輸

    現代瀏覽器和CDN普遍支援HTTP/2協議,相比HTTP/1.1具有多工、頭部壓縮、伺服器推送等技術優勢,可顯著提升頁面載入速度。在CDN配置中啟用HTTP/2協議和Gzip壓縮,在保證安全性的同時最佳化傳輸效率,減少頻寬消耗並提升使用者體驗。

風險防範

  • 認證故障應急:建立備用認證機制

    準備備用SSL認證以應對主認證失效、誤刪除或CA機構故障等突發情況。對於關鍵業務系統,建議使用多個憑證授權單位(CA)的認證作為備份,在主認證出現問題時快速切換,最大程度降低服務中斷風險,確保商務持續性。

  • 訪問降級策略:緊急情況下的HTTP回退

    雖然HTTPS是安全最佳實務,但在認證配置出現嚴重問題且無法快速修複時,需要有緊急的HTTP訪問回退方案。建立標準應急流程和操作手冊,在故障排除期間臨時允許HTTP訪問,同時加強監控和日誌記錄,確保及時發現問題並快速恢複正常狀態。

OSS 根憑證升級

根憑證是SSL/TLS信任鏈結的根基,用於驗證伺服器憑證的可信性。瀏覽器和作業系統內建根憑證庫,當伺服器憑證由受信任的根憑證簽發時才被認為安全可信。

升級背景

為確保網路安全環境的持續可靠性,Mozilla於2023年初實施了新的根憑證信任策略。根據此策略,所有用於伺服器身分識別驗證、且簽發日期超過15年的根憑證,將不再獲得Mozilla的信任。受此策略影響,GlobalSign發布根憑證升級通知,明確GlobalSign Root R1根憑證將於2025年4月15日起失效。詳情請參見Mozilla更新根憑證信任策略的通知GlobalSign根憑證升級通知

OSS應對策略

針對根憑證信任策略變更,阿里雲Object Storage Service採取以下應對策略,確保服務平滑過渡和持續可用。詳情請參見阿里雲Object Storage Service HTTPS 根憑證升級公告

  • 認證更新計劃

    自2024年7月1日起,OSS新頒發的認證將使用GlobalSign Root R3,確保與最新安全標準相容,避免因根憑證信任策略變更導致的訪問中斷。

  • 交叉認證相容方案

    為保障過渡期間的廣泛相容性,OSS現有認證通過交叉認證機制實現從GlobalSign Root R1到GlobalSign Root R3的平滑遷移。基於GlobalSign Root R1的交叉認證有效期間至2028年1月28日,考慮到認證需要在到期前13個月提交申請,建議在2026年12月28日前完成所有相關根憑證的更新準備工作。

  • 未來規劃和建議

    考慮到長遠發展,GlobalSign Root R3雖為當前解決方案,但也將於2027年4月15日起不再被Mozilla信任,並最終於2029年3月18日到期。因此,強烈建議用戶端及時升級根憑證,同時確保根憑證列表中包含GlobalSign R1、R3、R6和R46等多個權威根憑證,以應對未來認證輪替需求。

使用者應對方式

對於絕大多數使用者,無需進行任何操作。現代作業系統(如Windows 7+、macOS 10.12.1+、主流Linux發行版近5年版本)和瀏覽器(Chrome、Firefox、Safari等)都會自動更新其內建的根憑證庫,自動獲得對新根憑證的信任支援。

僅當在老舊的作業系統、嵌入式裝置或未及時更新的自訂用戶端上,通過HTTPS訪問OSS遇到認證錯誤時,才需要參照以下步驟進行排查和更新。

步驟一:檢查是否存在“GlobalSign Root CA - R3”根憑證

Windows

  1. 按下Win + R鍵,輸入certmgr.msc並斷行符號,開啟Cert Manager。

  2. 在左側導覽列展開可信任的根憑證授權單位 > 認證

  3. 在右側列表中,尋找“頒發給”為GlobalSign,“易記名稱”為GlobalSign Root CA - R3的認證。

Linux

以Ubuntu為例,開啟終端,執行以下命令,查看系統認證目錄中是否存在GlobalSign相關認證。

ls /etc/ssl/certs/ | grep GlobalSign

macOS

  1. 開啟訪達,搜尋“鑰匙串訪問”,雙擊開啟。

  2. 單擊系統根憑證,在右上方的搜尋方塊中輸入“GlobalSign”,雙擊認證可查看認證詳情。

步驟二:安裝缺失的根憑證

如果經過檢查,確認系統中確實缺少該根憑證,請根據作業系統選擇對應的根憑證安裝方式。

計費說明

在CDN中開啟HTTPS功能後,將根據產生的靜態HTTPS請求數單獨計費,詳情請參見靜態HTTPS請求數費用說明

常見問題

認證更換或者到期了,如何進行更新?

認證更新操作方式與首次配置相同,根據網域名稱類型選擇對應的更新路徑。

  • OSS自訂網域名:前往Bucket列表,在目標Bucket網域名稱管理的認證託管中選擇新認證。

  • CDN加速網域名稱:前往CDN控制台,在目標加速網域名稱的HTTPS配置中選擇或上傳新認證。

配置SSL認證後,為什麼瀏覽器訪問仍然提示“不安全”或“認證錯誤”?

當配置完成後仍出現安全警告,可按以下方法排查處理。

  • 檢查配置位置:確認訪問網域名稱是否開啟了CDN加速。如果開啟,必須在CDN控制台為加速網域名稱進行HTTPS配置,OSS控制台的認證託管不會生效。

  • 清除瀏覽器緩衝:瀏覽器可能緩衝舊的認證狀態,清除瀏覽器緩衝後重新訪問。

  • 等待配置生效:CDN HTTPS配置或OSS認證託管配置需要一定時間下發生效,請耐心等待。

  • 檢查憑證鏈結完整性:中級CA頒發的認證檔案包含多份認證,需要將伺服器憑證與中間認證拼接成完整的憑證鏈結後上傳。憑證授權單位通常會提供拼接說明,請仔細查閱相關文檔。

通過HTTPS協議訪問OSS出現認證異常如何處理?

根據不同的認證異常類型,採用對應的處理方法。

  • 認證未配置:瀏覽器顯示"串連不是私密串連",報錯資訊:NET::ERR_SSL_PROTOCOL_ERROR。可能是認證未配置或配置位置錯誤,如開啟了CDN加速但在OSS控制台配置了認證託管。按照正確的配置方式重新設定HTTPS訪問。

  • 認證到期:瀏覽器顯示"串連不是私密串連",報錯資訊:NET::ERR_CERT_DATE_INVALID。網域名稱綁定的認證已到期,到期時間可在瀏覽器中查看。重新購買或申請認證後按照配置流程更新認證。

  • 認證不匹配:瀏覽器顯示"串連不是私密串連",報錯資訊:NET::ERR_CERT_COMMON_NAME_INVALID。訪問URL中的網域名稱不在認證的綁定網域名稱範圍內,如訪問網域名稱為cdn.example.com,但認證綁定網域名稱為oss.example.com。為訪問網域名稱配置正確的認證。

為什麼在選擇認證時下拉式清單中找不到目標認證?

下拉式清單中無法找到目標認證可能由以下原因導致:

  • 認證與網域名稱不匹配:系統只會列出與當前佈建網域名相匹配的認證。如為網域名稱oss.example.com配置認證時,無法選擇頒發給cdn.example.com的認證。

  • 認證不在當前帳號下:確認認證是否在當前阿里雲帳號下。如果不在,需要在SSL認證管理頁面上傳認證。

  • 泛網域名稱認證層級不匹配:泛網域名稱認證僅支援同層級網域名稱,如*.example.com可以匹配www.example.comoss.example.com,無法匹配cdn.oss.example.com

CDN配置HTTPS認證時提示“認證格式不對”,如何進行轉換?

CDN HTTPS配置僅支援PEM格式的認證,不同憑證授權單位對認證內容的上傳要求有所不同。如果認證不是PEM格式,請參見認證格式說明,按照文檔指引完成格式轉換後再上傳。

如何通過命令列或API更新認證?

如何關閉HTTPS訪問?

  • OSS自訂網域名

    當不再需要HTTPS加密訪問時,可按以下步驟刪除HTTPS認證。

    1. 前往Bucket列表頁面,單擊目標Bucket,然後在Bucket左側功能表列單擊Bucket配置 > 網域名稱管理

    2. 單擊目標網域名稱認證詳情旁的刪除表徵圖,然後單擊確定

      image

  • CDN加速網域名稱

    當不再需要HTTPS加密訪問時,可按以下步驟停用此功能。

    重要

    為避免訪問中斷,在關閉HTTPS前,必須先將強制跳轉類型恢複為預設,並且關閉HSTS功能。

    1. 前往CDN控制台頁面,單擊目標加速網域名稱,然後單擊HTTPS配置,在HTTPS認證旁邊單擊修改配置

    2. 按下圖所示關閉HTTPS安全加速,然後單擊確定

      image