腾讯云数据库 AI 服务 管理用户角色

当管理员需要为 TencentDB Agent 配置调用腾讯云数据库管控面 API 的权限时,可通过用户角色管理功能实现精细化的权限控制。典型使用场景包括。

相关产品
腾讯云数据库 AI 服务 产品页,含版本规格、价格与购买入口。

一、操作场景

·首次开通 TencentDB Agent 后,确认默认全局只读角色已自动创建并生效。

·基于业务需求,为特定实例创建可写权限角色并关联生效。

·查看当前账号下所有 CAM 角色的状态、策略及关联实例情况。

二、背景信息

TencentDB Agent 通过腾讯云 访问管理(CAM) 统一管理 TencentDB Agent 调用云 API 的权限。用户角色是在客户 CAM 账号下创建的标准 CAM 角色,TencentDB Agent 管理端负责镜像展示这些角色,并维护角色与实例的关联关系。TencentDB Agent 以绑定的角色身份获取临时凭证调用腾讯云数据库管控面 API,实现权限与人的子账号完全解耦。

三、核心概念

概念 说明
用户角色 客户在 CAM 控制台创建或由 TencentDB Agent 代创建的 CAM 角色,TencentDB Agent 以该角色身份调用云 API,权限边界由角色关联的策略决定
默认全局只读角色 客户首次创建 TencentDB Agent 实例时自动代建的 TencentDBAgent_AI_GlobalReadOnly 角色,默认对账号下所有未单独绑定角色的实例生效。
角色模板 TencentDB Agent 提供的预定义策略组合方案,包含只读角色模板和可写角色模板,简化角色创建流程。
关联实例 将 CAM 角色绑定到指定 TencentDB Agent 实例,在操作该实例时以绑定角色身份执行。

四、生效优先级

TencentDB Agent 调用云 API 时,按以下优先级确定使用的角色:

1. 指定实例关联的角色:若目标实例已被单独绑定某角色,优先使用该角色。

2. 全局生效角色:若实例未被单独绑定,使用账号下的全局生效角色(默认为 TencentDBAgent_AI_GlobalReadOnly)。

六、只读角色模板(14条预置策略)

类别 策略名称 适用产品
关系型数据库(5条) QcloudCDBReadOnlyAccess 云数据库 MySQL
 QcloudCynosDBReadOnlyAccess TDSQL-C MySQL
 QcloudMariaDBReadOnlyAccess TDSQL MariaDB
 QcloudPostgreSqlReadOnlyAccess 云数据库 PostgreSQL
 QcloudSqlServerReadOnlyAccess 云数据库 SQL Server
KV / 缓存(2条) QcloudRedisReadOnlyAccess Distributed Cache (兼容 Redis)
 QcloudKeeWiDBReadOnlyAccess KeeWiDB
文档型 / 时序型(2条) QcloudMongoDBReadOnlyAccess 云数据库 MongoDB
 QcloudCTSDBReadOnlyAccess CTSDB
数据传输与诊断(4条) QcloudDTSReadOnlyAccess 数据传输服务 DTS
 QcloudDMCReadOnlyAccess 数据库管理中心 DMC
 QcloudDBbrainReadOnlyAccess 数据库智能管家 DBbrain
 QcloudMonitorReadOnlyAccess 云监控
数据库 AI 服务(1条) QcloudDatabaseClawUserFullAccess 数据库 AI 服务

七、可写角色模板(14条只读 + 13条 FullAccess + 1条 Deny 兜底)

在只读模板全部14条策略基础上,额外关联以下策略:

写权限策略(13条)

类别 策略名称 适用产品
关系型数据库(5条) QcloudCDBFullAccess 云数据库 MySQL
 QcloudCynosDBFullAccess TDSQL-C MySQL
 QcloudMariaDBFullAccess TDSQL MariaDB
 QcloudPostgreSqlFullAccess 云数据库 PostgreSQL
 QcloudSqlServerFullAccess 云数据库 SQL Server
KV / 缓存(2条) QcloudRedisFullAccess Distributed Cache (兼容 Redis)
 QcloudKeeWiDBFullAccess KeeWiDB
文档型 / 时序型(2条) QcloudMongoDBFullAccess 云数据库 MongoDB
 QcloudCTSDBFullAccess CTSDB
数据传输与诊断(3条) QcloudDTSFullAccess 数据传输服务 DTS
 QcloudDMCFullAccess 数据库管理中心 DMC
 QcloudDBbrainFullAccess 数据库智能管家 DBbrain
