為了更加高效地管理Object Storage Service的資源,您可以使用資源群組對資源進行分組管理。資源群組使您能夠按照部門、專案、環境等維度對資源進行分組,並結合存取控制(RAM),在單個阿里雲帳號內實現資源的隔離和精微調權限管理。本文為您介紹OSS對資源群組的支援情況,以及如何對OSS的資源進行分組和資源群組層級的授權操作。
基本概念
資源群組
資源群組(Resource Group)是在阿里雲帳號下進行資源分組管理的一種機制,能夠有效解決單個阿里雲帳號內的資源分組、許可權管理和成本分攤等複雜問題。例如,您可以為不同的專案建立對應的資源群組,並將專案使用的資源轉移到對應的組中,以便集中管理各專案的資源。更多資訊,請參見什麼是資源群組、資源群組設計最佳實務。
資源群組層級授權
在完成資源分組後,您可以使用RAM為RAM授權主體(RAM使用者、RAM使用者組或RAM角色)授予指定資源群組範圍的許可權,從而限制其可管理的資源範圍僅為指定資源群組內的資源。這種授權方式具有良好的擴充性,後續新增資源時,只需將資源加入相應的資源群組,無需修改權限原則。更多資訊,請參見資源分組和授權。
資源群組層級授權的操作步驟
以下以授予RAM使用者在指定資源群組內管理OSS資源的許可權為例,為您介紹資源群組層級授權的操作步驟。
在RAM控制台,建立RAM使用者。
具體操作,請參見建立RAM使用者。
在資源群組控制台,建立資源群組。
具體操作,請參見建立資源群組。
資源劃分到對應資源群組。
新建立的資源:在建立資源時,指定其所屬的資源群組。
現有資源:將現有資源轉移到對應的資源群組。具體操作,請參見資源手動轉組。
在RAM控制台,建立自訂權限原則。
建立自訂權限原則,將RAM使用者所需的操作許可權包含在內。具體操作,請參見建立自訂權限原則。如果您選擇為RAM使用者授予系統權限原則,可跳過此步驟。
重要在實際業務環境中,建議您遵循最小授權原則,僅授予RAM使用者所需的最少許可權,以避免許可權過大帶來的安全風險。
自訂權限原則樣本:
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:GetObject", "oss:PutObject" ], "Resource": "*" } ] }為RAM使用者授予指定資源群組範圍的許可權。
以下兩種授權方法您可以任選其一:
在資源群組控制台授權:資源範圍預設選中對應的資源群組。具體操作,請參見為RAM身份授予資源群組範圍的許可權。

在RAM控制台授權:在選擇資源範圍時,請務必選擇資源群組層級。具體操作,請參見為RAM使用者授權。

