Bucket权限管理
更新时间:2023-09-18
Bucket权限控制
设置Bucket的访问权限
- 
基本流程 - 创建BosClient。
- 执行setBucketAcl()方法。
 
- 示例代码
js // 设置Bucket访问权限为private client.setBucketCannedAcl(<BucketName>, 'private') .then(function() { // 设置完成 }) .catch(function(error) { // 设置失败 });setBucketCannedAcl方法请求参数:
| 参数 | 说明 | 
|---|---|
| BucketName | Bucket名字 | 
| CannedAcl | Bucket访问权限 | 
注意
cannedAcl包含三个值:
private、public-read、public-read-write,它们分别对应相关权限。具体内容可以参考《BOS API文档 使用CannedAcl方式的权限控制》。
设置指定用户对Bucket的访问权限
- 
基本流程 - 创建BosClient。
- 执行setBucketAcl()方法。
 
- 
示例代码 JavaScript1let grant_list = [ 2 { 3 'grantee': [ 4 {'id': <UserID1>}, // 授权给特定用户1 5 {'id': <UserID2>}, // 授权给特定用户2 6 ], 7 'permission': ['FULL_CONTROL'] // 设置权限为FULL_CONTROL 8 }, 9 { 10 'grantee': [ 11 {'id': <UserID3>} // 授权给特定用户3 12 ], 13 'permission': ['READ'] // 设置权限为READ 14 } 15]; 16client.setBucketAcl(<BucketName>, grant_list) 17 .then(function() { 18 // 设置完成 19 }) 20 .catch(function(error) { 21 // 设置失败 22 });执行setBucketAcl方法请求参数:
| 参数 | 说明 | 
|---|---|
| BucketName | Bucket名字 | 
| accessControlList | Bucket权限列表 | 
| +grantee | 设置权限的用户id列表 | 
| +permission | 设置的权限 | 
注意
permission中的权限设置包含三个值:
READ、WRITE、FULL_CONTROL,它们分别对应相关权限。具体内容可以参考《BOS API文档 上传ACL文件方式的权限控制》。
设置STS临时token权限
对于通过STS方式创建的临时访问身份,管理员也可进行专门的权限设定。 STS的简介及设置临时权限的方式可参见临时授权访问。
使用BOS JavaScript SDK设置STS临时token权限可参考通过sts方式访问BOS
查看Bucket的权限
- 
基本流程 - 创建BosClient。
- 执行getBucketAcl()方法。
 
- 
示例代码 JavaScript1client.getBucketAcl(<BucketName>) 2 .then(function() { 3 // 设置完成 4 }) 5 .catch(function(error) { 6 // 设置失败 7 });
执行getBucketAcl方法返回的参数有:
| 参数 | 说明 | 
|---|---|
| owner | Bucket owner信息 | 
| +id | Bucket owner的用户ID | 
| access_control_list | 标识Bucket的权限列表 | 
| +grantee | 标识被授权人 | 
| ++id | 被授权人ID | 
| +permission | 标识被授权人的权限 | 
| +resource | ACL配置项所影响的资源 | 