数据库 AI 服务(1条) QcloudTDAIFullAccess 数据库 AI 服务

Deny 兜底策略(1条)

策略名称 拒绝范围
TencentDBAgent_DenyDestructive_v2 永久拒绝销毁、扩缩容、库表删除、网络变更等高危动作

注意:警告:

注意:可写角色允许 TencentDB Agent 调用数据库写操作类 API(参数变更、账号管理、备份恢复等),通过强制叠加 Deny 策略 TencentDBAgent_DenyDestructive_v2 兜底拒绝高危动作。本角色建议绑定指定实例,不建议全局生效。

八、实现机制

TencentDB Agent 用户角色管理基于以下机制实现权限的安全隔离:

1. 角色始终归属客户账号:所有用户角色均创建在客户自己的 CAM 账号下,客户随时可在 CAM 控制台查看、修改或收回权限。TencentDB Agent 仅在客户授权范围内代为创建和维护角色。

2. TencentDB Agent 身份与人的子账号解耦:TencentDB Agent 调用云 API 时使用独立的用户角色身份,不继承当前操作人(子账号)的 CAM 权限。即使操作人拥有扩缩容、网络变更等高危权限,TencentDB Agent 的操作边界仍受角色策略约束。

3. 默认全局只读兜底:客户首次创建实例时,系统自动代建默认全局只读角色 TencentDBAgent_AI_GlobalReadOnly,确保所有实例开通即拥有只读安全基线,无需客户主动配置。

4. 角色绑定到实例级别:每个 TencentDB Agent 实例可独立绑定不同的用户角色。角色变更后实例需重启以加载新凭证(通常 30 秒内恢复)。

5. 可写权限强制叠加 Deny 兜底:可写角色在授予写操作权限的同时,强制关联 TencentDBAgent_DenyDestructive_v2 策略,从 CAM 策略层面永久拒绝销毁、扩缩容、库表删除、网络变更等高危动作,确保不可能执行不可逆操作。

6. 全链路审计可追溯:每次 TencentDB Agent 调用云 API 时,请求携带实例 ID 和操作主体信息,可在 CAM 审计日志中追溯到具体实例和操作链路。

九、使用限制

限制项 限制说明
访问权限 仅主账号或被授予 QcloudDatabaseClawAdminFullAccess 策略的子账号可访问用户角色页面。
角色载体 用户角色页面仅展示 TencentDB Agent 可使用的 CAM 角色,其他类型的角色不在此页面展示。
全局角色数量 账号下最多1个全局生效角色处于启用状态。
实例角色绑定 同一实例只能绑定1个指定角色,绑定新角色时自动替换原绑定。
角色命名规范 角色名称以 DatabaseClaw_ 开头,支持英文、数字、下划线,长度不超过60个字符。
代创建前提 使用 TencentDB Agent 代创建角色功能时,当前操作人需具备 cam:CreateRole 和 cam:AttachRolePolicy 权限。

十、注意事项

·角色变更后,受影响的实例需要重启才能使新角色生效。重启期间(通常30秒内)TencentDB Agent 对话暂时不可用。

·可写角色模板中强制叠加 Deny 策略 TencentDBAgent_DenyDestructive_v2,永久拒绝销毁实例、扩缩容、网络变更、库表删除等高危动作。

·角色的编辑、删除、标签管理、策略调整等维护操作需在 CAM 控制台完成,TencentDB Agent 管理端不提供这些操作。

十一、前提条件

·当前账号已被授予 QcloudDatabaseClawAdminFullAccess CAM 策略。

·首次创建 TencentDB Agent 实例时已完成 TencentDBAgent_AIRoleProvisioner 角色的服务授权。

十三、创建用户角色

TencentDB Agent 提供两种创建用户角色的方式:通过 TencentDB Agent 代创建或前往 CAM 控制台手动创建。

十四、方式一:TencentDB Agent 代创建(推荐)

1. 登录 数据库 AI 服务控制台。

2. 在左侧导航栏选择 TencentDB Agent > 后台管理。

3. 选择团队管理 > 用户角色页面。

4. 在用户角色页面,单击 TencentDB Agent 代创建。

5. 在弹出的选择角色模板对话框中,选择需要创建的角色模板类型:

·只读角色模板:仅具备数据库只读权限,适用于诊断分析场景。

·可写角色模板:在只读基础上具备写操作权限(参数变更、账号管理、备份恢复等),同时强制叠加 Deny 策略拒绝高危动作。

