最近业务上需要和 LDAP 对接,在想 LDAP 是个啥?
赶紧查查资料,补齐一下我的知识盲区
LDAP 是什么?
LDAP 就是一个 轻量目录访问协议, 全称是 (Lightweight Directory Access Protocol),是基于X.500标准的轻量级目录访问协议
我们就可以理解成,他就是一个目录数据库,读的性能超级高,写性能不如人意,所以我们基本上都是查询它居多
LDAP 的产品有哪些?
- OpenLDAP
- MiscroSoft 的Active Directory
- IBM Security Directory
- sun 公司的 ldap
- 其他的 ldap
相信只要熟悉了 LDAP 的基本协议,对接上述其他公司的产品应该都是信手拈来了
LDAP 必须知道的基本概念?
上面我们知道基于 LDAP 协议做出来的产品有很多,我们以 Active Directory 为例 统一来看看 LDAP 我们需要知道哪些基本概念吧
Active Directory 见名知意,就是活动目录的意思
其中的重要概念有:
DC Domain Controller
就是域控制器,是非常核心的
其实他就是一台 AD 里的服务器,安装了活动目录的 PC 而已,所有域用户的信息都会存在这个 Domain Controller 里面,他就是整个活动目录的服务器
当你本地的 PC 装上 Active Directory 之后,那么就没有本地用户了,就会全部自动变成域用户
成员计算机
跟域控制器建立了信任并加入到域里面的计算机 , 每台计算机加入到域的时候会生成信任密钥,类似于我们服务端常常使用 token 一样
并且每隔一段时间,访问其他成员的计算机是需要通过 Domain Controller 来拿到 token 来实现的,这样才能域计算机之间互相访问
例如,我是一个 Domain Controller , 我给计算机 A 发了一个 token, 那么我就会把这个计算机 A 加入到我的域当中来
SID Security id
用户和计算机都有一个 sid ,这是一个唯一标识
DNS 服务
搭建活动目录的时候还必须要设置一个 DNS 服务,因为我们访问活动目录的时候,一般是不会使用 ip 去访问的,而是使用 域名去访问
这个是需要在本地配置 DNS 的,一般配置的 DNS 服务 会和 活动目录的服务器放在一起
我们可以来看看我自己搭建的一个 ldap 服务器的例子:
DN Distinguished Name 分辨名
是一个唯一的标识,可以通过这个名字来找到一条记录,标识从树的根部到这个节点的路径,DN 也标识这个节点在树中的详细位置
例如这个是简单搭建的 ldap 服务器,图中的 ou=people
, 我们可以看到 最上方有一个 DN 内容是 ou=people,dc=ldapdomain,dc=com
这就是一个 DN
DN 就类似于数据库的主键,标识一个唯一的项,这是不能重复的
RDN Reletive Distinguished Name
我们看到的 ou=people,dc=ldapdomain,dc=com
包含了 3 个 RDN,里面的每一个键值对是一个 RDN
DC domain component
上述 dc=ldapdomain,dc=com
这里的 dc ,可不是域名控制器的意思,而是域名组成的意思
例如这上面的一句话,就表示 dc=ldapdomain,dc=com
组成 ldapdomain.com
C country
代表国家
O Organization
代表组织,代表公司
OU Organization Unit
代表组织单元,代表部门
例如我这里的 ou=people,ou=group ,我们也可以理解 ou 代表分公司
这个 OU 下面是可以包含很多内容的,例如 计算机,用户,打印机,安全策略,其他组织等等
CN Common Name
表示一条记录的名字,图中 uid 也是表示一条记录的名字,他们是可以共存的
objectClass 对象类
objectClass 会预定义一些类,这个类上面还可以规定一些规则,例如定义一些标签字段等等
DIT Directory Information Tree
目录信息树的意思,看我们自己的服务器,上述截图的位置就是一个 目录信息树
可视化的 LDAP 客户端
目前我开始使用的 2 款 LDAP可视化工具是:
- LdapAdmin
- LdapBrowser
我们一般使用 ldap 协议做对接,用的最多的就是 ldapsearch 命令,更多的是查,查的越多,就越能体现 ldap 的高性能
慢慢的摸索,把它吃掉
欢迎点赞,关注,收藏
朋友们,你的支持和鼓励,是我坚持分享,提高质量的动力
好了,本次就到这里
技术是开放的,我们的心态,更应是开放的。拥抱变化,向阳而生,努力向前行。
我是阿兵云原生,欢迎点赞关注收藏,下次见~