文档中心>TI-ONE 训练平台>实践教程>基于标签实现子用户间资源隔离

基于标签实现子用户间资源隔离

最近更新时间:2025-11-19 18:33:22

我的收藏

总览

在企业多团队协作的场景下,主账号需为不同团队的子用户分配差异化的资源访问权限,使其仅可查看和操作指定的 TI-ONE 平台资源及其他关联云资源(如 CFS 文件系统)。为实现资源的有效隔离,可通过标签授权方式对资源进行归类与授权,并在访问管理(CAM)​ 中配置相应策略。

场景说明

下面以资源组、在线服务为例,假设主账号企业下有两个团队使用 TI-ONE 产品,分别有两个资源组,两个在线服务和两个CFS。对应的信息如下:
资源组 id
在线服务
所属标签
所属组织
rsg-wwb2hgrs
llm_text
team:llm_text
llm_text 团队
rsg-zbqrjvlz
llm_picture
team:llm_picture
llm_picture 团队

预期效果

资源组和在线服务等资源均实现子用户之间的资源隔离。
1. 资源组
使用管理员账号查看上海地域资源组列表,能够查看全部资源组。


使用llm_text_user账号 查看上海地域资源组列表, 只能查看绑定 team:llm_text 标签的资源组。


2. 在线服务
使用管理员账号查看上海地域在线服务列表,能够查看全部在线服务。

使用 llm_text_user 账号查看上海地域在线服务列表, 只能查看绑定 team:llm_text 标签的在线服务。



前置要求

确认接口支持资源级权限控制

实现标签授权的前提是接口需支持资源级权限控制。目前,TI-ONE 平台的主要资源均已支持资源级授权粒度,所有支持资源级授权的业务接口清单,可参考文档:支持 CAM 的业务接口

已创建子用户及授权

提前为 llm_text 团队创建 CAM 子用户 llm_text_user 并授权, llm_picture 团队创建 CAM 子用户 llm_picture_user 并授权。可参考文档:新建子用户

操作步骤

第一步:新建标签并为资源添加标签

该步骤主要为后续权限配置准备标签规则,以实现资源的分类。
1. 新建标签
进入 标签列表页面,单击新建标签,输入标签键和标签值,单击确定即可创建成功。



2. 给资源组添加标签
资源组管理 页面选择要打标签的资源组,单击编辑,在标签中选择之前建立的 team 标签键,分别绑定对应标签值,单击确定即可。

3. 给在线服务添加标签
模型服务-在线服务页面选择要打标签的服务,单击编辑标签,在标签中选择之前建立的 team 标签键,分别绑定对应标签值,单击确定即可。



第二步:新建自定义策略

用户可以通过编写自定义策略满足自身的权限定制需求,该步骤中新建自定义策略用于确保不同团队的子账号只能访问其被授权的特定资源。
腾讯云TI平台的接口在权限控制粒度上存在差异:部分接口支持基于标签的资源级鉴权,部分接口仅支持接口级的通用权限控制。同时,平台在执行AI任务时,还依赖其他云产品服务(如查询CFS文件存储实例),需进行相应的服务授权。因此,为实现TI产品资源隔离,需要配置以下三条策略:
序号
策略名称
分类
策略描述
1
Policy_llm_text_tag
自定义策略
TI支持标签资源粒度接口策略
2
Policy_tione_required
自定义策略
TI各个功能依赖其他云产品接口的策略
3
QcloudTIONEOperationalPrecondition
预设策略
TI支持接口级鉴权预设策略
1. 新建自定义策略 Policy_llm_text_tag
进入 访问管理策略 页面,单击新建自定义策略


选择按标签授权

编辑策略选择可视化策略生成器。

服务(必选):选择要授权的产品:腾讯云 TI 平台 TI-ONE (tione)
操作(必选):选择您要授权的操作, 这里默认选“全部操作 (tione:*)”。
选择标签(必选) :选择前面第一步创建的 team 标签键, llm_text标签值。
选择条件键:默认选择resource_tag 条件运算符为。默认不勾选 request_tag。
是否授予不支持标签的接口“resource”(必选): "*" 权限: 选择 否。
说明
操作中包含该服务所有接口,您可以通过“是否支持按标签授权”筛选查看接口是否支持按标签授权。
是:支持按标签授权接口,将包含关联对应标签资源的操作权限。
否:不支持按标签授权接口,将包含所有资源的操作权限。
单击下一步, 进入关联用户/用户组/角色页面。