6. 单击下一步,进入角色信息确认页面。

7. 确认或修改以下角色信息。

参数 说明
推荐角色名称 系统自动生成的角色名称,格式为 TencentDBAgent_AI_ReadOnly_<时间戳>或 TencentDBAgent_AI_ReadWrite_<时间戳>。支持自定义修改,需遵循以下约束:必须以 DatabaseClaw_开头仅支持英文、数字、下划线长度不超过60个字符
推荐角色描述 系统自动生成的角色描述,支持自定义修改。
标签 可选配置。为角色绑定标签键值对,用于资源的分类管理与成本核算。
策略信息 展示该角色将关联的预置策略清单(如只读/读写权限)。该内容为系统预置,不支持修改。

8. 阅读页面底部的安全说明,勾选确认复选框:我已了解:TencentDB Agent 代创建会在当前操作人 CAM 权限范围内创建角色并关联策略;后续编辑/删除仍在 CAM 完成。

9. 单击 TencentDB Agent 代创建,完成角色创建。

注意:说明:

十五、方式二:前往 CAM 控制台创建

1. 登录 CAM 控制台。

2. 在左侧导航栏选择角色。

3. 在页面上方单击新建角色。

4. 在弹出的选择角色载体窗口,选择腾讯云产品服务作为角色载体,进入新建自定义角色页面。

5. 在输入角色载体信息步骤,通过搜索选择腾讯云数据库 AI 服务,可选择的使用案例选择腾讯云数据库 AI 服务,单击下一步。

6. 在配置角色策略步骤,勾选你想要给当前角色添加的策略为角色配置策略,单击下一步。

注意:说明:

注意:可根据实际角色需要选择策略。若无匹配的策略,你可以 通过策略生成器创建自定义策略 后再进行操作。

7. 在配置角色标签步骤(可选),输入角色的标签键和标签值,单击下一步。

8. 在审阅步骤,输入你的角色名称,审阅你即将创建角色的相关信息无误后,单击完成后即完成自定义角色创建。

注意:支持自定义,需遵循以下约束:

注意:• 必须以 TencentDBAgent_ 开头,若不满足该命名约束,用户角色页面将不展示该新建角色。

注意:• 仅支持英文、数字、下划线

注意:• 长度不超过60个字符

9. 创建完成后,返回 TencentDB Agent 用户角色页,单击刷新按钮查看新建角色。

十六、关联实例

为角色配置生效的 TencentDB Agent 实例范围,在操作对应实例时以该角色身份执行。

1. 登录 数据库 AI 服务控制台。

2. 在左侧导航栏选择 TencentDB Agent > 后台管理。

3. 选择团队管理 > 用户角色页面。

4. 在用户角色页面,找到目标角色行,单击关联实例。

5. 在关联实例弹窗中,查看角色基础信息。

参数 说明
角色名称 当前操作用户所关联的 CAM 角色名称。
角色 ID 该角色在 CAM 系统中的唯一标识(RoleId)。
角色载体 角色的信任实体信息,用于定义哪些账号或服务可以扮演该角色。
CAM 操作 单击打开 CAM 角色详情将跳转至 CAM 控制台,查看该角色的权限策略、关联用户及信任策略等完整信息。

6. 在关联实例区域,通过地域筛选和搜索框定位目标实例。

实例列表字段说明:

参数 说明
实例 ID / 名称 TencentDB Agent 实例的唯一资源标识(InstanceId)及自定义名称。
状态 实例当前的运行状态,包括运行中、重启中、隔离中等枚举值。
当前 AI 角色 该实例当前绑定的 CAM 角色名称。若未单独绑定或处于默认状态,则显示为 -。

7. 勾选需要关联的实例,单击保存关联实例。

注意:说明:

注意:保存后,TencentDB Agent 会更新对应 Pod 的 ServiceAccount 注解,触发 Pod rolling restart。期间实例状态变为重启中,恢复后回到运行中。重启过程中正在进行的 AI 对话会暂时中断,恢复后可继续提问。

注意:

十七、查看用户角色列表

1. 登录 数据库 AI 服务控制台。

2. 在左侧导航栏选择 TencentDB Agent > 后台管理。

3. 选择团队管理 > 用户角色页面。

4. 查看当前账号下 TencentDB Agent 可使用的 CAM 角色列表。

列表字段说明如下:

