LDAP部署
当我们的系统很多的时候,不希望每个系统都维护部门、人员信息和权限,特别是人员流动性比较大的团队。用户密码也难以管理,这个时候就需要一个统一的第三方登录系统,由于很多系统都支持ldap,我们团队就使用ldap作为统一认证中心。
一、docker部署

docker run \
-p 389:389 \
-p 636:636 \
--name ldap_server \
--network bridge \
--hostname openldap-host \
--env LDAP_ORGANISATION="example" \
--env LDAP_DOMAIN="example.com" \
--env LDAP_ADMIN_PASSWORD="123456" \
--detach osixia/openldap

其中 -p 389:389 \ TCP/IP访问端口,-p 636:636 \ SSL连接端口。
–name ldap_server 容器名称为ldap_server
–network bridge 连接默认的bridge网络(docker0)
–hostname openldap-host 设置容器主机名称为 openldap-host
–env LDAP_ORGANISATION=“example” 配置LDAP组织名称
–env LDAP_DOMAIN=“example.com” 配置LDAP域名
–env LDAP_ADMIN_PASSWORD=“youedata520” 配置LDAP密码

二、部署管理界面

docker run \
-d \
--privileged \
-p 18080:80 \
--name ldap_phpadmin \
--env PHPLDAPADMIN_HTTPS=false \
--env PHPLDAPADMIN_LDAP_HOSTS=10.252.176.31 \
--detach osixia/phpldapadmin

-d 分离模式启动容器
–privileged 特权模式启动(使用该参数,container内的root拥有真正的root权限。
否则,container内的root只是外部的一个普通用户权限。)
–env PHPLDAPADMIN_HTTPS=false 禁用HTTPS
–env PHPLDAPADMIN_LDAP_HOSTS =10.252.176.31 配置openLDAP的IP或者域名,我的openLDAP是在本地10.252.176.31启动。

三、登录
在运行成功后访问运行成功的phpldapadmin,地址为:10.252.176.31:18080,如图所示
473ecef7-0579-40e4-bd48-b30edc90461c

点击登录,用户名为cn=admin,dc=example,dc=com 密码:123456

登录成功即安装完成

四、异常问题
如果提示Can’t contact LDAP server (-1) for user,检查下第一步是否启动,端口是否正确

其他配置可参考https://blog.csdn.net/weixin_42257195/article/details/102769495

用户角色可参考下图不同的组会在在其他系统有不同的权限

c8050678-29ac-4507-80ff-6f0a627769fd