ClickHouse之访问权限控制 clickhouse


ClickHouse不像MySQL那样,直接创建用户,而是需要在配置文件里面添加用户,一个简单的例子如下:


--- 这段的意思就是添加一个dba用户,只读权限,允许访问的数据库是default。

<dba>
    <password_sha256_hex>60cd41aedc4e47e8883682b416109e7b7e345e15decc63c2c98ecdab5e8e053a</password_sha256_hex>
    <networks incl="networks" />
    <profile>readonly</profile>
    <quota>default</quota>
    <allow_databases>
        <database>default</database>
    </allow_databases>
</dba>


--- 来源ip是不限制。这个是配置在/etc/metrika.xml中的。这个配置只是引用而已。

<networks>
   <ip>::/0</ip>
</networks>


默认的配置文件路径是:/etc/clickhouse-server

其中有config.xml,users.xml,一个是服务器相关配置,一个是用户权限的配置。下面看看users.xml。这里面分几部分。

1. 用户名,用户密码,访问来源地址

2. 资源限制,和greenplum有点像。

3. 配置设置,这其中有用户是否只读。ck目前只有select和insert。所以权限也比较简单。

密码需要特殊说明,如果不写,那么就是空密码,也可以写明文密码,也可以写密文,可以用如下命令生成密文密码:

[root@db_server_yayun_03 ~]# PASSWORD=$(base64 < /dev/urandom | head -c8); echo "$PASSWORD"; echo -n "$PASSWORD" | sha256sum | tr -d '-'
AwBtorOK
4e588aea92dc77d0960505f6ff5e843eab388c28f1c85fae9df917f89ebb0ed6

其中AwBtorOK就是用户的密码,4e588aea92dc77d0960505f6ff5e843eab388c28f1c85fae9df917f89ebb0ed6就是密文,需要写在配置文件里面。


签名:这个人很懒,什么也没有留下!
最新回复 (0)
返回