全部產品
Search
文件中心

Object Storage Service:許可權與存取控制概述

更新時間:Jan 27, 2026

Object Storage Service提供多層次許可權控制機制,確保資料在儲存和訪問過程中的安全性。以下介紹OSS許可權與存取控制的整體架構,協助理解各控制方式的定位和差異,根據業務需求選擇合適的方案。

快速選擇

情境

推薦方案

資料私人,阻止非授權使用者和匿名訪問

Bucket ACL設為私人(預設配置)

對外提供公開可讀的靜態資源

Bucket ACL設為公用讀取,配合防盜鏈防止資源盜用

授權多個使用者訪問特定Bucket

Bucket Policy,僅需單條策略即可指定允許的使用者列表

統一管理某個使用者可訪問的所有資源

RAM Policy綁定到該使用者

將資源共用給其他阿里雲帳號

Bucket Policy基於RAM角色實現跨帳號訪問OSS

同一Bucket為多個應用或團隊提供差異化訪問

存取點,每個應用或團隊獨立的入口和策略

防止誤配置導致資料公開泄露

阻止公用訪問

瀏覽器端JavaScript訪問OSS

跨網域設定

鑒權機制

OSS根據請求類型採用不同的鑒權流程:

  • 簽章要求:OSS驗證簽名有效性後,分別評估RAM Policy、Bucket Policy、ACL,綜合判定是否允許訪問。

  • 匿名請求:OSS評估Bucket Policy和ACL是否允許公開訪問。

鑒權結果分為三類:Allow(策略明確授權)、Explicit Deny(策略明確拒絕,優先順序最高)、Implicit Deny(無授權則拒絕)。

完整的鑒權流程請參見OSS鑒權詳解

許可權控制方式

ACL

ACL(存取控制清單)通過預定義的許可權等級控制資源的公開或私人狀態,是最簡單的許可權控制方式。

Bucket ACL控制儲存空間的預設存取權限,Object ACL控制單個對象的許可權(優先順序更高),Object ACL未指定時預設繼承Bucket ACL。支援以下許可權等級:

許可權等級

效果

私人(private)

資料私人,僅資源擁有者或被授權使用者可訪問

公用讀取(public-read)

任何人可讀取,僅資源擁有者或被授權使用者可寫入

公用讀寫(public-read-write)

任何人可公開讀取和寫入

ACL僅支援預定義等級,無法指定授權對象或條件限制。如需精細控制,請使用Bucket Policy或RAM Policy。

Bucket Policy

Bucket Policy是配置在Bucket上的授權策略,定義誰可以訪問此Bucket中的資源。支援授權給RAM使用者、其他阿里雲帳號或匿名使用者,並可設定IP地址、VPC、時間等條件限制。

當需要授權多個使用者訪問同一Bucket時,單條Bucket Policy即可完成,無需為每個使用者單獨配置。

實踐教程:基於VPC Policy和Bucket Policy實現雙重存取控制基於Bucket Policy實現跨部門資料共用

RAM Policy

RAM Policy是綁定到使用者身份上的授權策略,定義該使用者可以訪問哪些OSS資源,適合統一管理某個使用者或應用在多個Bucket上的許可權。

OSS提供系統策略(如AliyunOSSFullAccessAliyunOSSReadOnlyAccess)可直接使用,也支援自訂策略。通過RAM角色可實現跨帳號訪問和STS臨時授權。

實踐教程:基於RAM角色實現跨帳號訪問OSS基於RAM Policy控制OSS的存取權限

Bucket Policy與RAM Policy區別

維度

Bucket Policy

RAM Policy

配置位置

Bucket上

RAM身份主體上

管理視角

以資源為中心:誰可以訪問此資源

以身份為中心:身份主體可訪問哪些資源

匿名訪問

支援

不支援

選擇建議:授權多個使用者訪問同一資源時Bucket Policy更高效;管理單個使用者的所有資源許可權時RAM Policy更直觀;需要匿名訪問時只能用Bucket Policy。兩者可同時使用,OSS會綜合評估,都允許時請求才通過。

存取點

存取點(Access Point)為Bucket提供獨立的訪問入口。當一個Bucket需要被多個應用或團隊以不同許可權訪問時,可為每個訪問方建立獨立的存取點,通過存取點策略(AP Policy)分別管理各自的許可權,避免在單一Bucket Policy中維護複雜的規則。

每個存取點擁有獨立的訪問網域名稱、AP Policy和網路限制配置。使用者通過存取點訪問時,需要RAM Policy與Bucket Policy的合并結果為Allow,且AP Policy也為Allow,請求才通過。

安全防護

阻止公用訪問

阻止公用訪問開啟後,即使ACL或Bucket Policy配置了公開授權也不會生效,防止因誤配置導致資料泄露。可在帳號層級(作用於所有Bucket)、Bucket層級或存取點層級獨立配置,優先順序依次遞減。

儲存敏感性資料且無匿名訪問需求時,建議在帳號層級開啟此功能。

防盜鏈

防盜鏈通過校正HTTP要求標頭中的Referer欄位,阻止未授權網站引用OSS資源。支援白名單模式(僅允許指定網域名稱)和黑名單模式(拒絕指定網域名稱)。適用於防止圖片、視頻等資源被盜用。

說明

Referer可被偽造,如需更高安全性建議使用簽名URL。

跨網域設定

瀏覽器預設禁止網頁JavaScript訪問不同網域名稱的資源。通過配置CORS規則,OSS會在響應中返回允許跨域的頭資訊,使瀏覽器允許存取請求。適用於前端直傳檔案、擷取資源等情境。

授權策略文法

Bucket Policy、RAM Policy和AP Policy均使用JSON格式定義,核心元素包括:

元素

說明

Effect

授權效果:AllowDeny

Principal

授權對象(RAM Policy不需要)

Action

授權操作,如oss:GetObject

Resource

授權資源範圍

Condition

生效條件(可選)

完整的文法說明和Action列表請參見OSS授權文法與元素

相關文檔