权限体系介绍

最近更新时间:2026-05-06 16:28:12

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

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

在 RBAC 模型中,权限不是直接分配给用户,而是通过角色间接分配:
1. 定义角色: 根据工作职能(例如:管理员、编辑、普通用户)创建不同的角色。
2. 分配权限给角色: 为每个角色分配其完成工作所需的权限集(例如:“dba”角色拥有“创建、修改库表”的权限)。
3. 分配角色给用户: 将一个或多个角色分配给用户。用户继承角色的所有权限。
4. 当用户的工作职责发生变化时,管理员只需要更改用户的角色分配,访问权限就会自动调整,无需逐一修改用户的上百条权限。

用户

详情请参见 用户管理

角色

详情请参见 角色管理

Catalog-Schema-Table 三级权限管理机制

TCHouse-X 采用 Catalog-Schema-Table 三级访问控制模型来组织数据权限。这种结构不仅提供了清晰的数据资产视图,更实现了基于角色的分级权限管理。所有权限均自上而下继承: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 删除数据