- 2021-12-07
- 阅读()
- 来源:互联数据
LDAP服务器是什么?LDAP 是轻量级目录访问协议的简称(Lightweight Directory Access Protocol).用于访问目录服务。它是 X.500 目录访问协议的移植,但是简化了实现方法。看到目录服务器我的第一反应就是想到书的目录和检索功能,再就是图书馆的图书放置,进而想到yahoo的在一开始的网站导航功能。
一、什么是目录服务,已经LDAP是什么?
目录服务就是信息查询服务,实际上是一个数据库,在这个数据库里面存储了网络资源的信息,包括资源的位置、管理。数据信息采用的树状的层次结构存储。
含有目录数据库,提供给用户查询、使用信息的计算机就是目录服务器。X.500是一套目录服务标准,定义了一个机构在全局范围内共享名称和与名称相关联的数据。X.500采用层次结构,其中的管理域可以提供这些域内的用户和资源信息,并定义了强大的搜索功能,因此查询变得更简单。由于X.500目录服务协议过于复杂,因此开发了LDAP(轻量级的目录访问协议)。
LDAP目录存储和组织的基本数据结构称为条目,每个条目都有唯一的标识符,并有一些属性,就类似数据库中每一行代表一条数据,并且有一项是唯一标识。但是LDAP比数据库简单很多,并且常用于查询(也就是读取),写操作不常使用。
二、LDAP目录服务和数据库的区别:
1、目录查询操作比关系数据库有更高的效率,但是更新效率比关系数据库低
2、目录不支持关系数据库那样的复杂查询,比如两个表的连接。
3、 目录不支持多操作的事物完整性,没有方式确认一些操作是全部成功还是全部失败
4、目录能够更好和更灵活的支持子查询和匹配查询
5、 目录协议更适合应用于广域网,比如因特网或者大型公司的网络
6、目录的管理,配置,和调试比关系型数据库更简单
7、 在使用关系数据库之前,必须首先定义表结构(模式)才可以进行操作。而目录中所使用的模式是由 LDAP 定义好的一系列类组成的。对于目录中的每条记录中必须属于其中的一个类或者多个类。这些类定义了该记录中可以存储的信息。
8、 目录以对象的形式存储数据。信息被组织成树型结构。
9、目录服务支持分布式存储结构,容易实现数据的扩展,能满足大容量存储的要求。
10、ACL控制表对LDAP服务器中的数据进行安全管理。ACL是一种灵活方便的用户访问权限控制方法。LDAP 是一个标准的,开放的协议,具有平台无关性。不会像关系数据库之间互不兼容的问题。
三、ladp服务器四种模型:
1)信息模型:描述 LDAP 中信息的表达方式及数据的存储结构
LDAP 信息模型包含三部分 Entries Attributes Values (条目 属性 值)
Entry:Directry 中最基本的信息单元,Entry 中所包含的信息描述了现实世界中的一个真实的对象,在目录系统中它可以理解为,目录树中的一个节点 。在目录中添加一个 Entry 时,该 Entry 必须属于一个或多个 object class ,每一个 object class 规定了该 Entry 中必须要包含的属性,以及允许使用的属性。Entry 所属的类型由属性 objectclass 规定。每一个 Entry 都有一个 DN(distinguished name) 用于唯一的标志 Entry 在directory 中的位置。RDN: 是目录树中节点的相对分辨名。如 :People节点的DN:ou=People,dc=example,dc=com而该节点的 RDN:ou=People。
Attribute: 每个 Entry 都是由许多 Attribute 组成的。每一个属性(Attribute)描述的是对象的一个特征。
2)模型结构
命名模型:描述数据在LDAP目录中如何进行组织与区分
3)层次结构
第一个节点 DN 命名为:dn:dc=example,dc=com
第二个节点 DN 命名为:dn:ou=People,dc=example,dc=com
第三个节点 DN 命名为:dn:uid=bjensen,ou=people,dc=example,dc=com
我们说每一个 Entry 的 DN 是唯一的,就是因为这种数形结构决定了,从根节点到其它任何一个节点的路径是唯一的。
RDN:在 DN 中最左边的内容称为相对域名。如 ou=People,dc=example,dc=com其 RDN 为 ou=People对于共享同一个父节点的所有节点的 RDN 必须是唯一的。如果不属于同一个节点则节点的 RDN 可以相同。
功能模型:定义了LDAP中有关数据的操作方式,类似于关系型数据库SQL语句。