跳到主要内容

访问控制权限

Databend 采用基于角色的访问控制模型来保护您的数据。在 Databend 中,您可以通过将权限授予角色然后将角色分配给用户,或直接将权限授予用户,来控制用户可以对特定数据库对象(例如,数据库、表、视图、 Stage 或 UDF)执行哪些操作。授予用户的权限实际上决定了用户可以执行哪些操作。要了解有关管理用户和角色以及授予或撤销权限的可用命令,请参阅 链接

Databend 提供了一系列权限,允许您对数据库对象进行细粒度控制。Databend 权限可以分为以下类型:

所有权限

权限对象类型描述
ALL所有授予指定对象类型的所有权限。
ALTER全局, 数据库, 表, 视图修改数据库、表、用户或 UDF。
CREATE全局, 数据库, 表创建数据库、表或 UDF。
DELETE删除或截断表中的行。
DROP全局, 数据库, 表, 视图删除数据库、表、视图或 UDF。恢复已删除的表。
INSERT向表中插入行。
SELECT数据库, 表从表中选择行。显示或使用数据库。
UPDATE更新表中的行。
GRANT全局授予/撤销用户或角色的权限。
SUPER全局, 表终止查询。设置全局配置。优化表。分析表。操作 Stage(列出 Stage。创建、删除 Stage)、目录或共享。
USAGE全局“无权限”的同义词。
CREATE ROLE全局创建角色。
DROP ROLE全局删除角色。
CREATE USER全局创建 SQL 用户。
DROP USER全局删除 SQL 用户。
WRITEStage写入 Stage。
READStage读取 Stage。
USAGEUDF使用 UDF。

全局权限

权限描述
ALL授予指定对象类型的所有权限。
ALTER添加或删除表列。更改聚类键。重聚类表。
CREATEROLE创建角色。
DROPUSER删除用户。
CREATEUSER创建用户。
DROPROLE删除角色。
SUPER终止查询。设置或取消设置。操作 Stage、目录或共享。调用函数。COPY INTO Stage。
USAGE仅连接到 databend 查询。
CREATE创建 UDF(用户定义函数)。
DROP删除 UDF。
ALTER更改 UDF。更改 SQL 用户。

表权限

权限描述
ALL授予指定对象类型的所有权限。
ALTER添加或删除表列。更改聚类键。重聚类表。
CREATE创建表。
DELETE删除表中的行。截断表。
DROP删除或取消删除表。恢复被删除表的最近版本。
INSERT向表中插入行。COPY INTO 表。
SELECT从表中选择行。SHOW CREATE 表。DESCRIBE 表。
UPDATE更新表中的行。
SUPER优化或分析表。

视图权限

权限描述
ALL授予指定对象类型的所有权限
ALTER创建或删除视图。使用另一个 QUERY 更改现有视图。
DROP删除视图。

数据库权限

请注意,一旦您拥有对数据库的以下任何权限或对数据库中的表的任何权限,您就可以使用 USE DATABASE 命令来指定数据库。

权限描述
Alter重命名数据库。
CREATE创建数据库。
DROP删除或取消删除数据库。恢复已删除数据库的最新版本。
SELECTSHOW CREATE 数据库。
OWNERSHIP对数据库拥有完全控制权。特定对象上的这一权限一次只能由一个角色持有。

会话策略权限

权限描述
SUPER终止查询。设置或取消设置设置。
ALL授予指定对象类型的所有权限。

Stage 权限

权限描述
WRITE写入 Stage。例如,复制到 Stage,预签名上传或删除 Stage
READ读取 Stage。例如,列出 Stage,查询 Stage,从 Stage 复制到表,预签名下载
ALL授予指定对象类型的 READ, WRITE 权限。
OWNERSHIP对 Stage 拥有完全控制权。特定对象上一次只能有一个角色持有此权限。

注意:

不检查外部位置授权。

UDF 权限

权限描述
USAGE可以使用 UDF。例如,复制到 Stage,预签名上传
ALL授予指定对象类型的 READ, WRITE 权限。
OWNERSHIP对 UDF 拥有完全控制权。特定对象上一次只能有一个角色持有此权限。

注意:

  1. 如果 UDF 已经被常量折叠,不检查 UDF 授权。
  2. 如果 UDF 是插入中的一个值,不检查 UDF 授权。

目录权限

权限描述
SUPER显示创建目录。创建或删除目录。
ALL授予指定对象类型的所有权限。

共享权限

权限描述
SUPER创建、删除或描述一个共享。显示共享。
ALL授予指定对象类型的所有权限。
这篇文章对您有帮助吗?
Yes
No