設置對象ACL
更新時間 2025-06-11 14:55:26
最近更新時間: 2025-06-11 14:55:26
分享文章
接口功能介紹
設置對象的訪問權限控制列表(ACL)
接口約束
支持的線上資源池 :上海7、南京3、南京5、杭州2、合肥2、九江、廣州6、武漢4、福州25、廈門3、郴州2、海口2、北京5、雄安2、石家莊20、內蒙6、晉中、遼陽1、西安5、烏魯木齊4、烏魯木齊27、中衛5、蘭州2、西寧2、拉薩3、昆明2、重慶2、成都4、貴州3、上海33、寧波邊緣云、華東1、上海36、南昌5、青島20、武漢41、長沙42、長沙37、南寧23、北京行業云20、華北2、西南1、上海32。
URI
POST /v4/oss/put-object-acl
請求參數
請求體 JSON Body 參數
| 參數 | 是否必填 | 參數類型 | 說明 | 示例 |
|---|---|---|---|---|
| bucket | 是 | String | 桶名 | bucket1 |
| key | 是 | String | 對象名 | obj1 |
| versionID | 否 | String | 版本ID,在開啟多版本時可使用 | USzD.sN0vODAsQ84ncdT20oRiY2lFCD |
| regionID | 是 | String | 區域 ID | 332232eb-63aa-465e-9028-52e5123866f0 |
| ACL | 否 | String | ACL 配置,允許的值為 private, public-read, public-read-write, authenticated-read。不能與accessControlPolicy 同時使用。 | private |
| accessControlPolicy | 否 | Object | 訪問控制策略,不能與 ACL 參數同時使用 | 見下級對象 |
表 accessControlPolicy
| 參數 | 是否必填 | 參數類型 | 說明 | 示例 |
|---|---|---|---|---|
| owner | 是 | Object | 所有者 | 見下級對象 |
| grants | 是 | Array of Objects | 授權信息 | 見下級對象 |
表 owner
| 參數 | 是否必填 | 參數類型 | 說明 | 示例 |
|---|---|---|---|---|
| displayName | 是 | String | 展示名稱 | dname1 |
| ID | 是 | String | 用戶名 | user1 |
表 grants
| 參數 | 是否必填 | 參數類型 | 說明 | 示例 |
|---|---|---|---|---|
| grantee | 是 | Object | 被授予權限的人的容器 | 見下級對象 |
| permission | 是 | String | 權限,為 WRITE, WRITE_ACP, FULL_CONTROL, READ, READ_ACP 之中的值 WRITE:向桶中寫對象的權限 WRITE_ACP:修改桶的訪問控制權限的能力 READ:讀取桶中文件列表的能力 READ_ACP:獲取桶的訪問控制權限的能力 FULL_CONTROL:同桶的所屬者相同的權限,以上能力都具有 |
FULL_CONTROL |
表 grantee
| 參數 | 是否必填 | 參數類型 | 說明 | 示例 |
|---|---|---|---|---|
| emailAddress | 否 | String | 郵箱地址 | example@daliqc.cn |
| type | 是 | String | 用戶類型, CanonicalUser,AmazonCustomerByEmail,Group 三者之一。type 為 CanonicalUser 時,必填 ID;為 AmazonCustomerByEmail,必填 emailAddress;為 Group 必填URI。另外,使用 AmazonCustomerByEmail 時,將會保存其指向到的 CanonicalUser 類型的用戶 | CanonicalUser |
| displayName | 否 | String | 展示名稱 | dname2 |
| ID | 否 | String | 用戶名 | user2 |
| URI | 否 | String | URI,不存在時為 null | //acs.amazonaws.com/groups/global/AuthenticatedUsers |
響應參數
| 參數 | 參數類型 | 說明 | 示例 |
|---|---|---|---|
| statusCode | Integer | 返回碼 取值范圍:800 成功 |
800 |
| message | String | 狀態描述 | SUCCESS |
| description | String | 狀態描述,一般為中文 | 成功 |
| errorCode | String | 業務細分碼(僅失敗時具有此參數),為product.module.code三段式碼 | openapi.userPermission.accessFailed |
請求示例
{
"bucket": "bucket1",
"regionID": "332232eb-63aa-465e-9028-52e5123866f0",
"key": "obj1",
"versionID": "USzD.sN0vODAsQ84ncdT20oRiY2lFCD",
"accessControlPolicy": {
"owner": {
"displayName": "dname1",
"ID": "user1"
},
"grants": [
{
"grantee": {
"displayName": "dname2",
"emailAddress": "//example@daliqc.cn/xxxx",
"ID": "user2",
"type": "CanonicalUser"
},
"permission": "FULL_CONTROL"
}
]
}
}
響應示例
{
"message": "SUCCESS",
"description": "成功",
"statusCode": 800
}
狀態碼
| 狀態碼 | 描述 |
|---|---|
| 800 | 表示請求成功。 |
| 900 | 表示請求失敗。 |
錯誤碼
errorCode 枚舉值,見錯誤碼總表