腾讯云数据仓库 TCHouse-X 权限体系介绍

TCHouse-X 作为一款强大的数据引擎产品,内置库、表等多种数据库对象。它提供权限管理功能,允许用户对 TCHouse-X 内的用户及角色的库表访问权限进行精细化管理。目前,TCHouse-X 支持基于角色的权限管理(RBAC)和基于用户的权限管理(UBAC),二者可组合使用、互为补充。

相关产品
腾讯云数据仓库 TCHouse-X 产品页,含版本规格、价格与购买入口。

一、基于角色的权限管理(RBAC)

在 RBAC 模型中,权限不是直接分配给用户,而是通过角色间接分配:

1. 定义角色: 根据工作职能(例如:管理员、编辑、普通用户)创建不同的角色。

2. 分配权限给角色: 为每个角色分配其完成工作所需的权限集(例如:“dba”角色拥有“创建、修改库表”的权限)。

3. 分配角色给用户: 将一个或多个角色分配给用户。用户继承角色的所有权限。

4. 当用户的工作职责发生变化时,管理员只需要更改用户的角色分配,访问权限就会自动调整,无需逐一修改用户的上百条权限。

二、基于用户的权限管理(UBAC)

UBAC 是对 RBAC 的补充模型,权限直接分配给用户,适用于少量用户的特殊授权场景:

1. 绕过角色直接授权:管理员可以将库表权限直接授予指定用户,无需为其创建或绑定角色。

2. 权限合并生效:当用户同时拥有角色权限和直接授予的 UBAC 权限时,最终权限取两者并集。

3. 独立回收:回收用户角色不影响其 UBAC 权限,可单独回收或调整。

三、用户

详情请参见 用户管理。

四、角色

详情请参见 角色管理。

五、Catalog-Schema-Table(View) 三级权限管理机制

TCHouse-X 采用 Catalog-Schema-Table(View) 三级访问控制模型来组织数据权限。这种结构不仅提供了清晰的数据资产视图,更实现了基于角色的分级权限管理。所有权限均自上而下继承:Catalog 级别的授权将直接作用于其包含的所有 Schema 和 Table。

注意:说明:

注意:TCHouse-X 当前版本仅支持默认 Catalog,因此在权限配置界面无需手动选择。

六、Catalog(数据目录)

TCHouse-X 实例中数据的集合。其权限类型有:

权限 权限分类 权限解释
ALL_PRIVILEGES 数据目录权限 选中的 Catalog 及以下所有库、表的 ALL 权限
CreateSchema 数据目录权限 在选中 Catalog 下创建 Schema
UseSchema 数据目录下任意库权限 使用选中 Catalog 下任意 Schema
AlterSchema 数据目录下任意库权限 修改选中 Catalog 下任意 Schema
DropSchema 数据目录下任意库权限 移除选中 Catalog 下任意 Schema
CreateTable 数据目录下任意库权限 在选中 Catalog 下任意 Schema 下创建表
SelectTable 数据目录下任意表权限 读取选中 Catalog 下任意表的数据
AlterTable 数据目录下任意表权限 修改选中 Catalog 下任意表的元数据
DropTable 数据目录下任意表权限 移除选中 Catalog 下任意表
InsertTable 数据目录下任意表权限 向选中 Catalog 下任意表插入数据
DeleteTable 数据目录下任意表权限 从选中 Catalog 下任意表删除数据

七、Schema(数据库)

Schema 是 TCHouse-X 实例中的逻辑分组,相当于传统数据库中的“数据库(Database)”或“模式(Schema)”。它用于将相关的表、视图、函数等对象组织在一起。其权限类型有:

权限 权限分类 权限解释
ALL_PRIVILEGES 数据库权限 选中的 Schema 及以下所有表的 ALL 权限
UseSchema 数据库权限 使用选中 Schema
AlterSchema 数据库权限 修改选中 Schema 的元数据
DropSchema 数据库权限 移除选中 Schema
CreateTable 数据库权限 在选中 Schema 下创建表
SelectTable 数据库下任意表权限 读取选中 Schema 下任意表的数据
AlterTable 数据库下任意表权限 修改选中 Schema 下任意表的元数据
DropTable 数据库下任意表权限 移除选中 Schema 下任意表
InsertTable 数据库下任意表权限 向选中 Schema 下任意表插入数据
DeleteTable 数据库下任意表权限 从选中 Schema 下任意表删除数据

八、Table (数据表)

实际存储数据的最小单位(表),其作用有:

·实际存储数据。

·权限控制: 提供最细粒度的权限控制。可以对单个表授予精确的权限,其权限类型有:

权限 权限分类 权限解释
ALL_PRIVILEGES 表权限 选中 Table/View 的 ALL 权限
SelectTable 表权限 读取选中 Table/View 的数据
AlterTable 表权限 修改选中 Table/View 元数据
DropTable 表权限 移除选中 Table/View
InsertTable 表权限 向选中 Table 插入数据
DeleteTable 表权限 从选中 Table 删除数据

九、View (数据表)

基于表定义的查询结果(视图),其作用有:

·呈现数据。

·权限控制: 提供最细粒度的权限控制。可以对视图授予精确的权限,其权限类型有:

权限 权限分类 权限解释
ALL_PRIVILEGES 视图权限 选中 View 的 ALL 权限
SelectView 视图权限 读取选中 View 的数据
AlterView 视图权限 修改选中 View 元数据
DropTable 视图权限 移除选中 View
赞 (0)
上一篇 5天前
下一篇 5天前