在默认情况下,LightCOS 的资源(存储桶和对象)都是私有的。只有腾讯云主账号(资源拥有者)才可以访问、修改存储桶和对象,其他用户(子账号、匿名用户等),在未授权的情况下都无法直接通过 URL 访问对象。
创建腾讯云子账号后,您可以通过访问策略为子账号授权;若需要将资源开放给非腾讯云用户,可以通过设置资源(存储桶、对象、目录)的公共权限(公有读)实现。
访问权限的元素
访问权限包含以下基本元素:身份、效力、资源、操作、条件(可选)。
元素 | 说明 |
身份(Principal) | |
效力(Effect) | 允许(allow)或拒绝(deny)。 |
资源(Resource) | 存储桶 Bucket 和对象 Object 是 LightCOS 的资源。资源六段式格式如下: 存储桶:qcs::lightcos::uin/${主账号 uin}:bucket/${bucket-appid}/* 前缀/目录:qcs::lightcos::uin/${主账号 uin}:bucket/${bucket-appid}/${resource_path}/* 对象:qcs::lightcos::uin/${主账号 uin}:bucket/${bucket-appid}/${resource_path}/${objectname} |
操作(Action) | |
条件(Condition) |
访问授权
LightCOS 主要支持两种授权方式。
方式一:通过访问管理控制台,添加用户策略。
方式二:通过轻量对象存储控制台,为存储桶配置 ACL 访问权限(包括公共访问权限和用户权限)。
方式一:用户策略
操作步骤
1. 登录 访问管理控制台。
2. 进入策略,单击新建自定义策略,在弹窗中,选择按策略生成器创建。
3. 进入策略生成页面,服务选择轻量对象存储(lightcos)。
效果:根据您的需要,选择允许或拒绝。
操作:如需要全部访问权限,可选择全部操作。您也可以按需添加需要的操作,完整操作列表见 LightCOS 操作列表。
资源:选择全部资源或特定资源。通过选择特定资源,您可以为将授权范围限制在指定的存储桶或指定的存储桶目录内。
条件:按需添加来源 IP 等访问条件。

4. 单击下一步 ,单击选择用户,选择您需要授权的用户。
5. 单击完成,完成授权。
方式二:存储桶 ACL 访问权限
存储桶 ACL 概述
访问控制列表(ACL)使用是与资源关联的一个指定被授权者和授予权限的列表,每个存储桶都有与之关联的 ACL,支持向匿名用户或腾讯云账号(主账号、子账号等)以操作集的形式授予基本的读写权限。
当您仅需要为存储桶设置一些简单的访问权限或开放匿名访问,可以选择 ACL。当您需要精细化权限管控时,推荐您优先使用存用户策略,灵活程度更高。ACL 比较适用场景包括:仅设置简单的访问权限、在 LightCOS 控制台快速设置访问权限、需要将存储桶开放给所有互联网匿名用户访问。
存储桶 ACL 提供了一些基本预设权限组,方便用户为匿名用户或 CAM 用户授予权限。分为公共访问权限和用户权限:
公共访问权限:管理匿名用户是否可以访问桶内的对象。
用户权限:管理腾讯云账户(主账号、子账号等)是否可以访问对象。
分类 | 存储桶 ACL | 描述 |
公共访问权限 | 私有读写(private) | 匿名用户不支持访问存储桶内数据。 |
| 公有读私有写(public-read) | 匿名用户具有读取数据的权限。包括:GetObject、HeadObject、ListParts。 |
| 公有读写(public-read-write) | 匿名用户具有读取和写入数据的权限。包括:GetObject、HeadObject、ListParts、PostObject、PutObject、InitiateMultipartUpload、UploadPart、CompleteMultipartUpload、AbortMultipartUpload、DeleteObject。 |
用户权限 | 数据读取 | 授予数据读取权限。包括:GetObject、HeadObject、ListMultipartUploads、ListParts、GetBucket、HeadBucket。 |
| 数据写入 | 授予数据写入和读取的权限。包括:GetObject、HeadObject、ListMultipartUploads、ListParts、GetBucket、HeadBucket、PostObject、PutObject、InitiateMultipartUpload、UploadPartCopy、CompleteMultipartUpload、AbortMultipartUpload、DeleteObject。 |
| 权限读取 | 授予用户读取存储桶和对象 ACL 的权限。包括:GetBucketACL、GetObjectACL。 |
| 权限写入 | 授予用户写入和修改存储桶和对象 ACL 的权限。包括:PutBucketACL、PutObjectACL。 |
| 完全控制 | 授予用户存储桶和桶内对象的所有权限(lightcos:*)。 说明: 存储桶所属的主账号默认拥有完全控制权限。 |
操作步骤
1. 登录 轻量对象存储控制台。
2. 进入存储桶列表,选择您需要配置的存储桶,单击进入存储桶配置。
3. 选择基础配置 > 权限设置,开始配置存储桶 ACL。
4. 单击编辑公共访问权限,管理匿名用户是否可以访问桶内的对象。


5. 单击编辑用户权限,管理腾讯云账户(主账号、子账号等)是否可以访问对象。


附录:LightCOS 操作列表
LightCOS 的接口授权粒度分为资源级和操作级两个级别:
资源级接口:此类型接口支持对某一个具体特定的资源(存储桶、对象)进行授权。
操作级接口:此类型接口不支持对某一个特定的资源进行授权,需要您在授权时选取全部资源。
接口名 | 接口描述 | 授权粒度 | 接口类别 |
GetService | 拉取存储桶列表 | 接口级 | 列表 |
DeleteBucket | 删除存储桶 | 资源级 | 写入 |
DeleteBucketCORS | 删除存储桶跨域配置 | 资源级 | 写入 |
DeleteBucketDomain | 删除存储桶自定义域名配置 | 资源级 | 写入 |
DeleteBucketDomainCertificate | 删除自定义域名证书 | 资源级 | 写入 |
DeleteBucketReferer | 删除存储桶防盗链 | 资源级 | 写入 |
DeleteBucketWebsite | 删除存储桶静态网站配置 | 资源级 | 写入 |
GetBucket | 列出存储桶中的对象 | 资源级 | 列表 |
GetBucketACL | 读 bucket acp 操作组 | 资源级 | 读取 |
GetBucketCORS | 获取存储桶跨域访问配置 | 资源级 | 读取 |
GetBucketDomain | 获取存储桶自定义域名配置 | 资源级 | 读取 |
GetBucketDomainCertificate | 查询自定义域名证书绑定状态 | 资源级 | 读取 |
GetBucketReferer | 获取存储桶防盗链配置 | 资源级 | 读取 |
GetBucketWebsite | 获取存储桶静态网站配置 | 资源级 | 读取 |
HeadBucket | 用于判断存储桶是否存在,存在时返回基本信息 | 资源级 | 读取 |
PutBucket | 创建存储桶 | 接口级 | 写入 |
PutBucketACL | 写bucket acp操作组 | 资源级 | 写入 |
PutBucketCORS | 配置存储桶跨域资源共享 | 资源级 | 写入 |
PutBucketDomain | 添加存储桶自定义域名配置 | 资源级 | 写入 |
PutBucketDomainCertificate | 绑定 COS 自定义域名证书 | 资源级 | 写入 |
PutBucketReferer | 配置存储桶防盗链 | 资源级 | 写入 |
PutBucketWebsite | 配置存储桶静态网站 | 资源级 | 写入 |
AbortMultipartUpload | 舍弃一个分块上传并删除已上传的分块 | 资源级 | 写入 |
CompleteMultipartUpload | 完成分块上传任务 | 资源级 | 写入 |
DeleteObject | 删除对象 | 资源级 | 写入 |
GetObject | 下载对象 | 资源级 | 读取 |
GetObjectACL | 读 obj acp 操作组 | 资源级 | 读取 |
HeadObject | 用于判断对象是否存在,存在时返回基本信息 | 资源级 | 读取 |
InitiateMultipartUpload | 初始化分块上传任务 | 资源级 | 写入 |
ListMultipartUploads | 用于查询分块上传任务 | 资源级 | 读取 |
ListParts | 列出分块上传的分块 | 资源级 | 列表 |
PostObject | 表单上传对象 | 资源级 | 写入 |
PutObject | 上传对象 | 资源级 | 写入 |
PutObjectACL | 写 obj acp 操作组 | 资源级 | 写入 |
UploadPart | 上传对象分块 | 资源级 | 写入 |