参数 说明
角色名称 CAM 角色名称,与 CAM 控制台中的角色名称完全一致。
角色 ID CAM 角色的唯一标识符(RoleId)。
角色载体 角色的信任实体信息(Principal)。
角色描述 CAM 角色的描述信息,用于说明角色的用途。
标签信息 该角色所绑定的标签键值对,用于资源分类与成本管理。
会话最大持续时间 通过此角色获取的临时密钥(STS)的最长有效时间,默认为 2 小时。
关联实例 当前已绑定该角色的 TencentDB Agent 实例数量。单击数值可查看具体关联的实例地域及实例 ID。
操作 支持对该角色执行的操作:• 关联实例:配置实例与角色的绑定关系。具体操作请参见 关联实例。• CAM 详情:跳转至 CAM 控制台查看完整角色信息。

5. 若需搜索特定角色,在页面右上方的搜索框中输入角色名称进行筛选。

十八、查看 CAM 角色详情

1. 登录 数据库 AI 服务控制台。

2. 在左侧导航栏选择 TencentDB Agent > 后台管理。

3. 选择团队管理 > 用户角色页面。

4. 在用户角色页面,找到目标角色行,单击操作列的 CAM 详情,跳转至 CAM 控制台查看该角色的完整信息,包括权限策略、角色载体、会话设置等。

十九、管理 CAM 角色

TencentDB Agent 用户角色支持在 CAM 控制台创建或由 TencentDB Agent 代创建。无论角色来源如何,其全生命周期管理(查看、修改、删除等)均需在 CAM 控制台统一操作。

操作场景 说明
修改角色 调整角色的信任策略(载体)或权限策略。
删除角色 在 CAM 控制台移除不再使用的角色。注意:若角色仍被实例关联,删除可能导致服务异常。

20、后续步骤

·角色创建并关联实例后,TencentDB Agent 在对应实例的对话中将以该角色身份调用云 API,无需额外配置。

·如需调整角色策略(增减权限),请前往 CAM 控制台 编辑对应角色的策略列表。

·如需管理团队成员的访问权限,请参见 管理用户。

21、对应的 API 接口

API 名称 说明
DescribeClawRoles 查询用户角色列表,返回角色名称、ID、载体、关联实例数等信息
CreateClawRole 基于角色模板代创建 CAM 角色并关联预置策略
AssignClawRoleToInstances 将指定角色关联到目标 TencentDB Agent 实例(支持批量)

23、Q1:默认全局只读角色是什么时候创建的?

默认全局只读角色 TencentDBAgent_AI_GlobalReadOnly 在客户首次创建 TencentDB Agent 实例时由系统自动代建。创建成功后,该角色自动对账号下所有未单独绑定角色的实例生效,TencentDB Agent 以只读权限调用云 API。

24、Q2:TencentDB Agent 代创建角色和在 CAM 手动创建有什么区别?

对比维度 TencentDB Agent 代创建 CAM 手动创建
操作位置 TencentDB Agent 管理端 CAM 控制台
策略关联 按模板自动关联全部预置策略 需手动逐条关联策略
前提条件 操作人需具备 cam:CreateRole 和 cam:AttachRolePolicy 权限 操作人需具备 CAM 角色创建权限
适用场景 快速创建标准化角色 需要自定义策略组合时

两种方式创建的角色在 CAM 中完全等价,后续编辑、删除、策略调整均在 CAM 控制台完成。

25、Q3:只读角色和可写角色如何选择?

场景 推荐角色类型 说明
生产环境实例 只读角色 TencentDB Agent 仅可执行诊断分析操作,不可进行任何写变更。
测试/开发环境实例 可写角色 TencentDB Agent 可执行参数变更、账号管理、备份恢复等写操作,高危动作仍被 Deny 策略拒绝。
全局默认 只读角色 未单独绑定角色的实例默认以只读权限运行。

26、Q4:关联实例后为什么需要重启?

TencentDB Agent 采用 TKE OIDC 机制将 CAM 角色绑定到实例 Pod。角色变更后需要更新 Pod 的 ServiceAccount 绑定,因此受影响的实例需要重启以加载新角色的临时凭证。重启过程通常在30秒内完成。

27、Q5:可写角色的 Deny 策略能否移除?

可写角色代创建时,Deny 策略 TencentDBAgent_DenyDestructive_v2 会强制绑定,不可在代创建流程中跳过。客户如确有需要,可在 CAM 控制台手动解绑该策略。

赞 (0)
上一篇 4天前
下一篇 4天前