策略名称由控制台自动生成,默认为 "policygen" ,后缀数字根据创建日期生成。这里策略名称修改为 Policy_llm_text, 单击完成。
2. 新建自定义策略 Policy_tione_required
进入 访问管理策略 页面,单击新建自定义策略。选择按策略语法授权



选择空白模板,单击下一步。



策略名称修改为 Policy_tione_required, 把策略内容修改为如下内容,单击完成。该策略是基于预设策略 QcloudTIONEFullAccessContainMultiservice进行修改的,删除action中的: "tione:*" 以及财务付费策略: "finance:trade",其他action可根据附录:接口说明的表格按需调整。默认授予所有资源权限:"resource": "*",如需按标签划分资源权限,请使用自定义策略按标签授权。
{
"statement": [
{
"action": [
"cam:GetRole",
"cam:ListAttachedRolePolicies",
"vpc:DescribeVpcEx",
"vpc:DescribeSubnetEx",
"vpc:DescribeNetworkAcls",
"vpc:DescribeSecurityGroupPolicies",
"cls:DescribeLogsets",
"cls:DescribeTopics",
"tcr:DescribeInstances",
"tcr:DescribeNamespaces",
"tcr:DescribeRepositories",
"tcr:DescribeRepositoryOwnerPersonal",
"tcr:DescribeRepositoryFilterPersonal",
"tcr:DescribeNamespacePersonal",
"tcr:DescribeInternalEndpoints",
"monitor:GetMonitorData",
"cos:GetService",
"cos:GetObject",
"cos:GetBucket",
"cos:HeadObject",
"cos:OptionsObject",
"cos:PutObject",
"tag:DescribeTagKeys",
"tag:DescribeTagValues",
"tag:AttachResourcesTag",
"tag:DetachResourcesTag",
"tag:GetResources",
"tag:DescribeEffectivePolicy",
"cfs:DescribeCfsFileSystems",
"emr:DescribeInstances",
"cvm:DescribeAddresses",
"cvm:DescribeInstances",
"emr:DescribeInstancesList",
"cfs:DescribeMountTargets",
"goosefs:DescribeClusters",
"goosefs:DescribeNamespaces",
"goosefs:DescribeFileSystems",
"cvm:DescribeSecurityGroupPolicys",
"clb:DescribeListeners",
"clb:DescribeLoadBalancers",
"cam:ListMaskedSubAccounts",
"monitor:DescribeAlarmPolicies",
"vpc:DescribeSecurityGroupLimits",
"cam:ListGroupsForConsole"
],
"effect": "allow",
"resource": "*"
}
],
"version": "2.0"
}

第三步:策略关联子用户

该步骤主要用于将上述步骤创建完成的自定义策略和预设策略,授权给相关联的子用户。
用户列表 页面找到要关联策略权限的子用户 llm_text_user,单击右侧的授权按钮;


选择 Policy_llm_text_tag, QcloudTIONEOperationalPrecondition Policy_tione_required,单击完成即可。
如需关联用户组,也可以在 用户组列表 页面找到要关联策略权限的用户组,点击进入用户组详情页,在下方选择关联策略,勾选上述三种策略,单击确定即可。

注意:
1. 请确保子用户没有关联 TI-ONE 平台其他的 CAM 策略。因 CAM 策略是取并集操作,如果有其他 TI-ONE 策略可能会导致资源隔离失败。
2. 如需要关联用户组,请参考文档 授权管理

第四步:创建标签策略

该步骤主要用于实现标签的自动化管理,根据用户的标签,在操作产品过程中自动关联该用户的标签键值。通过标签策略实现新建资源、修改资源自动关联标签。 具体配置参考标签产品文档 创建标签策略

注意:
标签选择本章节-第一步:新建标签中创建的标签 team:llm_text,输入标签键:team
产品区域选择 “全部产品“
打开:自动赋值,强制执行
创建完成后,选择该策略,绑定对应子账户


第五步:验证

该步骤主要用于校验以上步骤是否生效。
用关联策略的子用户 llm_text_user 身份登录 TI 控制台, 子用户仅能查看和操作关联标签 team:llm_text 的资源。符合预期效果。
针对 llm_picture 团队授权也参考上述的授权方法。

