代码改变世界

ClickHouse 创建管理员用户

  abce  阅读(220)  评论(0编辑  收藏  举报

在安装/重新部署时,ClickHouse 会创建一个名为 "default" 的用户。该用户可以不受限制地访问群集中的数据,我们还可以在 users.xml 文件中提供访问管理权限(默认情况下并未打开)。

与可能需要管理员权限的多人共享默认用户的凭据并不是一个好主意。最佳做法是创建一个具有“管理员”权限的角色,并将该角色授予指定为“管理员 ”的用户。让我们看看创建管理员角色并将其分配给用户的步骤。

 

1.开启 SQL 模式

users.xml 文件中,在 <default> 这一节做以下配置,开启 SQL 模式:

1
2
3
4
5
6
7
8
9
<!-- User can create other users and grant rights to them. -->
<access_management>1</access_management>
 
<!-- User can manipulate named collections. -->
<named_collection_control>1</named_collection_control>
 
 
<show_named_collections>1</show_named_collections>
<show_named_collections_secrets>1</show_named_collections_secrets>

要想创建一个具有管理员级别权限的角色,需要开启以上配置。

 

default 用户是全新安装时创建的唯一用户,默认情况下也是用于节点间通信的账户。既然 default 账户用于节点间通信,在生产过程中,建议在使用 SQL 模式的管理员用户通过使用<secret>、群集凭据和/或节点间 HTTP 和传输协议凭据设置了节点间通信后,禁用该用户。

 

设置后需要重启 clickhouse。

 

2.创建管理员角色

1
2
create role 'admin';
grant all on *.* to admin with grant option;

 

3.创建用户并授予 admin 角色

1
2
create user test identified with plaintext_password by 'test';
grant admin to test;
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2020-11-13 PostgreSQL中的collations
点击右上角即可分享
微信分享提示