只有支援資源群組的資源類型,資源群組層級授權才會生效。對於不支援資源群組的資源類型,授予資源群組範圍的許可權將無效,在選擇資源範圍時,請選擇帳號層級,進行帳號層級授權。具體操作,請參見不支援資源群組層級授權的操作。
支援資源群組的資源類型
OSS中部分資源類型支援資源群組,支援的資源類型如下表所示。
雲端服務 | 雲端服務代碼 | 資源類型 |
Object Storage Service | oss | bucket:儲存空間 |
對於暫不支援資源群組的資源類型,如有需要,您可以提交工單反饋。
不支援資源群組層級授權的操作
OSS中不支援資源群組層級授權的操作(Action)及對應 API 如下表所示。
操作(Action) | API | API 描述 |
oss:DescribeRegions | DescribeRegions | 查詢所有支援地區或者指定地區對應的Endpoint資訊 |
oss:ListUserDataRedundancyTransition | ListUserDataRedundancyTransition | 列舉要求者所有的儲存冗餘轉換任務 |
oss:PutPublicAccessBlock | PutPublicAccessBlock | 為OSS全域開啟阻止公用訪問 |
oss:GetPublicAccessBlock | GetPublicAccessBlock | 擷取OSS全域阻止公用訪問的配置資訊 |
oss:DeletePublicAccessBlock | DeletePublicAccessBlock | 刪除OSS全域阻止公用訪問的配置資訊 |
oss:InitUserAntiDDosInfo | InitUserAntiDDosInfo | 建立高防OSS執行個體 |
oss:UpdateUserAntiDDosInfo | UpdateUserAntiDDosInfo | 更改高防OSS執行個體狀態 |
oss:GetUserAntiDDosInfo | GetUserAntiDDosInfo | 查詢指定帳號下的高防OSS執行個體資訊 |
oss:InitBucketAntiDosInfo | InitBucketAntiDosInfo | 初始化Bucket防護 |
oss:UpdateBucketAntiDDosInfo | UpdateBucketAntiDDosInfo | 更新Bucket防護狀態 |
oss:ListBucketAntiDDosInfo | ListBucketAntiDDosInfo | 擷取Bucket防護資訊列表 |
oss:ListResourcePools | ListResourcePools | 列舉當前地區的資源集區 |
oss:GetResourcePoolInfo | GetResourcePoolInfo | 查詢資源集區資訊 |
oss:ListResourcePoolBuckets | ListResourcePoolBuckets | 列舉資源集區中的儲存空間 |
oss:PutResourcePoolRequesterQoSInfo | PutResourcePoolRequesterQoSInfo | 為資源集區配置要求者流控配置資訊 |
oss:GetResourcePoolRequesterQoSInfo | GetResourcePoolRequesterQoSInfo | 查詢資源集區的要求者流控配置資訊 |
oss:ListResourcePoolRequesterQoSInfos | ListResourcePoolRequesterQoSInfos | 列舉資源集區的要求者流控配置資訊 |
oss:DeleteResourcePoolRequesterQoSInfo | DeleteResourcePoolRequesterQoSInfo | 刪除資源集區的要求者流控配置資訊 |
關於 OSS 更詳細的RAM授權資訊,請參見通過RAM Policy授權訪問OSS。
對於不支援資源群組的資源類型,授予資源群組範圍的許可權將無效,您需要建立自訂權限原則,授權時資源範圍選取帳號層級。
以下為您提供兩個自訂權限原則樣本,您可以根據實際需要調整策略內容。
允許不支援資源群組層級授權的唯讀操作。
Action中列舉不支援資源群組層級授權的所有隻讀操作。{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:DescribeRegions", "oss:ListUserDataRedundancyTransition", "oss:GetPublicAccessBlock", "oss:GetUserAntiDDosInfo", "oss:ListBucketAntiDDosInfo", "oss:ListResourcePools", "oss:GetResourcePoolInfo", "oss:ListResourcePoolBuckets", "oss:GetResourcePoolRequesterQoSInfo", "oss:ListResourcePoolRequesterQoSInfos" ], "Resource": "*" } ] }允許不支援資源群組層級授權的全部操作。
Action中列舉不支援資源群組層級授權的全部操作。{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:DescribeRegions", "oss:ListUserDataRedundancyTransition", "oss:PutPublicAccessBlock", "oss:GetPublicAccessBlock", "oss:DeletePublicAccessBlock", "oss:InitUserAntiDDosInfo", "oss:UpdateUserAntiDDosInfo", "oss:GetUserAntiDDosInfo", "oss:InitBucketAntiDosInfo", "oss:UpdateBucketAntiDDosInfo", "oss:ListBucketAntiDDosInfo", "oss:ListResourcePools", "oss:GetResourcePoolInfo", "oss:ListResourcePoolBuckets", "oss:PutResourcePoolRequesterQoSInfo", "oss:GetResourcePoolRequesterQoSInfo", "oss:ListResourcePoolRequesterQoSInfos", "oss:DeleteResourcePoolRequesterQoSInfo" ], "Resource": "*" } ] }
獲得帳號層級許可權的RAM使用者或RAM角色,能夠操作整個帳號範圍內的相關資源。請務必確認所授與權限是否符合預期,遵從最小授權原則謹慎分配許可權。