一、什么是LDAP
定义:基于X.500标准的轻量级目录访问协议,目录是一个为查询、浏览和搜索而优化的数据库,呈树形结构
特点:读性能优异,写性能差,没有事务处理、回滚等复杂功能,不适合存储频繁修改的数据
LDAP目录服务器是由目录数据库和一套访问协议组成的系统
优势:开放的Internet标准,支持跨平台的Internet协议,在业界得到广泛认可,市场上很多产品已经加入了对LDAP的支持,大幅降低了重复开发和对接的成本
二、主要产品
厂商 | 产品 | 介绍 |
---|---|---|
SUN | SUNONE Directory Server | 基于文本数据库的存储,速度快 |
IBM | IBM Directory Server | 基于DB2 的的数据库,速度一般 |
Novell | Novell Directory Server | 基于文本数据库的存储,速度快, 不常用到 |
Microsoft | Microsoft Active Directory | 基于WINDOWS系统用户,对大数据量处理速度一般,但维护容易,生态圈大,管理相对简单 |
Opensource | Opensource | OpenLDAP 开源的项目,速度很快,但是非主流应用 |
三、LDAP基本模型
1、目录树
- 目录树:在一个目录服务系统中,整个目录信息集可以表示为一个目录信息树,树中的每个节点是一个条目。
-
- 条目:每个条目就是一条记录,每个条目有自己的唯一可区别的名称(DN)。
- 对象类:与某个实体类型对应的一组属性,对象类是可以继承的,这样父类的必须属性也会被继承下来。
- 属性:描述条目的某个方面的信息,一个属性由一个属性类型和一个或多个属性值组成,属性有必须属性和非必须属性
2、几个关键字
关键字 英文全称 含义 dc Domain Component 域名的部分,其格式是将完整的域名分成几部分,如域名为example.com变成dc=example,dc=com(一条记录的所属位置) uid User Id 用户ID songtao.xu(一条记录的ID) ou Organization Unit 组织单位,组织单位可以包含其他各种对象(包括其他组织单元),如“oa组”(一条记录的所属组织) cn Common Name 公共名称,如“Thomas Johansson”(一条记录的名称) sn Surname 姓,如“许” dn Distinguished Name “uid=songtao.xu,ou=oa组,dc=example,dc=com”,一条记录的位置(唯一) rdn Relative dn 相对辨别名,类似于文件系统中的相对路径,它是与目录树结构无关的部分,如“uid=tom”或“cn= Thomas Johansson” 3、基本模型
- 信息模型:在LDAP中信息以树状形式组织,基本数据单元是条目,条目由属性构成,属性中存储属性值
- 命名模型:也称条目定位方式,在LDAP中每个条目均有自己的DN,DN是该条目在整个树中的唯一名称标识,文件系统中,带路径的文件名就是DN
- 功能模型:LDAP有4类10种操作,查询类操作,如搜索、比较,更新类操作,如添加条目、删除条目、修改条目、修改条目名,认证类操作,如绑定、解绑定,其它操作,如放弃和扩展操作。除了扩展操作,剩余均是LDAP的标准操作
- 安全模型:LDAP中的安全模型通过身份认证、安全通道和访问控制来实现
4、使用方法
改变原有的认证策略,使需要认证的软件均通过LDAP进行认证,认证后信息存储在AD Server中,终端用户在使用公司内部服务时,都需要通过AD服务器的认证 -
访问流程:
- 连接到LDAP服务器
- 绑定到LDAP服务器
- 在LDAP服务器上执行所需的任何操作
- 释放LDAP服务器的连接
微软AD是目录数据库的实现方式,LDAP是为访问Active Directory设计的协议,AD是LADP的一个应用实例
端口:389、636(ssl)