LDAP 基本概念

一.应用场景数据库

今天,架构师在设计应用时经常会引用一些外部的信息,好比用户信息、组织架构、资源配置等。这些信息每每是结构化的。表现了现实世界中的组织规则,且内容相对稳定。架构

一个最多见的例子就是企业员工信息管理。企业在正常运营过程当中,部门机构和人员岗位都相对稳定,每一个员工的基本信息也是相对稳定的。这些信息组织起来后,能够被其余的各类IT系统共用。好比人事系统、财务系统、邮件办公以及各类处理系统都引用同一份员工数据。若是用来验证用户,则能够避免每套IT系统各自维护用户密码,轻松实现单点登陆。ide


轻量级目录访问协议(Lightweight Directory Access Protocol,LDAP)就是这样一种国际标准。本质上,LDAP是基于TCP/IP的应用层协议,它不只提供了数据的组织标准,也提供了数据的访问标准。基于LDAP的查询服务很是相似于查字典或是电话黄页,因为信息室以目录方式组织,因此称为 目录服务。那么信息存放在目录中和存放在数据库中什么区别?简单。post


员工信息应该如何组织,有应该如何对外提供服务呢?ui

最容易想到的是设计一种员工表,将员工信息存放在数据库中。若是须要在体现人员部门机构,必然要把部门归入数据库。机构是有层次的。编码

使用LDAP来管理员工信息则彻底不一样。首先LDAP对组织、人员的完整性、全面性的定义。spa

好比,一我的(person)必须有通用名(commonName,cn)和姓(surName,sn),同时能够有电话(telephoneNumber)、口令(userPassword)、描述(description)、参阅(seeAlso)等信息。设计


2、LDAP基本元素对象

1.目录(Directory)继承


2.目录树(DIT)

组织目录树,会参考x.500中对属性的相关约定。好比

c表明国家country、o表明机构、公司、企业、单位等organization、ou表明部门organizationUnit

cn表明姓名commonName、sn表明姓氏surName

                          c=cn

                         o=ibm

ou=dev            ou=sales        ot=finance

    |                        |

cn=tom            cn=jerry


3.条目(Entry)

每一个条目都是目录管理的对象。是LDAP的最基本的颗粒,就想字典里面的词条。或是数据库里面的记录。每一个条目都由一个惟一的标志名(Distinguished Name,DN),好比 cn=tom,ou=dev,o=ibm,c=cn.DN在语法上,由多个相对的标志名(Relative Distinguished Name,RDN)组成。它们之间以逗号隔开。

4. 属性(Attribute)

每一个条目均可以有不少属性,好比常见的人员条目有姓名、地址、电话、职位等

5.属性类型(Attribute Type)

6.对象类(ObjectClass)

对象类是属性的集合。LDAP预想对不少人员组织机构中常见的对象,并将其封装成对象类。好比人员(person)还有姓(sn)、名(cn)、电话(telephoneNumber)、密码(userPassword)等属性。单位员工(orgnizationPerson)是人员(person)的继承类,除了上述的属性以外,还含有职务(title)、邮政编码(postalCode)、通讯地址(postalAddress)等属性

对象类分为三种类型:结构类型(Structual)、抽象类型(Abstract)、辅助类型(Auxiliary)

例如

                          top

                        Person                                    ePerson

orgnizationPerson            residentialPerson

inetOrgPerson

相关文章
相关标签/搜索