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里创建好的角色
角色权限控制参考官网的语法
配置好后重启clickhouse,即可使用对应的用户
这里改一下用户名和密码试试,也是正常登陆
增加用户test,登陆正常
后面学习后再做补充