1.这里我的ldap安装的是docker版的
docker安装的化就yum就好了
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl start docker
使用下面的命令验证sudo docker run hello-world
docker pull osixia/openldap:1.5.0
docker pull osixia/phpldapadmin:0.9.0#服务
docker run \-d -p 389:389 -p 636:636 \--name ldap-service \--restart=always \--hostname openldap \-v /opt/docker-data/slapd/database:/var/lib/ldap \--volume /opt/docker-data/slapd/config:/etc/ldap/slapd.d \--env LDAP_ORGANISATION="abc.com" \--env LDAP_DOMAIN="abc.com" \--env LDAP_BASE_DN="dc=abc,dc=com" \--env LDAP_ADMIN_PASSWORD=123456 \osixia/openldap:1.5.0#可视化界面
docker run \-d -p 8000:80 \ -p 6443:443 \--name ldapadmin \--link ldap-service:ldap \--env PHPLDAPADMIN_LDAP_HOSTS=ldap \--detach osixia/phpldapadmin:0.9.0
参考https://www.cnblogs.com/hahaha111122222/p/17865368.html
登陆上分别创建了对于的组和用户
在clickhouse的配置路径下创建了个data.xml
/wsdck/clickhouse/config/clickhouse-server/config.d
dn那部分根据自己的用户组的去设置吧
<yandex>
<ldap_servers><my_ldap_server><host>localhost</host><port>389</port><tls_require_cert>never</tls_require_cert><auth_dn_prefix>cn=</auth_dn_prefix><auth_dn_suffix>,cn=data,cn=technology,ou=depts,dc=abc,dc=com</auth_dn_suffix><enable_tls>no</enable_tls></my_ldap_server>
</ldap_servers>
<users><ldap_user_data><ldap_server>my_ldap_server</ldap_server><!-- <profile>default_profile</profile><quota>default</quota> --></ldap_user_data></users>
<!--
<profiles><default_profile><allow_ddl>1</allow_ddl><readonly>0</readonly></default_profile></profiles><quotas><default><interval><duration>3600</duration><queries>0</queries><errors>0</errors><result_rows>0</result_rows><read_rows>0</read_rows><execution_time>0</execution_time></interval></default>
</quotas> --><user_directories><ldap><server>my_ldap_server</server><roles><ldap_data_role /></roles></ldap>
</user_directories>
</yandex>
ldap_data_role 这个是预先在clickhouse里创建好的角色
角色权限控制参考官网的语法
CREATE ROLE | ClickHouse Docs
配置好后重启clickhouse,即可使用对应的用户
这里改一下用户名和密码试试,也是正常登陆
增加用户test,登陆正常
后面学习后再做补充