You need to enable JavaScript to run this app.
导航

资源权限管理

最近更新时间2024.04.23 17:13:41

首次发布时间2023.08.22 15:50:14

ByteHouse 中所有可以执行的操作都定义了相关权限。
ByteHouse 对于角色的权限包括以下两种:

  • 特定于资源的授权:创建表(与数据库相关)、插入新数据(与表相关)和运行计算组(与仓库相关)等。
  • 非特定于资源的权限:如创建数据库(数据库是帐户级资源),查看计费状态 等。

对象级授权

例如,为了使新创建的角色能够执行查询。 您需要授予以下对象的权限:

  • 计算组
  • 数据库

计算组权限

在计算组页面,点击需要设置的计算组。
子用户可以使用和查看该账户下的计算组,但是如果需要启动或者停止计算组,则需要授予操作权限。
图片

数据库权限

对于对象级别的权限,您需要找到目标资源并通过其自身的权限管理面板来管理其权限。
图片
您可以向以前没有权限的角色授予权限,也可以编辑已授予某些权限的角色的权限。
勾选“重新授予其他人”选项时,被授予权限的角色可以向其他角色重新授予相同的权限。
图片

表权限

与数据库权限相似,点击下图中的按钮设置权限。
图片
向表添加新权限
图片

列级权限

列级访问控制允许用户为列配置权限,保障只有特定用户可以访问。该功能对于限制访问敏感列(如个人身份信息PII)尤其有用。
要提供列级权限,首先需要向用户提供相关的表级权限,如下所示:

列权限

所需表权限

SELECT

SELECT

INSERT

INSERT

ALTER

ALTER

DROP

ALTER

为特定列授予权限

您可以指定应由特定角色访问的列。如下图,“ demo_role ”被授予 SELECTdemo_col_one 的权限。
图片
一旦“ demo_role ”被授予以上权限,“ demo_role ”将能只能从 demo_col_one 这一列进行查询操作。

SELECT demo_col_one FROM demo_db.demo_table -- success!
SELECT demo_col_one, demo_col_two FROM demo_db.demo_table -- denied!

要授予用户更多列的额外权限,只需勾选表格中相应的复选框:
图片
例如,通过在 demo_col_two 上添加 SELECT 权限,“ demo_role ”现在也可以从 demo_col_two 执行查询操作:

SELECT demo_col_one FROM demo_db.demo_table -- okay!
SELECT demo_col_one, demo_col_two FROM demo_db.demo_table -- access denied!

为所有列授予权限

如要授予特定用户权限,并在包括未来创建的所有列生效,只需点击相应的列标题即可。
图片
此权限应授予可以访问所有列(包括未来可能添加的敏感信息列)的角色。由于开启了 SELECT 权限,“ demo_role ”现在可以使用 SELECT * 来查看所有列的数据。

SELECT demo_col_one from demo_db.demo_table -- okay!
SELECT demo_col_one, demo_col_two from demo_db.demo_table -- okay!
SELECT * from demo_db.demo_table -- okay!

非对象级权限

您可以从角色管理页面授予或撤销非对象级权限。
图片