LDAP基础
一.LDAP的4中基本模型
LDAP的体系结构由4中基本模型组成:信息模型描述LDAP的信息表达方式;命名模型描述LDAP的数据如何组织;功能模型描述LDAP的数据操作访问方式;安全模型描述LDAP的安全机制。
1.信息模型
LDAP信息模型定义能够在目录中存储的数据类型和基本的信息单位。
2.命名模型
LDAP中的命名模型,即LDAP中的条目定位方式。在LDAP中每个条目均有自己的DN(Distinguished Name,标识名)和RDN(Relative Distinguished Name,相对标识名)。DN是该条目在整个数中唯一名称标识。RDN是条目在父节点下唯一名称标识,如同文件系统中,带路径的文件名就是DN,文件名就是RDN.
3.功能模型
LDAP功能模型说明了能够使用LDAP协议对目录执行某些操作。在LDAP中共有4类操作(共10种):
(1)查询类操作,如搜索,比较;
(2)更新类操作,如添加条目,删除条目,修改条目和修改条目名;
(3)认证类操作,如绑定,解绑定;
(4)其它操作,如放弃和扩展操作。
4.安全模型
LDAP的安全模型主要是基于绑定操作的,绑定操作的不同使得安全机制有所不同。3种:
(1)无认证
(2)基本认证:当使用LDAP的基本安全认证时,客户进程通过网络向服务进程发送一个分辨名(DN)和口令来标识自己。服务进程检查客户进程发送的分辨名(DN)和密码是否与目录中储存的分辨名(DN)和密码相匹配,如果匹配则认为通过了认证。
(3)SASL认证:即LDAP提供的在SSL和TLS安全通道基础上进行的身份认证,包括数字证书的认证。
二.LDAP存储结构
一棵目录信息数由若干条目(Entry)组成,每个条目有惟一的标识名DN,一个条目是一个对象,每个条目由多个“属性(Attribute)”组成,每个属性由一个类型和一个到多个值组成,每个属性可以对应一个或多个“值(Value)”。
三.LDAP的基本概念
目录数据库是以目录信息数(Directory Information Tree,DIT)为存储方式的数型存储结构。
*常用关键字及其对应的含义
【dc】-- Domain Component-- 域名的部分,其格式是将完整的域名分成几部分,如域名为example.com变成dc=example,dc=com
【uid】-- User ID-- 用户ID,如“tom”
【ou】-- Organization Unit-- 组织单位,类似于Linux文件系统中的子目录,是一个容器对象,组织单位可以包含其他各种对象(包括其他组织单元),如“market”
【sn】-- Surname-- 姓,如“Johansson”
【dn】-- Distinguished Name-- 唯一辨别名,类似于Linux文件系统中的绝对路径,每个对象都有一个唯一的名称,如“uid=tom,ou=market,dc=example,dc=com”,在一个目录树中DN总是唯一的
【rdn】-- Relative dn-- 相对辨别名,类似于文件系统中的相对路径,它是与目录树结构无关的部分,如“uid=ton”或“cn=Thomas Johansson”
【c】-- Country -- 国家,如“CN”或“US”等
【o】-- Organization -- 组织名,如“Example,Inc.”
四.规划目录树
要实现LDAP,首先要规划目录树,一个灵活且易于扩展的目录树可以减少后期维护目录树的工作量。
通过例子说明。假设有一个名为Example的公司(DNS名为example.com),其组织结构如下:
(1)首先要为目录树建立一个“根(Root)”。根是目录树的最顶层,后面建立的所有对象都是基于这个根的,所以它也称为基准DN。它可以有3种格式表示。
*使用X.500标准格式:o=example,c=CN。
*直接使用公司的DNS域名:o=example.com。
*使用公司的DNS域名的不同部分:dc=example,dc=com。
第3种格式更利于以后目录树的扩展,如将来Example公司合并了abc公司,之需要将dc=com最为根即可,不需要修改原有的结构。
(2)公司中的部门作为OU,如“ou=market”。OU是目录树的分枝节点,下面可以包含其他分枝节点或叶子节点。
(3)用户是目录树的最底层(即叶子节点),可以根据用户所在的部门将其放置在不同的OU中,使用uid或cn描述都可以,如“uid=tom”或“cn=Thomas Johansson”。
四.LDAP服务的应用领域
由于LDAP所具有的查询效率高,树状的信息管理模式,分布式的部署框架以及灵活而细腻的访问控制,是LDAP广泛地用于基础性,关键性信息(如用户信息,网络资源信息等)的管理。LDAP的应用主要涉及以下几种类型。
*信息安全类:数字证书管理,授权管理,单点登录。
*科学计算类:DCE(Distributed Computing Envirionment,分布式计算环境),UDDI(Universal Description,Discovery and Integration,统一描述,发现和集成协议)。
*网络资源管理类:MAIL系统,DNS系统,网络用户管理,电话号码薄。
*电子政务资源管理类:内网组织信息服务,电子政务目录体系,人口基础库,法人基础库。