CFS等存储资源隔离说明

对于 CFS 存储资源隔离,存在两种实现方式,请根据实际使用场景来选择隔离方式。
方式一:CFS 实例隔离
当不同团队需要较高级别的数据安全性与性能隔离,可在 CFS 实例级进行资源隔离。具体操作方式是:为每个团队创建独立的CFS文件系统实例,然后通过标签授权功能,为每个团队的子账号授予仅能访问其对应标签的 CFS 实例的权限。详细操作请参考 访问管理-通过标签授权创建自定义策略
方式二:CFS 目录级挂载权限控制
当多个团队需要共享同一个 CFS 实例,但要求数据目录互相隔离时,可通过目录级权限进行控制。具体操作方式是:在同一个CFS实例中为不同团队创建独立的根目录,在 TI-ONE 平台配置数据源时,为每个团队指定其有权访问的挂载目录。详细操作请参考 使用数据源功能实现存储的目录级权限控制

注意事项

注意:
1. 子账号使用自定义策略时,如果在平台上发现使用某个功能报接口权限不足,这种情况一般是因为产品迭代有新的云产品接口调用,可以按照报错的指引,在自定义策略中新增该接口权限。账号相关权限请参见 访问管理-用户相关问题
2. 如果用户是资源创建者,则不受标签规则的限制,请参考创建者标签概述文档

附录:接口说明

Policy_tione_required 策略接口说明
注意:其中加粗的字段,需要重点关注授权范围,请谨慎操作,必要时可使用标签控制授权范围。
分类
接口名称
接口描述
cam
GetRole
查询用户组详情
cam
ListAttachedRolePolicies
--
cam
ListMaskedSubAccounts
拉取子账号列表(敏感信息打码)
cam
ListGroupsForConsole
控制台查看用户组列表
cfs
DescribeCfsFileSystems
查询文件系统
cfs
DescribeMountTargets
查询文件系统挂载点
clb
DescribeListeners
查询应用型负载均衡监听器列表
clb
DescribeLoadBalancers
获取负载均衡实例列表
cls
DescribeLogsets
获取日志集列表
cls
DescribeTopics
批量获取日志主题
cos
GetService
拉取存储桶列表
cos
GetObject
下载对象
cos
GetBucket
列出存储桶中的对象
cos
HeadObject
用于判断对象是否存在,存在时返回基本信息
cos
OptionsObject
用于跨域资源共享(CORS)的预检(Preflight)请求
cos
PutObject
上传对象
cvm
DescribeAddresses
查询EIPV3
cvm
DescribeInstances
查看实例列表
cvm
DescribeSecurityGroupPolicys
查询安全组规则
emr
DescribeInstances
查询EMR实例
emr
DescribeInstancesList
EMR集群实例列表查询
goosefs
DescribeClusters
列出所有 GooseFS 集群
goosefs
DescribeNamespaces
列出全部命名空间
goosefs
DescribeFileSystems
列出所有的文件系统
monitor
GetMonitorData
拉取监控数据
monitor
DescribeAlarmPolicies
告警2.0策略列表
tag
DescribeTagKeys
查询标签键
tag
DescribeTagValues
查询标签值
tag
AttachResourcesTag
资源批量关联标签
tag
DetachResourcesTag
解绑批量资源关联的标签
tag
GetResources
查询绑定了标签的资源列表
tag
DescribeEffectivePolicy
查询目标节点的有效策略
tcr
DescribeInstances
查询实例信息
tcr
DescribeNamespaces
查询命名空间信息
tcr
DescribeRepositories
读取镜像仓库
tcr
DescribeRepositoryOwnerPersonal
查询用户创建的镜像仓库
tcr
DescribeRepositoryFilterPersonal
获取满足输入搜索条件的个人版镜像仓库
tcr
DescribeNamespacePersonal
查询个人版命名空间信息
tcr
DescribeInternalEndpoints
查询实例内网访问链路信息
vpc
DescribeVpcEx
查询私有网络列表
vpc
DescribeSubnetEx
查看子网列表
vpc
DescribeNetworkAcls
查询网络ACL列表
vpc
DescribeSecurityGroupPolicies
查询安全组规则
vpc
DescribeSecurityGroupLimits
查询用户安全组配额