Bucket权限控制
更新时间:2025-04-09
Bucket权限控制
设置Bucket的访问权限
-
基本流程
- 创建BosClient。
- 执行putBucketAcl方法,putBucketAcl方法无返回值,不抛出异常即设置成功,
putBucketAcl
方法请求参数:
参数 | 说明 |
---|---|
BucketName | 存储桶名称 |
CannedAcl | Bucket访问权限,可取private,public-read或public-read-write |
aclStr | acl文件内容,详见上传acl文件方式的权限控制 |
- 示例代码
// 使用cannedAcl的方式设置Bucket访问权限为private
try {
await bosClient.putBucketAcl(bucketName, "private", undefined)
logger.info(`put bucket acl success`);
} catch (bosResponse) {
logger.error(`errCode: ${bosResponse.error.code}`)
logger.error(`requestId: ${bosResponse.error.requestId}`)
logger.error(`errMessage: ${bosResponse.error.message}`)
logger.error(`statusCode: ${bosResponse.statusCode}`)
}
//使用acl文件内容的方式设置访问权限
let aclStr = `{
"accessControlList":[
{
"grantee":[{
"id":"123456"
}],
"permission":["FULL_CONTROL"]
}
]
}`;
try {
await bosClient.putBucketAcl(bucketName, undefined, aclStr)
logger.info(`put bucket acl success`);
} catch (bosResponse) {
logger.error(`errCode: ${bosResponse.error.code}`)
logger.error(`requestId: ${bosResponse.error.requestId}`)
logger.error(`errMessage: ${bosResponse.error.message}`)
logger.error(`statusCode: ${bosResponse.statusCode}`)
}
查看Bucket的权限
-
基本流程
- 创建BosClient。
- 执行getBucketAcl()方法。
- 示例代码
let bucketAcl: GetBucketAclResult;
try {
bucketAcl = await bosClient.getBucketAcl(bucketName)
logger.info(`get bucket acl success, content: ${JSON.stringify(bucketAcl)}`)
} catch (bosResponse) {
logger.error(`errCode: ${bosResponse.error.code}`)
logger.error(`requestId: ${bosResponse.error.requestId}`)
logger.error(`errMessage: ${bosResponse.error.message}`)
logger.error(`statusCode: ${bosResponse.statusCode}`)
}