什么是LDAP 什么是LDAP?
要想知道一个概念,最简单的办法就是wikipedia,当然也可以百科。
LDAP全称是轻型目录访问协议(Lightweight Directory Access Protocol)是一个开放的,中立的,工业标准的应用协议,通过IP协议提供访问控制和维护分布式信息的目录信息。
简单理解起来就是LADP包含一个数据库存储了树状结构组织数据,和一套协议,第三方可通过这套协议进行数据的查询与搜索的功能。
它用的协议基于X.500标准的轻量级目录访问协议,是一种开放Internet标准,LADP协议是跨平台的Internt协议,
总结来说LDAP是由目录数据库和一套访问协议组成的系统。
为什么用LDAP要知道为什么,我们就需要了解LDAP能解决什么问题?
众所周知,当一个公司规模之后,会有无数的系统进行工作,如果每一个系统都需要注册自己的用户名,每一个系统的用户名与密码可能都不一样。对个人来说就是一件折腾的事情,从公司的IT安全角度来说更是麻烦。
所以需要统一认证,单点登录。
LDAP就是最适合在单点登录中使用的系统了。
因为LDAP是一个开放的,中立的,工业标准的应用协议,它支持跨平台,数据配置简单且功能单一,稳定性高且查询性能好,使用它做认证服务可降低重复开发和对接的成本。
LDAP 的基本数据模型LDAP 的基本数据模型就是一种树状的组织数据,但就是这些名称有点叫人哭笑不得。要了解LDAP,至少要了解以下概念。
LDAP的数据是树状结构, 所有条目(或者对象)都定义在树结构中。
条目下的树状结构称为目录信息树(DIT)。
一个完整的条目有唯一可识别的名称,我们叫之为区别名(DN)。
在DN的子节点下的一个单独节点或者路径,我们称之为RDU。
通常一个条目(或者对象)在存储在这两种类型对象中
容器(container):这种对象本身可以包含其他对象。 例如:root(目录树的根元素,它实际上并不存在),c(国家/地区),ou(组织单位)和dc(域)。 容器(container)与与文件系统中的目录相当。
(叶子节点)leaf:这种对象位于节点的末端,不能再包含其它对象。 例如person,InetOrgPerson,groupofNames。
每一个对象有包含一些属性,属性的值决定了该对象必须遵循的一些规则。
最后还需要记住LDAP里的简称
o:organization(组织-公司)
ou:organization unit(组织单元-部门)
c:countryName(国家)
dc:domainComponent(域名)
sn:suer name(真实名称)
cn:common name(常用名称)
例子: