最近研究idsvr4时,发现第三方授权认证可以使用authorization code模式,也有支持LDAP协议的方式,所以看了一下idsvr4的ldap的扩展,发现需要
部署一个ldap server才能使用,所以研究了一下openLDAP
1.LDAP是啥?
就是一个协议,规范,具体可以自行百度,因为介绍的文章太多了
2.干啥用呢
这么说吧,每个公司都有自己集中账号管理的地方,比如用户中心,但是用户中心很难跟第三方系统实现对接,像上面说的,我可以在认证中心里面集成authorization code模式绕一下,也可以
但是本文主要是实现openLDAP方式,实现外部系统的账号统一管控
3.实践
看了很多文章,都是要linux系统下一步步安装,我自己本机搭建了windows docker,所以我使用docker去部署
而且使用的docker-compose的方式
使用的yml文件如下
version: "3" services: openldap: image: osixia/openldap container_name: openldap restart: always ports: - ‘389:389‘ volumes: - /data/ahi/openldap/data:/var/lib/ldap - /data/ahi/openldap/ldap.d:/etc/ldap/slapd.d environment: - LDAP_TLS=false - LDAP_ORGANISATION=aa.bbb - LDAP_DOMAIN=aa.bbb - LDAP_ADMIN_PASSWORD=123456 - LDAP_CONFIG_PASSWORD=123456
在该文件夹下,使用powershell执行docker-compose -f ./openldap.yml up -d
然后这个服务就可以运行了,但是需要个admin去管理,可以选择使用phpLDAPAdmin(b/s系统,需要部署),也可以使用LDAP Admin(windows软件,不用部署)
创建连接
然后双击进去,创建OU以及user即可