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()方法。
-
示例代码
let grant_list = [ { 'grantee': [ {'id': <UserID1>}, // 授权给特定用户1 {'id': <UserID2>}, // 授权给特定用户2 ], 'permission': ['FULL_CONTROL'] // 设置权限为FULL_CONTROL }, { 'grantee': [ {'id': <UserID3>} // 授权给特定用户3 ], 'permission': ['READ'] // 设置权限为READ } ]; client.setBucketAcl(<BucketName>, grant_list) .then(function() { // 设置完成 }) .catch(function(error) { // 设置失败 });
执行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()方法。
-
示例代码
client.getBucketAcl(<BucketName>) .then(function() { // 设置完成 }) .catch(function(error) { // 设置失败 });
执行getBucketAcl
方法返回的参数有:
参数 | 说明 |
---|---|
owner | Bucket owner信息 |
+id | Bucket owner的用户ID |
access_control_list | 标识Bucket的权限列表 |
+grantee | 标识被授权人 |
++id | 被授权人ID |
+permission | 标识被授权人的权限 |
+resource | ACL配置项所影响的资源 |