LDAP简述及统一认证说明

Posted Flytiger1220

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LDAP简述及统一认证说明相关的知识,希望对你有一定的参考价值。

LDAP简述

LDAP相关概念

1)轻型目录访问协议(Lightweight Directory Access Protocol),LDAP是一种通信协议,LDAP能够支持TCP/IP。协议就是标准,在这套标准之下,AD(Active Directory)是微软实现的一套产品。可以把AD理解成是个数据库,也有很多人直接把LDAP说成是数据库(一个树形结构的数据库)。LDAP也有服务端和客户端,服务端用来存放资源,客户端进行相应的控制和操作。
2)LDAP的存储是树形结构的,数据存储在叶子节点上,因此LDAP的应用中主要使用其进行查询,插入删除等操作效率会相对较低。看看下面的样例:

LDAP中定义一个记录的位置:树(dc=main)分支(ou=o1,ou=oo1,ou=ooo1)节点(cn=node)

dn: cn=node,ou=o1,ou=oo1,ou=ooo1,dc=main

3)ou会有多个值,从树根到达node的位置,可能要经过好几个分支,所以ou可能有多个值,关于dn后面一串,分别是cn,ou,dc;中间使用逗号分隔。

LDAP树形数据库各描述符说明:
dn:一条记录的详细位置
dc:一条记录所属区域(树)
ou:一条记录所属组织(分支)
cn/uid:一条记录的名字/id(节点)
LDAP:目录树的最顶部就是根,就是所谓的“基准DN”

LDAP的应用场景

由于LDAP使用树形结构存储数据,因此查询的效率更高(参考关系型数据库中的索引原理:B树/B+树),因此在某些特定的场景中,使用这种树形结构进行存储更有优势,例如:需要存储大量的静态数据,数据相对稳定,无需进行频繁的修改,能够进行快速查找。LDAP与传统的关系型数据库相比,结构上的特点决定了其能承担需要速检索的应用场景,比如域验证。

LDAP常见目录树结构设计

LDAP的目录树根一般定义为国家(c=CN)或者域名(dc=com),其次往往定义一个或者多个组织(organazation,o)或组织单元(organazation,ou),一个组织单元可以包含成员、设备(计算机/打印机)等相关信息。

例如:uid=babs,ou=People,dc=example,dc=com

假设域名为foobar.com,这个域名就能转化为这个dn:dc=foobar,dc=com

如果foobar.com与wocket.com和gizmo.com合并,则以上的目录结构就可以适应这种突然的变化,而无需重新规划

初始目录结构设置的越好,后续扩展需要改动的就越少,通常情况分布均匀层次较浅的结构工作的最好

LDAP做统一认证

统一身份认证改变了原有不同应用各自分散的认证策略,使需要进行身份认证的应用都通过LDAP进行统一认证,在统一认证之后,用户的所有信息都存储在AD Server中,终端用户在需要使用内部服务的时候,则需要通过AD服务器的认证。

下图所展示的结构是LDAP进行统一身份认证的一般配置情况,LDAP client是各种需要进行身份认证的软件,例如Apache、Proftpd、Samba等,LDAP Server是实现LDAP的后端服务,例如OpenLDAP等。OpenLDAP只是LDAP协议的一种实现形式,数据则是会存储在后台数据库中,LDAP Server和DataStorage很多时候会被部署在同一台服务器上,虽然后台数据库的形式可以是多样的,但是根据LDAP协议中的约定,数据的实际逻辑结构依然会是树状的结构。

以上是关于LDAP简述及统一认证说明的主要内容,如果未能解决你的问题,请参考以下文章

ldap统一认证架构方案及实现指南

LDAP-轻量级目录访问协议(统一认证)

Deepin系统基于LDAP统一认证

LDAP统一账户认证系统的密码自助修改

CAS统一登录认证:与ldap连接

metersphere集成LDAP实现统一身份认证