本教程示例詳細示範了如何控制使用者對 OSS 存儲空間和檔案夾的通路。在示例中,我們首先建立一個存儲空間和檔案夾,然後使用阿裡雲主賬号建立通路管理 (RAM) 使用者,并為這些使用者授予對所建立 OSS 存儲空間及檔案夾的增量權限。
https://www.atatech.org/articles/102865#0 存儲空間和檔案夾的基本概念
阿裡雲 OSS 的資料模型為扁平型結構,所有檔案都直接隸屬于其對應的存儲空間。是以,OSS 缺少檔案系統中類似于目錄與子檔案夾的層次結構。但是,您可以在 OSS 控制台上模拟檔案夾層次結構。在該控制台中,您可以按檔案夾對相關檔案進行分組、分類和管理,如下圖所示。

OSS 提供使用鍵值(key)對格式的分布式對象存儲服務。使用者根據其唯一的key(對象名)檢索對象的内容。例如,名為 example-company 的存儲空間有三個檔案夾:Development、 Marketing 和 Private,以及一個對象 oss-dg.pdf。
- 在建立 Development 檔案夾時,控制台會建立一個key為
的對象。注意,檔案夾的key包括分隔符Development/
。/
- 當您将名為 ProjectA.docx 的對象上傳到 Development 檔案夾中時,控制台會上傳該對象并将其key設定為
在該key中,Development/ProjectA.docx
為字首,而Development
為分隔符。您可以從存儲空間中擷取具有特定字首和分隔符的所有對象的清單。在控制台中,單擊 Development 檔案夾時,控制台會列出檔案夾中的對象,如下圖所示。/
教程示例:控制存儲空間和檔案夾的通路權限
說明:當控制台列出 example-company 存儲空間中的 Development 檔案夾時,它會向 OSS 發送一個用于指定字首和分隔符
Development
的請求。控制台的響應與檔案系統類似,會顯示檔案夾清單。上例說明,存儲空間 example-company 有三個對象,其key分别為
/
、
Development/Alibaba Cloud.pdf
及
Development/ProjectA.docx
Development/ProjectB.docx
控制台通過對象的key推斷邏輯層次結構。當您建立對象的邏輯層次結構時,您可以管理對個别檔案夾的通路,如本教程後面描述的那樣。
在本教程開始之前,您還需要知道“根級”存儲空間内容的概念。假設 example-company 存儲空間包含以下對象:
- Development/Alibaba Cloud.pdf
- Development/ProjectA.docx
- Development/ProjectB.docx
- Marketing/data2016.xlsx
- Private/2017/images.zip
- Private/2017/promote.pptx
- oss-dg.pdf
這些對象的key建構了一個以 Development、Marketing 和 Private 作為根級檔案夾并以 oss-dg.pdf 作為根級對象的邏輯層次結構。當您單擊 OSS 控制台中的存儲空間名時,控制台會顯示将頂級字首和一個分隔符(Development/、Marketing/ 和 Private/)顯示為根級檔案夾。對象 oss-dg.pdf 沒有字首,是以顯示為根級别項。
https://www.atatech.org/articles/102865#1 OSS 的請求和響應邏輯
在授予權限之前,我們需要清楚,當使用者單擊某個存儲空間的名字時控制台向 OSS 發送的是什麼請求、OSS 傳回的是什麼響應,以及控制台如何解析該響應。
當使用者單擊某個存儲空間名時,控制台會将
GetBucket請求發送至 OSS。此請求包括以下參數:
-
,其值為空字元串。prefix
-
,其值為delimiter
/
請求示例如下所示:
GET /?prefix=&delimiter=/ HTTP/1.1
Host: example-company.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 24 Feb 2012 08:43:27 GMT
Authorization: OSS qn6qrrqxo2oawuk53otfjbyc:DNrnx7xHk3sgysx7I8U9I9IY1vY=
OSS 傳回的響應包括
ListBucketResult
元素:
HTTP/1.1 200 OK
x-oss-request-id: 534B371674E88A4D8906008B
Date: Fri, 24 Feb 2012 08:43:27 GMT
Content-Type: application/xml
Content-Length: 712
Connection: keep-alive
Server: AliyunOSS
<?xml version="1.0" encoding="UTF-8"?>
<ListBucketResult xmlns=¡±http://doc.oss-cn-hangzhou.aliyuncs.com¡±>
<Name>example-company</Name>
<Prefix></Prefix>
<Marker></Marker>
<MaxKeys>100</MaxKeys>
<Delimiter>/</Delimiter>
<IsTruncated>false</IsTruncated>
<Contents>
<Key>oss-dg.pdf</Key>
...
</Contents>
<CommonPrefixes>
<Prefix>Development</Prefix>
</CommonPrefixes>
<CommonPrefixes>
<Prefix>Marketing</Prefix>
</CommonPrefixes>
<CommonPrefixes>
<Prefix>Private</Prefix>
</CommonPrefixes>
</ListBucketResult>
由于 oss-dg.pdf 不包含
/
分隔符,是以 OSS 在
<Contents/>
元素中傳回該key。存儲空間 example-company 中的所有其他key都包含
/
分隔符,是以 OSS 會将這些key分組,并為每個字首值 Development/、Marketing/ 和 Private/ 傳回一個
<CommonPrefixes/>
元素。該元素是一個字元串,包含從這些key的第一個字元開始到第一次出現指定的
/
分隔符之間的字元。
控制台會解析此結果并顯示如下的根級别項:
現在,如果使用者單擊 Development 檔案夾,控制台會将
-
,其值為prefix
Development/
-
delimiter
/
GET /?prefix=Development/&delimiter=/ HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 24 Feb 2012 08:43:27 GMT
Authorization: OSS qn6qrrqxo2oawuk53otfjbyc:DNrnx7xHk3sgysx7I8U9I9IY1vY=
作為響應,OSS 傳回以指定字首開頭的key:
HTTP/1.1 200 OK
x-oss-request-id: 534B371674E88A4D8906008B
Date: Fri, 24 Feb 2012 08:43:27 GMT
Content-Type: application/xml
Content-Length: 712
Connection: keep-alive
Server: AliyunOSS
<?xml version="1.0" encoding="UTF-8"?>
<ListBucketResult xmlns=¡±http://doc.oss-cn-hangzhou.aliyuncs.com¡±>
<Name>example-company</Name>
<Prefix>Development/</Prefix>
<Marker></Marker>
<MaxKeys>100</MaxKeys>
<Delimiter>/</Delimiter>
<IsTruncated>false</IsTruncated>
<Contents>
<Key>ProjectA.docx</Key>
...
</Contents>
<Contents>
<Key>ProjectB.docx</Key>
...
</Contents>
</ListBucketResult>
控制台會解析此結果并顯示如下的key:
https://www.atatech.org/articles/102865#2 教程示例
本教程示例如下所示:
- 建立一個存儲空間 example-company,然後向其中添加三個檔案夾(Development、Marketing 和 Private)。
- 您有 Anne 和 Leo 兩個使用者。您希望 Anne 隻能通路 Development 檔案夾而 Leo 則隻能通路 Marketing 檔案夾,并且希望将 Private 檔案夾保持私有。在教程示例中,通過建立通路控制 (RAM) 使用者(Anne 和 Leo)來管理通路權限,并授予他們必要的權限。
- RAM 還支援建立使用者組并授予适用于組中所有使用者的組級别權限。這有助于更好地管理權限。在本示例中,Anne 和 Leo 都需要一些公共權限。是以,您還要建立一個名為 Staff 的組,然後将 Anne 和 Leo 添加到該組中。首先,您需要給該組配置設定政策授予權限。然後,将政策配置設定給特定使用者,添加特定使用者的權限。
說明:本教程示例使用 example-company 作為存儲空間名、使用 Anne 和 Leo 作為 RAM 使用者名并使用 Staff 作為組名。由于阿裡雲 OSS 要求存儲空間名全局唯一,是以您需要用自己的存儲空間名稱替換本教程中的存儲空間名。
https://www.atatech.org/articles/102865#3 示例準備
本示例使用阿裡雲主賬号建立 RAM 使用者。最初,這些使用者沒有任何權限。您将逐漸授予這些使用者執行特定 OSS 操作的權限。為了測試這些權限,您需要使用每個使用者的RAM賬号登入到控制台。當您作為主賬号所有者逐漸授予權限并作為 RAM 使用者測試權限時,您需要每次使用不同賬号進行登入和登出。您可以使用一個浏覽器來執行此測試。如果您可以使用兩個不同的浏覽器,則該測試過程用時将會縮短:一個浏覽器用于使用主賬号連接配接到阿裡雲控制台,另一個浏覽器用于使用 RAM 賬号進行連接配接。
要使用您的主賬号登入到阿裡雲控制台,請通路
https://account.aliyun.com/login/login.htm。 RAM 使用者不能使用相同的連結登入。他們必須使用 RAM 使用者登入連結。作為主賬号所有者,您可以向RAM使用者提供此連結。
說明:有關 RAM 的詳細資訊,請參見 使用 RAM 使用者賬号登入
https://www.atatech.org/articles/102865#4 為 RAM 使用者提供登入連結
- 使用主賬号登入 RAM 控制台
- 在左側導航欄中,單擊 概覽。
- 在 RAM使用者登入連結 後找到 URL。您将向 RAM 使用者提供此 URL,以便其使用 RAM 使用者名和密碼登入控制台。
https://www.atatech.org/articles/102865#5 步驟 1.建立存儲空間
在此步驟中,您可以使用主賬号登入到 OSS 控制台、建立存儲空間、将檔案夾(Development、Marketing、Private)添加到存儲空間中,并在每個檔案夾中上傳一個或兩個示例文檔。
1. 使用主賬号登入
OSS 控制台-
建立名為 example-company 的存儲空間。
有關詳細過程,請參見 OSS 控制台使用者指南 中的
建立存儲空間 -
将一個檔案上傳到存儲空間中。
本示例假設您将檔案 oss-dg.pdf 上傳到存儲空間的根級别。您可以用不同的檔案名上傳自己的檔案。
上傳檔案 - 添加名為 Development、Marketing 和 Private 的三個檔案夾。 建立檔案夾
-
将一個或兩個檔案上傳到每個檔案夾中。
本例假設您将具有以下對象鍵的對象上傳到存儲空間中:
https://www.atatech.org/articles/102865#6 步驟 2.建立 RAM 使用者群組
在此步驟中,您使用 RAM 控制台将兩個 RAM 使用者 Anne 和 Leo 添加到主賬号中。您還将建立一個名為 Staff 的組,然後将這兩個使用者添加到該組中。
說明:在此步驟中,不要配置設定任何授予這些使用者權限的政策。在以下步驟中,您将逐漸為其授予權限。
有關建立 RAM 使用者的詳細過程,請參見 RAM 快速入門 中的
建立 RAM 使用者。請為每個 RAM 使用者建立登入密碼。
有關建立組的詳細過程,請參見 RAM 使用者指南 中的
建立組https://www.atatech.org/articles/102865#7 步驟 3.确認 RAM 使用者沒有任何權限
如果您使用兩個浏覽器,現在可以在另一個浏覽器中使用其中一個 RAM 使用者賬号登入到控制台。
- 打開 RAM 使用者登入連結,并用 Anne 或 Leo 的賬号登入到 RAM 控制台。
-
打開 OSS 控制台。
您發現控制台中沒有任何存儲空間,這意味着 Anne 不具有對存儲空間 example-company 的任何權限。
教程示例:控制存儲空間和檔案夾的通路權限
https://www.atatech.org/articles/102865#8 步驟 4.授予組級别權限
我們希望 Anne 和 Leo 都能執行以下操作:
-
列出主賬号所擁有的所有存儲空間。
為此,Anne 和 Leo 必須具有執行 oss:ListBuckets 操作的權限。
-
列出 example-company 存儲空間中的根級别項、檔案夾和對象。
為此,Anne 和 Leo 必須具有對 example-company 存儲空間執行 oss:ListObjects 操作的權限。
https://www.atatech.org/articles/102865#9 步驟 4.1.授予列出所有存儲空間的權限
在此步驟中,建立一個授予使用者最低權限的政策。憑借最低權限,使用者可列出主賬号所擁有的所有存儲空間。您還将此政策配置設定給 Staff 組,以便授予獲得主賬号擁有的存儲空間清單的組權限。
- 使用主賬号登入
- 建立政策 AllowGroupToSeeBucketListInConsole。
- 在左側導航窗格中,單擊 政策管理,然後單擊 建立授權政策。
- 單擊 空白模闆。
- 在 授權政策名稱 字段中,輸入 AllowGroupToSeeBucketListInConsole。
- 在 政策内容 字段中,複制并粘貼以下政策。
> 說明:政策為 JSON 文檔。在該政策中,Statement 是一個對象數組,每個對象使用名/值對的集合來描述權限。前面的政策描述了一個特定的權限。Effect 元素值決定是允許還是拒絕特定的權限。Action 指定通路權限的類型。在本政策中,oss:ListBuckets 是預定義的 OSS 操作,可傳回經過身份驗證的發送者所擁有的所有儲存空間的清單。json { "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:ListBuckets" ], "Resource": [ "acs:oss:*:*:*" ] } ] }
-
将 AllowGroupToSeeBucketListInConsole 政策配置設定給 Staff 組。
有關配置設定政策的詳細過程,請參見 RAM 快速入門 中
将政策配置設定給 RAM 使用者的 将政策配置設定給 RAM 組。
可以将政策配置設定給 RAM 控制台中的 RAM 使用者群組。在本例中,我們将政策配置設定給組,因為我們希望 Anne 和 Leo 都能夠列出這些存儲空間。
- 測試權限。
- 控制台列出所有存儲空間。
-
單擊 example-company 存儲空間,然後單擊檔案頁籤。
此時将顯示一個消息框,表明您沒有相應的通路權限。
教程示例:控制存儲空間和檔案夾的通路權限
https://www.atatech.org/articles/102865#10 步驟 4.2.授予列出存儲空間根級内容的權限
在此步驟中,您授予權限,允許所有使用者列出存儲空間 example-company 中的所有項目。當使用者在 OSS 控制台中單擊 example-company 時,能夠看到存儲空間中的根級别項。
-
用以下政策取代配置設定給 Staff 組的現有政策 AllowGroupToSeeBucketListInConsole,該政策還允許 oss:ListObjects 操作。請用您的存儲空間名替換政策資源中的 example-company。
有關詳細過程,請參見 RAM 使用者指南 中
授權政策 的 修改自定義授權政策 部分。注意,您最多可對 RAM 政策進行五次修改。如果超過了五次,則需要删除該政策并建立一個新的政策,然後再次将新政策配置設定給 Staff 組。{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:ListBuckets", "oss:GetBucketAcl" ], "Resource": [ "acs:oss:*:*:*" ], "Condition": {} }, { "Effect": "Allow", "Action": [ "oss:ListObjects" ], "Resource": [ "acs:oss:*:*:example-company" ], "Condition": { "StringLike": { "oss:Prefix": [ "" ], "oss:Delimiter": [ "/" ] } } } ] }
說明:
- 要列出存儲空間内容,使用者需要調用 oss:ListObjects 操作的權限。為了確定使用者僅看到根級内容,我們添加了一個條件:使用者必須在請求中指定一個空字首,也就是說,他們不能單擊任何根級檔案夾。我們還通過要求使用者請求包含分隔符參數和值
來添加需要檔案夾樣式通路的條件。/
- 當使用者登入到 OSS 控制台時,控制台檢查使用者的身份是否有通路 OSS 服務的權限。要在控制台中支援存儲空間操作,我們還需要添加 oss:GetBucketAcl 操作。
- 要列出存儲空間内容,使用者需要調用 oss:ListObjects 操作的權限。為了確定使用者僅看到根級内容,我們添加了一個條件:使用者必須在請求中指定一個空字首,也就是說,他們不能單擊任何根級檔案夾。我們還通過要求使用者請求包含分隔符參數和值
- 測試更新的權限。
- 控制台列出所有根級别項。
教程示例:控制存儲空間和檔案夾的通路權限 - 單擊任何檔案夾或對象 oss-dg.pdf。
https://www.atatech.org/articles/102865#11 組政策摘要
添加組政策的最終結果是授予 RAM 使用者 Anne 和 Leo 以下最低權限:
- 檢視 example-company 存儲空間中的根級别項。
然而,他們可以進行的操作仍然有限。在以下部分中,我們将授予使用者以下特定權限:
- 允許 Anne 在 Development 檔案夾中擷取和放入對象。
- 允許 Bob 在 Finance 檔案夾中擷取和放入對象。
對于使用者特定的權限,您需要将政策配置設定給特定使用者,而非配置設定給組。以下部分授予 Anne 在 Development 檔案夾中操作的權限。您可以重複這些步驟,授予 Leo 在 Finance 檔案夾中進行類似操作的權限。
https://www.atatech.org/articles/102865#12 步驟 5.授予 RAM 使用者 Anne 特定權限
在此步驟中,我們向 Anne 授予額外的權限,使她可以看到 Development 檔案夾的内容,并将對象放入檔案夾中。
https://www.atatech.org/articles/102865#13 步驟 5.1.授予 RAM 使用者 Anne 權限以列出 Development 檔案夾内容
若要 Anne 能夠列出 Development 檔案夾内容,您必須為其配置設定政策。該政策必須能夠授予其對 example-company 存儲空間執行 oss:ListObjects 操作的權限,還必須包括要求使用者在請求中指定字首
Development/
的條件。
1. 建立政策 AllowListBucketsIfSpecificPrefixIsIncluded,授予 RAM 使用者 Anne 權限以列出 Development 檔案夾内容。
1. 在左側導航窗格中,單擊 政策管理,然後單擊 建立授權政策。
2. 單擊 <strong>空白模闆</strong>。
3. 在 <strong>授權政策名稱</strong> 字段中,輸入 <strong>AllowListBucketsIfSpecificPrefixIsIncluded</strong>。
4. 在 <strong>政策内容</strong> 字段中,複制并粘貼以下政策。
```json
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"oss:ListObjects"
],
"Resource": [
"acs:oss:*:*:example-company"
],
"Condition": {
"StringLike": {
"oss:Prefix": [
"Development/*"
]
}
}
}
]
}
```
-
将政策配置設定給 RAM 使用者 Anne。
有關配置設定政策的詳細過程,請參見 RAM 快速入門 中的
- 測試 Anne 的權限。
- 打開 RAM 使用者登入連結,并用 Anne 的賬号登入到 RAM 控制台。
-
教程示例:控制存儲空間和檔案夾的通路權限 -
單擊 Development/ 檔案夾。
控制台列出檔案夾中的對象。
教程示例:控制存儲空間和檔案夾的通路權限
https://www.atatech.org/articles/102865#14 步驟 5.2 授予 RAM 使用者 Anne 在 Development 檔案夾中擷取和放入對象的權限。
若要 Anne 能夠在 Development 檔案夾中擷取和放入對象,您必須授予她調用 oss:GetObject 和 oss:PutObject 操作的權限,包括使用者必須在請求中指定字首 Development/ 的條件。
- 用以下政策取代您在之前步驟中建立的政策 AllowListBucketsIfSpecificPrefixIsIncluded。 的 修改自定義授權政策 部分。注意,您最多可對 RAM 政策進行五次修改。如果超過五次,您需要删除該政策并建立一個新的政策,然後再次将新政策配置設定給使用者。
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:ListObjects" ], "Resource": [ "acs:oss:*:*:example-company" ], "Condition": { "StringLike": { "oss:Prefix": [ "Development/*" ] } } }, { "Effect": "Allow", "Action": [ "oss:GetObject", "oss:PutObject", "oss:GetObjectAcl" ], "Resource": [ "acs:oss:*:*:example-company/Development/*" ], "Condition": {} } ] }
說明:當使用者登入到 OSS 控制台時,控制台檢查使用者的身份是否有通路 OSS 服務的權限。要在控制台中支援存儲空間操作,我們還需要添加 oss:GetObjectAcl 操作。
- 測試更新的政策。
- 在 OSS 控制台中,确認 Anne 現在可以在 Development 檔案夾中添加對象并下載下傳對象。
https://www.atatech.org/articles/102865#15 步驟 5.3 顯式拒絕 RAM 使用者 Anne 通路存儲空間中任何其他檔案夾的權限
RAM 使用者 Anne 現在可以在 example-company 存儲空間中列出根級内容,并将對象放入 Development 檔案夾中。如果要嚴格限制通路權限,您可以顯式拒絕 Anne 對存儲空間中任何其他檔案夾的通路。如果有授予 Anne 通路存儲空間中任何其他檔案夾的其他政策,則此顯式政策将替代這些權限。
您可以将以下語句添加到 RAM 使用者 Anne 的政策 AllowListBucketsIfSpecificPrefixIsIncluded,以要求 Anne 發送到 OSS 的所有請求包含字首參數,該參數的值可以是 Development/* 或空字元串。
{
"Effect": "Deny",
"Action": [
"oss:ListObjects"
],
"Resource": [
"acs:oss:*:*:example-company"
],
"Condition": {
"StringNotLike": {
"oss:Prefix": [
"Development/*",
""
]
}
}
}
按照之前的步驟更新您為 RAM 使用者 Anne 建立的政策 AllowListBucketsIfSpecificPrefixIsIncluded。複制并粘貼以下政策以替換現有政策。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"oss:ListObjects"
],
"Resource": [
"acs:oss:*:*:example-company"
],
"Condition": {
"StringLike": {
"oss:Prefix": [
"Development/*"
]
}
}
},
{
"Effect": "Allow",
"Action": [
"oss:GetObject",
"oss:PutObject",
"oss:GetObjectAcl"
],
"Resource": [
"acs:oss:*:*:example-company/Development/*"
],
"Condition": {}
},
{
"Effect": "Deny",
"Action": [
"oss:ListObjects"
],
"Resource": [
"acs:oss:*:*:example-company"
],
"Condition": {
"StringNotLike": {
"oss:Prefix": [
"Development/*",
""
]
}
}
}
]
}
https://www.atatech.org/articles/102865#16 步驟 6.授予 RAM 使用者 Leo 特定權限
現在,您希望授予 Leo 通路 Marketing 檔案夾的權限。請遵循之前用于向 Anne 授予權限的步驟,但應将 Development 檔案夾替換為 Marketing 檔案夾。有關詳細過程,請參見步驟 5:授予 RAM 使用者 Anne 特定權限。
https://www.atatech.org/articles/102865#17 步驟 7.確定 Private 檔案夾安全
在本例中,您僅擁有兩個使用者。您在組級别授予兩個使用者所有所需的最小權限,隻有當您真正需要單個使用者級别上的權限時,才授予使用者級别權限。此方法有助于最大限度地減少管理權限的工作量。随着使用者數量的增加,我們希望確定不意外地授予使用者對 Private 檔案夾的權限。是以,我們需要添加一個顯式拒絕通路 Private 檔案夾的政策。顯式拒絕政策會取代任何其他權限。若要確定 Private 檔案夾保持私有,可以向組政策添加以下兩個拒絕語句:
- 添加以下語句以顯式拒絕對 Private 檔案夾 (example-company/Private/*) 中的資源執行任何操作。
json { "Effect": "Deny", "Action": [ "oss:*" ], "Resource": [ "acs:oss:*:*:example-company/Private/*" ], "Condition": {} }
- 您還要在請求指定了 Private/ prefix 時拒絕執行 ListObjects 操作的權限。在控制台中,如果 Anne 或 Leo 單擊 Private 檔案夾,則此政策将導緻 OSS 傳回錯誤響應。
json { "Effect": "Deny", "Action": [ "oss:ListObjects" ], "Resource": [ "acs:oss:*:*:*" ], "Condition": { "StringLike": { "oss:Prefix": [ "Private/" ] } } }
用包含前述拒絕語句的更新政策取代 Staff 組政策 AllowGroupToSeeBucketListInConsole。在應用更新政策後,組中的任何使用者都不能通路您的存儲空間中的 Private 檔案夾。
- 用以下政策取代配置設定給 Staff 組的現有政策 AllowGroupToSeeBucketListInConsole。請用您的存儲空間名替換政策資源中的 example-company。 的 修改自定義授權政策 部分。注意,您最多可對 RAM 政策進行五次修改。如果超過五次,您需要删除該政策并建立一個新的政策,然後再次将新政策配置設定給 Staff 組。
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:ListBuckets", "oss:GetBucketAcl" ], "Resource": [ "acs:oss:*:*:*" ], "Condition": {} }, { "Effect": "Allow", "Action": [ "oss:ListObjects" ], "Resource": [ "acs:oss:*:*:example-company" ], "Condition": { "StringLike": { "oss:Prefix": [ "" ], "oss:Delimiter": [ "/" ] } } }, { "Effect": "Deny", "Action": [ "oss:*" ], "Resource": [ "acs:oss:*:*:example-company/Private/*" ], "Condition": {} }, { "Effect": "Deny", "Action": [ "oss:ListObjects" ], "Resource": [ "acs:oss:*:*:*" ], "Condition": { "StringLike": { "oss:Prefix": [ "Private/" ] } } } ] }
https://www.atatech.org/articles/102865#18 清理
要進行清理,您需要在 RAM 控制台中删除使用者 Anne 和 Leo。有關詳細過程,請參見 RAM 使用者指南中
使用者的删除 RAM 使用者部分。
為了確定您不再因存儲而繼續被收取費用,您還需要删除為本示例建立的對象和存儲空間。