[ClickHouse] 管理用户权限的两种方案

1. 序言

一般情况下, 可以通过配置文件/etc/clickhouse-server/users.xml来设置用户权限, 比如设置用户的资源占用/参数取值/对某个数据库的读写权限等. 但是对于一些更精细的权限管理, 使用配置文件很难实现或者实现起来特别麻烦, 比如考虑这样一个应用场景: 有两个数据库 A 和 B, 用户 test 对数据库 A 只有读取权限, 对数据库 B 有读写和修改权限. 对于这种情况, 可以使用 ClickHouse 给出的另一种更灵活的权限管理方案SQL-driven workflow(SQL驱动的工作流)来解决, 这也是 ClickHouse 官方比较推荐的方案, 本文主要介绍这种方案的使用方法.

2. 通过配置文件管理用户权限

详情参考下面这篇讲解非常详细的文章
ClickHouse学习系列之二【用户权限管理】

3. 通过 SQL 驱动方式管理用户权限

SQL 驱动方式简单来说就是通过 SQL 语句(主要是 GRANT/REVOKE 命令)来为用户赋予或撤销权限, 直接使用 SQL 将某个权限赋予某个用户是可行的, 问题是当涉及到的权限和用户比较多时, 这种做法会很不方便, 于是 ClickHouse 中定义了另外一个概念角色(role)
角色可以理解为权限的集合体, 先将一系列权限赋予某个角色, 然后将角色赋予某个用户(通过 GRANT 命令), 这样就可以将角色携带的权限赋予用户. 在管理权限时, 可以将若干个权限赋予某个角色, 也可以将若干个

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值