一、总览
在进行 AI 模型训练、评测、推理的过程中,可能需要挂载云上其他存储产品,来进行相关数据的读、写、管理。企业内可能存在多个用户访问同一个存储系统/实例的情况,因而需要对存储的访问权限进行管理。
本文将介绍如何基于 TI-ONE 平台的数据源管理功能,以及腾讯云的访问管理(CAM)和标签(Tag)产品,实现存储目录的权限控制。
访问管理(Cloud Access Management,CAM):可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用 CAM 创建子用户、用户组和角色,并通过策略控制其访问范围。CAM 支持用户和角色 SSO 能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。前往 控制台-访问管理。
二、适用场景及期望效果
企业内多人协作的场景中,平台管理员需要限制不同团队成员可查看和操作的数据范围,避免越权操作。例如:A 团队成员仅支持访问 A 团队的存储实例及文件目录,B 团队成员仅支持访问 B 团队的文件。
1. 场景示例
假设企业存在两个业务团队,其中团队 A 负责 LLM 训练,团队成员包括 user_a1/user_a2/...;团队 B 负责 LLM 推理,团队成员包括user_b1/user_b2/...。
同时,假设企业已购买 CFS 存储实例,并分别为团队 A、B 创建了专属存储目录“/home/Group_A”、“/home/Group_B”。
团队 | 职责 | 成员 | 专属存储目录 |
团队 A(UserGroup_A) | LLM 训练 | user_a1、user_a2、... | /home/Group_A |
团队 B(UserGroup_B) | LLM 推理 | user_b1、user_b2、... | /home/Group_B |
2. 期望效果
团队 A 成员仅可访问“/home/Group_A”。
团队 B 成员仅可访问“/home/Group_B”。
三、前置条件
1. 已购买存储实例
数据源管理功能仅支持 CFS 和 GooseFSx 类型的存储实例,请您提前前往控制台购买存储实例。
CFS(Cloud File Storage,文件存储):CFS 提供了标准的 NFS 及 CIFS/SMB 文件系统访问协议,为多个 CVM 实例或其他计算服务提供共享的数据源,支持弹性容量和性能的扩展,现有应用无需修改即可挂载使用,是一种高可用、高可靠的分布式文件系统,适合于大数据分析、媒体处理和内容管理等场景。前往 控制台-CFS。
GooseFSx(Data Accelerator Goose FileSystem extreme):GooseFSx 可为对象存储(Cloud Object Storage,COS)加速,为高性能计算业务提供极高性能和极低时延,方便用户灵活管理冷、热数据,适用于高性能计算、自动驾驶、机器学习等业务场景。请前往 控制台-GooseFSx。
2. 已创建用户及用户组
创建用户组:UserGroup_A、UserGroup_B
创建用户:user_a1、user_a2、user_b1、user_b2
四、操作步骤
TI-ONE 提供了基于“访问管理(CAM)和标签(Tag)”控制腾讯云子账号之间数据隔离的能力。通过在数据源打上指定标签并配置相应的 CAM 策略,即可实现不同腾讯云子账号之间的数据隔离,进而实现存储目录的权限控制。具体操作步骤如下:
步骤一:新建标签

步骤二:新建数据源并打上标签
1. 进入 数据源管理 页面,单击新建数据源,分别填写以下参数。配置完成后的效果如下图所示:
数据源名称 | 存储目录 | 标签 |
Group_A 的数据源 | /home/Group_A | team:UserGroup_A |
Group_B 的数据源 | /home/Group_B | team:UserGroup_B |
2. 为存储实例开启挂载控制。

步骤三:自定义 CAM 策略并授权用户组
1. 进入访问管理控制台的 策略 页面,单击新建自定义策略,并选择“按策略语法创建”。


2. 在 选择策略模板 页面中,选择“空白模板”,并单击下一步。


3. 在编辑策略页面内(见上方右侧图片),依次配置以下参数后,单击完成创建。
3.1 策略名称(必填):UserGroup_A_DataSource
3.2 策略内容(必填):如下所示。(备注:新增其他策略时,请按需替换“qcs:resource_tag”中的标签键值)
{"statement": [{"action": ["tione:DescribeDataSources","tione:DescribeDataSource","tione:DeleteDataSource","tione:UpdateDataSource","tione:DescribeDataSourcePathStatus","tione:DescribeDataSourcePathDetails","tione:DescribeDataSourceRealPath","tione:CreateDataSourcePath"],"condition": {"for_any_value:string_equal": {"qcs:resource_tag": ["team&UserGroup_A"]}},"effect": "allow","resource": "*"},{"action": ["tione:CreateDataSource","tione:CreateMountLimit","tione:UpdateMountLimit","tione:DeleteMountLimit","tione:DescribeMountLimits","tione:DescribeMountInstance","tione:DescribeMountInstances"],"effect": "allow","resource": "*"}],"version": "2.0"}
4. 将自定义策略“UserGroup_A_DataSource”授权给用户组“UserGroup_A”。


5. 同理,按上述流程再次创建一条自定义策略“UserGroup_B_DataSource”,并授权给用户组“UserGroup_B”。
步骤四:验证效果
1. 使用子用户账号 user_a1/user_a2 登录 TI-ONE 平台,进入 数据源管理 页面,列表内仅显示“Group_A 的数据源”,不会显示“Group_B 的数据源”。
2. 反之,子用户 user_b1/user_b2 在同一页面仅可查看“Group_B 的数据源”。


3. 同理,在任务式建模/开发机等业务模块挂载“数据源”时,下拉列表内也仅显示对应团队可访问的数据源范围。
