




已阅读5页,还剩45页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 目录是一种特殊的层次型数据库,它采用了树型的结构存储基于对象的数据。与关 系型数据库相比,目录服务没有事务处理等功能,它适用于存储读操作密度远大于写操 作密度的数据,一般用柬保存大量的基础性信息,比如用户信息、设各信息和历史数据 等。在基于联网的信息系统中,管理对象的基本信息是整个系统稳定工作的基础,但 它们往往分布在不同的子系统中,如何从这些不同的系统中获得统一的信息构建基础平 台,是大规模信息系统设计的重要方面。基于t c p 1 p 协议栈的轻量级目录访问协议 ( l i g h t w e i g h td i r e c t o r ya c c e s sp r o t o c o l ,简称l d a p ) ,具有跨平台的特性,是解决上述 问题的重要方法。 小文沦述了l i ) a p 的特性和优势,针对互联网环境,设计了l d a p 在大规模信息系统 。l j 的应刚框架,将用户信息、设备信息等统一管理,构建应用程序丌发的基础平台,比 如邮件系统、白页服务、地理信息系统等都可以基于目录服务,从而提供一个一体化的信 息系统。论述内容包括命名空问、信息模型、数据模式、目录分布、数据复制功能改进 和应用程序丌发等方面给出了一个分布式目录服务设计丌发的比较完整的方法,包括 平台设计、目录信息树设计、数据模式设计、安全策略设计、命名空间划分、高可用性 实现等, :且利用上述方法设计实现了“辽河油阳综合信息网分向式目录服务系统”。此 外还讨论了在不同环境下l d a p 应用程序的丌发技术。 本文采用的分确】式环境下的大型信息系统中部署目录服务的方法,通过实际应用证 明该方法是行之有效的。对各类企事业单位、政府机关和其他大型机构的目录服务应j e l 均有定的参考价值。 关键词:信息系统;目录服务;分布式目录服务;轻量级目录访问协议 a b s t r a c t ad i r e c t o r yc a nb er e g a r d e da sak i n do fd a t a b a s ef o ras p e c i a lp u r p o s ed i f f e r e n tf r o m c o m m o nu s e dr a t i o n a ld a t a b a s e s i ts t o r e sd a t ai i k eat r e et h ed a t ai oad i r e c t o r yi so b j e c t o r i e n t a t e da n dc a l lb es e a r c h e dw i t hav e r yh i g hs p e e d ad i r e c t o r yi su s u a l l yu s e dt os t o r ea l a r g ea m o u n to fs i m p l ea n db a s i cd a t a ,s u c ha sn e l w o r kd e v i c e sa n du s e r s 1 na ni n f b r m a t i o n s y s t e mb a s e do ni n t e r n e t ,b a s i ci n f o r m a t i o no f a l lt h eo b j e c t sw i t h i nt h es y s t e mi sv e r yc r i t i c a l t ok e e pt h es y s t e mr u ns m o o t h l y b u tl oc o m m o nc a s e s t h i si n f o r m a t i o ni sa l w a y sd i s t r i b u t e d 1 nd i f f e r e n ts u b s y s t e m s h o wt oo b t a i nf o r m u l a t e ds y s t e mw i d eb a s i ci l i f o r m a t i o ni sa n i m p o r t a n tt h e m eo f & s i g n i n gal a r g e s c a l ei n f o r m a t i o ns y s t e ml i g h t w e i g h td i r e c t o r ya c c e s s p r o t o e a i l d a p ) b a s e do nt c p i pp r o t o c a ls t a c k t h i sa r t i c l ea n a l y z e st h es p e c i a l i t ya n da d v a n t a g e so fl d a pa n dd e s i g n saf r a m eo f l d a ps e r v i c ei nal a r g e - s c a l ei n f o r m a t i o ns y s t e m , i nw h i c ht h ei n f o r m a t i o no fu s e r sa n d d e v i c e si sm a n a g e dc e n t r a l l y l h e nt h ed e v e l o p m e n to fl d a p e n a b l e da p p l i c a t i o ni s i n t r o d u c e d ,s u c ha se m a i ls y s t e m ,w h i t e p a g es e r v i c e t h et o p i c sd i s c u s s e da r cn a m i n gs p a c e , i n f o r m a t i o nm o d e l ,d a t am o d e l ,d i r e c t o r yd i s t r i b u t i o na n da p p l i c a t i o nd e v e l o p m e n tt h e m e t h o do fd e s i g n i n gp l a t f o r m ,d a t ao b j e c t ,l o g i c a ls p a c i n g ,p h y s i c a ld i s t r i b u t i o na n ds a f e s t r a t e g ya r ec o v e r e d a ne x a m p l e ,l i a o h eo i l f i e l dc o m p r e h e n s i v ei n f o r m a t i o nd i r e c t o r y s e r v i c ei ,o ( 1 l i ) s i si n t r o d u c e d b a s e d0 nl d a p , ac e n t r a l i z e dp l a t f o r mo fu s e ri d e n t i t y ,u s e rc e r t i f i c a t ea n do t h e r a p p l i c a t i o no fi n f o r m a t i o ns y s t e mb c e o m ep o s s i b l et h ea p p l i c a t i o nd e v e l o p e do nt h eb a s eo f l d a p , s u c ha sl a r g e s c a l ee m a i ls y s t e m ,w h i t ep a g es y s t e m ,w i l lc o m p o s ea ne f f e c t i v e i n f o r m a t i o ns y s t e m r h ec o n t e n t so ft h i sa r t i c l ec o v e r v e r a la s p e c t so fd e s i g n i n ga n dd e p l o y i n gd i r e c t o r y s e r v i c e si nal a r g ed i s t r i b u t e di n f o r m a t i o ns y s t e mi th a sw i d es i g n i f i c a n c ea n da p p l i e dv a l u e t ol a r g ee n t e r p r i s e s ,g o v e r n m e n ta n do t h e ro r g a n i z a t i o n s k e y w o r d s :ln f o r m a t i o ns y s t e m ;o ir e c t o r ya e r v i c e ;d ia ir i b u t e dd ir e c t o r y s e r v i c e l d a p 分布式日录服并发儿相:信息系统中的心用 0 前言 耳录服务的发展已有几十年的历史,但在互联网时代才真正发挥优势。目录采用树 形的结构存储数据,与层次型数据库相似。目录没有关系型数据库的事务处理功能,对 完整性要求高的数掘不适合存储在目录中,比如银行的交易数据等。但目录的优势也在 r 此,它钳。对读操作进行优化,读频率远高于写频率的数据适合保存在目录中。比如历 史性的数据、用户和钻井的基本信息等。这特点使目录服务在某些方面发挥重要作用。 当d i 对目录服务本身的研究主要集中在服务端运行方式优化、访问控制增强、无连 接的目录服务访问等方面:目录服务的应用研究主要集中在高性能计算、网络设备仞始 化、目录数据规划等方面。本文重点论述使用目录服务构建信息系统基础平台。 0 1 选题背景 隶属于中国石油天然气集团总公司( 中国石油) 的辽河油田是中国北方重要的石油 基地,其管理机构为辽河油用石油勘探管理局。作为一个国有大型企业,近几年辽河油 的信息化建设发展迅速。本文作者随导师对辽河油田高升采油厂调研过程中,发现辽 河汕现有企业信息系统的一个不足之处是信息系统相对很分散,各子系统之叫没有形 成很好的整合,给用户造成了很大的不便。比如用户在登录某一系统的时候有一套口令, 登录另一个系统的时候又有另一套口令。辽河油阳在i t 基础设施建设方面比较完善, 除檄个别地理位置较远的二级单位之外,整个油f f 建成高速局域网。但应用系统却显得 很分散。辽河油f i = i 信息中心也非常希望能建立一个兼容性良好的基础信息平台。 由于油r | 的行业特性,大量的基础信息需要保存。在已有的信息系统中,二十万职 3 2 5 n - 1 1 程设备的信息需要整合。正在计划的地理信息系统、钻井防碰系统等信息子系统 等将大量用到地质数据、钻井参数等。这些数据都将在多个信息系统中被共用,并具有 长期不变的特点,非常适合存储在目录中。 经过调查和讨论,最终决定在辽河油阿建立一个分布式的目录服务,为今后信息系 统的,l :发提供一个统一的基础信息平台,即个单一集中的、便于网络访问的信息平台。 在辽河油用目录服务的规划中,每个职工都将拥有一个目录服务的记录,在这条记录罩 保存了职: 的个人信息、密码、数字证书等唯一的信息。油田的几力i 口钻井的资料也将 存入目录系统。今后丌发的应用系统都将使用这些信息,比如钻井防碰系统等。一些公 丌的信息在互联网上发布,由互联网白页服务提供快速的查询等。 分布_ i = i = 日录胜务发其神:竹息系统中的他用 0 2 主要研究内容 建立闷录的过程不仅仅是丌发一个应用程序的过程,还包括了目录信息树设计、数 推类型的设计等。本文给出了设计一个分御式目录服务设计和应用程序丌发的完整方 法。l d a p 协议中并没有关于分御式目录服务数据复制的内容,在丌源软件o p e n l d a p 基础:,丌发了带过滤模块的复制程序,成为l d a p 协议应用的有益补充。工作重点集 中在如下几个方面: ( 1 )f l 录信息树设计将辽河油阳的组织结构映射到目录信息树,尽量保持组织 的自然结构,但也结合l d a p 的特点进行改造 ( 2 )数据模式设计把现实中的信息设计成目录项能够表达的数据。采用面向对 象的方法设计,每一个对象类都出一定的属性组成,目录项则类似个类的 实例,存储对应的数据。属性和对象类的信息都保存在模式文件中。 ( : )命名空间划分通过后缀和引用,将目录信息树划分成出不同的子树,分布 到4 i i 司的服务器上将目录服务分布到多服务器可以使目录的容量无限扩大, 有利于加速查询速度和提高可靠性,还可以使目录更容易管理。 、 ( 4 )数据复制及其过滤l d a p 协议并不包括复制的功能,本文在o p e n l d a p 的 复制程序基础上,丌发了过滤模块,提高数据在服务器之间传递的灵活性, 增强了分布式目录服务的功能 ( 5 )高可用性l d a p 本身并刁i 支持高可用性,本文采用第三方软件h e a r t b e a t , 实现了目录服务器的冗余备份,当主服务器故障时,从服务器自动接替服务。 并给出故障恢复的方法。 ( 6 )目录应用程序开发在目录建立的基础上丌发了邮件系统、白页查询系统等 0 3 本文的组织 本文各章节安排如下: 第章的内容是目录服务的基础知识,包括目录服务的基本概念在互联网环境下的 优势,另外还论述了目录服务的相关协议,包括x 5 0 0 和l d a p 。其中特别对l d a p 从 信息模型、操作、分布式服务作了较为细致的阐述。 第二章的内容是分布式目录系统的设计实现,从平台设计、数据模型设计、目录信 息树设计、安全策略几个方面详细阐述了本文采用的设计思想和方法。叙述中结合了辽 河油综合信息系统的实际应用。 第章的内容是分布式目录服务的设计和实现,其中重点讨论了引用和复制机制, 并设计实现了复制过滤的模块。 第州章白勺内容是l d a p 程序丌发技术论述了在多种坏境下丌发基于l d a p 的应用程 序的技术,本章采用的实例为辽河油f r 大规模邮件系统和辽河油田职工白页系统。 分布式廿录胀务_ ;6 乏,e 订:付崽系统中的拇疗 第h 章对于本文的工作进行了总结,并对后续工作进行了展望。 分布式h 录服务硬j e n - 信息系统中的崩用 通过使用目录服务,网络上的所有信息和资源在网络管理员、用户和应用程序面前都表 现为一个有序的目录结构,用户和应用程序可以通过目录认证授权访问这些信息和资 源。 n o v e l l 的n d s ,m i c r o s o f t 在w i n d o w s 2 0 0 0s e r v e r 中提供的a c t i v e d i r e c t o r y 以 及n e t s c a p e 的d i r e c t o r y s e r v e r 都是比较典型的目录服务软件。顺应i n t e r n e t i n t r a n e t 的发 展使用目录服务,能够降低基于i n t e r n e t i n t r a n e t 构建的大规模综合信息系统的复杂度。 一个目录服务的基本功能是采取合适的组织策略存储信息,以便在i n t e r n e t i n t r a n e t 上能 直接或问接地快速检索这些信息。目录服务可以让网络登录、远端数据库操作、电子邮 件发送、代理服务用户认证等工作都只需参考一个单一的身份识别系统,是出系统安全、 应用程序和其它网络服务构成的“分靠式计算环境”的中心点和网络的一种基础平台软 4 t 。体现日录服务概念的一个例子是域名服务系统( d o m a i nn a m es y s t e m ) ,d n s 服务 器映射一个_ k j j t 名到一个i p 地址,网络上其它计算资源都可以看成是d n s 服务器的客 户,这些客户通过更易于忆和方便使用的主机名来检索i p 地址。目录服务存贮的信 息远不u :是主机名和i p 地址这两种信息,事实上它可以存储包括物理设备信息、员工 信息、合同信息等十分复杂的信息。一个鲁棒的、可裁剪的目录服务能把企业信息存储 在个单一集中的、便于网络访问的目录信息仓库中。 实现目录服务的主要标准是1 9 9 3 年版i t u t x 5 0 0 系列建议标准。但x 5 0 0 不是目 录的实现形式,而是一个供丌发商建立自己产品的模型,x 5 0 0 系列标准并不支持 t c p i p 协议。于是,i e i f 下的a s i d 小组制定了l d a p ,其目标是用较小的代价在互联 网上实现x 5 0 0 大多数的功能。最终l d a p 用相对于x 5 0 0 标准较小的代价完成了其大 部分的功能。这使得l d a p 成为了互联网目录服务的实际标准。 1 2 目录服务相关基本概念 ( 1 ) 口求( d i r e c t o r y )目录类似于一个层次型数据库,是一个有关用户、系统、组织、网 络、服务和标识的集合。目录通过单一的数据库存储整个网络中的全部用户和资源 信息,供用户( 人、计算机、应用程序等) 作各种查询和修改。目录通常存储被读访问 的频率比写访问的频率要高得多的数据,所以并不象数掘库那样必须实现复杂的事 务或者回滚机制。对于大量的信息检索要求,目录应该快速给出应答。为了提高性 能利可靠性,并降低应答时唰,分柿式的目录信息可能需要在广阔的网络范围内进 行复制操作。同时,目录能够通过鉴定和授权来管理和控制访问。 ( 2 ) 目录服务( d i r e c t o r y s e r v i c e ) 目录服务提供对目录信息的访问以及在目录中增添、 修改和删除信息的机制,是目录和客户之间的桥梁。目录服务提供了一个标准化的 基础平台,使得客户对目录数据的访问得到规范。它是一个信息管理工具,也是一 分布_ i = i = 日录服务投j 扎竹息系统中的m 1 j 面向的是数据查询服务( 查询和修改操作比一般大于l o :1 ) ,而不提供事务回滚机制, 对数据的修改也仅使用简单锁定的机制来实现a 1 1 o r - n o t h i n g ,其所制定的目标主要是快 速响应和大容量查询以及提供多目录服务器的信息复制功能等等。 本文重点讨论的目录服务协议l d a p 可以运行在任何计算机的平台上,而且可以很 容易地在应用程序中增添l d a p 的访问功能。l d a p 是跨平台、标准的协议,也是目 录服务的标准。l d a p 的服务器可以是任何一个支持l d a p 协议的目录服务器版本( 或 者还可能是具有l d a p 界面的关系型数据库) 。客户可以用相同的协议连接和操作l d a p 服务器。而如果想在程序中集成对某一传统的数据库管理系统d b m s 的支持,那么就 要针对不同的d b m s 进行不同的设制。此外,大多数l d a p 服务器安装起来都十分简 便,维护和优化也比较容易。 1 4x 5 0 0 标准 x 5 0 0 标准是由c c i t t 在1 9 8 8 年建立的f 2 】 后来在此基础上形成了x 5 0 0 一x 5 2 1 系列标准,不过至今人们还是称呼这一系列标准为x 5 0 0 1 3 1 。 i s o 的x 5 0 0 目录标准中,定义了一个十分复杂的目录服务模型,其中规定了信息 组织、命名和访问的一般方法。通过这一模型可以将局部的目录服务联接起来形成一个 全局的、分布式的目录服务。每个局部数据库保存并维护全局数据库的一部分,可以通 过局部数据库服务器访问存储在这个系统中的整个目录信息,这个局部服务器被称为目 录系统代理。而应用程序和用户通过目录用户代理来访问x 5 0 0 目录。 4 1 x 5 0 0 标准中定义了“目录信息树( d i r e c t o r y l n f o r m a t i o n t r e e ,d i t ) ”的树型目录结 构,其基本信息存储单位称为“目录项( e n t r y ) ”,即目录树中的一个节点。从最高层( r o o t ) 丌始,下面按层次定义了c o u n t r y 、o r g a n i z a t i o n 、o r g a n i z a t i o nu n i t 和p e r s o n 等节点, 每个节点称为一个对象。其中,包含对象的对象称为容器。对象由多个不同“属性”组 成,这些属性组合在一起形成该节点的相对辨别名称( r e l a t i v ed i s t i n g u i s h e dn a m e , r d n ) 。从根节点到某一节点的路径上的r d n 有序排列称为该节点( 对象) 的“辨别名 ( d i s t i n g u i s h e d n a m e ,d n ) ”,这就形成一个无二义性的目录项,每个目录项至少属于一 个“对象类”。对象类包括“国家”、“组织”、“组织单元”和“个人”等等。在目录项 中,实际的信息是由属性决定的。目录项所属的对象类定义了目录项可能使用的属性类 型,因此,特定对象类的目录项的信息也是特定的。例如,“p e r s o n ”类目录项具有姓名、 电话号码、e - m a i l 地址等属性类型,“o r g a n i z a t i o n ”类目录项具有组织名、经营性质等 属性。 x 5 0 0 协议是为了便于建立全局、分布式的目录信息而设计的一套协议。它是一一种 c l i e n t s e r v e r 结构的应用协议,支持用户通过网络访问和维护资源信息,另外还具有几 分布代甘录服务驶j t l i 信息系统中的成用 个突出的特点 ( 1 1 支持分布式的目录信息维护每一个x 5 0 0 的服务器都只要负责自己所管辖的资源 信息,只需要在本地就可完成信息的更新; ( 2 ) 提供强大查询能力用户可以根据自己的需要设计查询方式; ( 3 ) 全局的信息标示通过这种标示可以唯一地定位信息位置,获取内容; ( 4 ) 结构化的信息模式支持丌发者的本地扩展; ( 5 ) 遵循统4 的标准所以可以通过表彰的方式访问任何一个x 5 0 0 服务器,获取信息 x 5 0 0 协议1 1 1 包含的这些功能,可以说在很大的程度上满足了用户和丌发者的要求, 但足在用户和丌发者的使用过程中却逐渐暴露出许多的不足之处,阻碍了它的应用和推 广。虽然x 5 0 0 提供了强大的信息查 自j 功能,但是协议所要求的访问格式却十分复杂, 往往难以掌握:在运行x 5 0 0 时对系统的丌销要求较高。为了兼顾保留协议的优点和克 服这些不尽人意的地方,推出了由x 5 0 0 目录服务协议延伸发展而来的l d a p 5 1 。它一 丌始仅仅是作为x 5 0 0 客户层的另一种实现方式,但最后逐渐在许多应用中完全替代了 x 5 0 0 ,成为一个完整实用的应用丌发协议。 1 5 轻目录访问协议l d a p 轻型i := 录访问协议l d a p 是建立在t c p i p 基础上的目录服务协议n 它采用了简 ,尊的编码方式,减轻了客户访问目录的负担,客户可在各种平台上运行,使得目录服务 的j “泛使用成为可能。与其它i n t e m e t 协议不同的是,l d a p 还提供了一组a p i 以便简 化l d a p 应用的编写工作,形成了一种以客户服务器模式访问目录信息的简便方法。 1 5 1 l d a p 信息模型 l d a p 的目录服务模型也是基于目录项( e n r y ) ,所有的目录项构成了目录信息树。 目录信息树d i t 及其相关概念构成了l d a p 协议信息模型。 ( 1 ) 目录信息树在一个目录服务系统中,整个目录信息集可以表示为一个目录信息树 d i r e c t o r yi n f o r m a t i o n t r e e ,d i t ,树中的每个节点是一个目录项,并有上层项、下层 项、叶项、根项,顶节点为根项,是唯一无上层项的节点,没有下层项的节点是叶 项; ( 2 ) h 录项每个目录项对应一个对象,目录对象是现实世界物体的一个方面,例如一 个p e r s o n 目录项对应一个职工。目录项由属性组成,每个属性保存对象一个方面的 信息。属性是山一个类型描述以及该类型所具有的一个或多个值组成。例如,一个 属性是“m a i l ”,则该属性可能有一个或多个值,这些值必须是a s c i i 字符串,并且 分布i i = 目录胀务及j 0 柚:信息系统中的心用 是大小写无关的: ( 3 ) 对象类有十h 同特征的对象由对象类标识。目录中的每个对象项至少是一个对象类 的成员。例如:组织成员项有组织对象类; ( 4 ) 属性描述项的某个方面的一条信息称为属性。一个属性由一个属性类型和一个或 多个属性值组成。属性类型确定属性的语法,确定信息可以存储哪种类型的值。 ( 5 ) 辨别名称即d i s t i n g u i s h e dn a m e ( d n ) 目录项是用名字区分的。每个目录项有一 个棚对辨别名称r d n ,每个目录项从上层项得到辨别名称d n ,附加自己的相对辨 别名称r d n 形成辨别名称d n ,r d n 在同类中唯一标识本项。 ( 6 ) 模式即s c h e m a 所有性能优越的数据库都有模式,它是控制数掘库输入的各个方面 的规则集。这包括:属性语法、匹配规则、属性类、对象类、命名形式等。 1 5 2l d a p 操作 为了实现对目录的管理,目录服务定义了相应的操作,这些操作一般包括:添加 ( a d d ) 、删除( d e l e t e ) 、修改( m o d i f y ) 、绑定( b i n d ) 、解绑定( u n b i n d ) 、查找( s e a r c h ) 、比 较( c o m p a r e ) 、修改辨别名称( m o d i t y d n ) u 放弃操作( a b a n d o n ) 。在目录服务中没有一个 真币的拷贝操作,谬为每个项都必须有一个唯一的d n 。一个近似的拷贝是查找一个已 经存在的项,使用相同的名称将它添加到一个不同的部分,或者使用一个不同的名称添 加到原来的部分。 ( 1 ) 绑定操作在用户要求目录执行其他的操作之前,客户端必须与一个目录服务器建 立一个连接,通过目录绑定操作实现。在一个客户端连接一个操作到一个服务器之 前,必须通过一个绑定操作在其削建立一个关联; ( 2 ) 解绑定操作客户端完成一系列目录请求,并收到所有的结果后,通过目录解绑定 操作关闭与服务器的连接。相似的,一个服务器完成连接一系列请求到另一个服务 器,并收到所有有响应后,通过一个解绑定操作关闭连接。解绑定没有参数,不能 失败; ( 3 ) 添加操作在一个目录树中增加一个叶柄。添加项的直接上级项必须存在,因为目 录树每次只能建立一层结构。这个操作可以增加任何类型的目录项,但新项总是加 到主f 1 录服务器上。添加新项时,必须给出项的属性集,而其它有关目录管理使用 到的属性,由目录服务系统自身自动地添加到新项的属性集合中,这些管理属性可 能包含新项的创建时间、创建人等; 9 分布c 目录船务a tj c n 竹息系统中的心用 ( 4 1 删除操作从目录树中删除一个项,且只能是一个叶项,因为目录树中不能出现洞r 要心删除j l :叶项,必须保证先将此项以下的所有项删除。在删除前,服务器将对删 除项的安全性进行检查,检查用户是否已经得到删除项的授权,是否允许此用户删 除项; ( 5 ) 修改操作用于修改一个目录项内容,但要注意,此操作不可以修改组成项的相对 辨别名称的属性,要修改辨别名称属性,必须由修改辨别名称操作实现。修改操作 通过一系列对项的内容,即项的属性和属性值的添加和删除束实现。对于项的属性 值的修改,每个修改依次进行,一个失败,整个操作失败,也就是说整个操作是原 了的。修改后项的属性必须与项的模式或系统的模式一致,但在修改过程中,可以 - f f d , 致: ( 6 ) 查找操作查找目录树中用户指定的部分,选择适合用户指定的标准的项,并从那 些项叫j 返川指定的信息。在进行查找操作时,用户需要提供一个基对象的辨别名称。 查找操作从这一个基对象,r 始扫描目录树,它可以是任意一点。查找从最基本的对 象项丌始,直到完成用户定义的整个范围的扫描: ( 7 ) 比较操作比较操作允许应用程序使用目录树中的项检查指定值或信息的f 确性, 榆查一个项是否持有一个与用户当前的声称属性值相同的特定的属性值。比较时使 用与属性类定义的相等匹配规则。例如:用与串属性定义的相等匹配规则,则为大 小写无关匹配规则。项的辨别名称只在用户请求中提供的为别名时返回; ( 8 ) 放弃操作用户可能放弃任何一个对目录项的操作,但放弃一个操作不意味着目录 将放弃请求。如果放弃操作成功,放弃操作返回一个空结果,并返回一个放弃错误 给原操作:如果失败,放弃操作返回一个放弃失败错误,原操作继续进行; ( 9 ) 修改辨别名称修改辨别名称的操作,可以修改a b - u t - 项的相对辨别名称,并可以将 叶项和予树移动到d i t 中的新位置,这种改变是庞大的。 1 5 3 客户服务器模式 l d a p 遵守客户服务器模型。本节主要论述在分布式环境下c l i e n t s e r v e r 模式的特 点。棵l d a p 目录树包含一个或多个l d a p 服务器,l d a p 客户通过网络连接到服务 器,向服务器发出请求或者执行一些操作。l d a p 服务器响应客户的请求,或者把客户 的请求指引到其它包含客户指定信息的另外的l d a p 服务器上。 l d a p 协议采用的客户服务器模式是:一个客户端请求服务器代替它执行协议操作 并把 果返回。在这一模型中,自始至终都是客户处于主动,客户传送一个协议清求到 o 分布式日录服务发j e 神:信息系统中的心用 服务器,服务器负责在目录中执行该请求必要的操作。执行完这些必要操作之后,服务 器向发出请求的客户返回一个响应,响应中包含了执行请求所获得的任何结果或错误。 客,1 1 不再需要与服务器联系时,由客户断丌连接。 分布i = i = 目录服务及】和侪息系统中的脚用 _ 一。 2 目录系统的设计和实现 本章从平台设计、数掘对象设计、目录信息树设计、安全策略和分碲式设计几个方 嘶洋钏闸述了分如式目录服务的设计和部署方法。并结合了辽河油硐的实际应用,给出 了辽河汕阳综合信息系统分布式目录系统的设计,l i a o h e o i l f i e l d c o m p r e h e n s i v e i n f o r m a t i o nd i r e c t o r ys y s t e m ,以下简称l o c i d s 。 2 1 设计要点 创建和设计一个目录系统,最主要的一点就是要适应目录所服务的组织机构的变 化,当。个组织的结构发生变化的时候,原先设计的目录有足够的能力柬适应这种变化, 不需要多做工作,就可以满足新的需求,这是目录设计中一个非常重要的原则。在变化 发生的时候,比如目录内容的不断增长,部门结构发生变化的时候,如何简化丌发,提 高可扩展性是一个重要的议题。 本文把一个目录设计的过程分为如下几个部分:平台搭建、目录服务内容调查和舰 划、制定访问策略、逻辑数据分布的设计、以及物理网络实施的方案。 平台搭建:操作系统平台可以选择的有w i n d o w s 、u n i x 、l i n u x 等,不同的操作系 统有1 i 同的特点,w i n d o w s 平台操作比较简单价格适中,但是系统的稳定性和可用性较 差;u n i x 平台稳定、高效,但是需要比较专业的维护和管理人员而且价格昂贵,往往需 要比较高档的硬件设施,软件价格也不菲;最近几年在网络服务领域开始崭露头角的 l i n u x 具有u n i x 稳定高效的特点,而且价格低廉,缺点也是维护比较麻烦,而且由于是 新生事物,人们的熟悉需要一个过程。从本文的前几章可以看到,支持目录服务的软件 平台也有很多,i b m 、n o v e l 、s u n 等公司都有自己的目录服务软件,如何选择相应的目 录服务平台以及相关的后续丌发工具,也是一个很重要的问题。在平台搭建的过程中, 还有个问题需要考虑的是和原有系统的相容性,以及数据迁移等问题。 1 1 求内容规划:目录内容规划包括决定在目录中储存那些信息,以及这些信息如何 存f l 录信息树d i t 中组织。目录信息树的设计,也是目录设计的关键。 数据管理和访问控制:数据是经常需要更新的,目录信息树中各个子树的访问权限 和修改权限等都应当制定相应的策略,这一点跟常规数据库是非常类似的。客户端在什 么时划,在什么地点,用什t 么样的频率访问那些数据,这些都是访问策略的内容。 物理网络实施:物理网络的实施主要考虑网络的可用性和带宽,包括客户和服务器 之间的带宽,以及物理分布的服务器之问的通信,这一点在分布式的目录环境中尤其重 要 分布= l = i = 日录服务驶: l ;神信息系统中的心用 2 2j f 台和服务软件 j | ,台设计包括操作系统平台的选择和目录服务软件的选择。不同的操作系统平台有 不同的目录服务软件,如何选择合适的平台不仅仅是硬件和软件的考虑,而且是应用、 丌发、维护等综合考虑的因素。 2 2 1l i n u x1 | 己台 以往辽河油| 1 1 的信息系统平台般基于s u n 平台的s o l a r i s 操作系统,s o l a r i s 是一 种u n i x 操作系统。辽河油闸的技术人员对s o l a r i s 等u n i x 的操作、管理和丌发都比较熟 悉,而w i n d o w s 平台的稳定性不佳,不适合在辽河油田这样的大型企业应用。在考虑目 录服务操作系统平台的时候,技术人员倾向于u n i x 类的o s 。但是s u n 的平台代价相对 较高。经过几年的发展,l i n u x 已经发展成为一种比较稳定高效的服务器操作系统,具 备了在火规模信息系统中应用的条件。在中国,l i n u x 近两年也已经步入了相对成熟的 发展与应用阶段。t u r b o l i n u x 成功的在中石化全国数千个加油站成功应用,使l i n u x 在 石油行业的应用也得到了实证。l i n u x 完全能够替代s o l a r i s 作为目录服务的操作系统。 此外,油田的丌发人员对j a v a 、p h p 、c 语言等开发工具掌握较好,而这些工具在 l i n u x 的平台下都得到了很好的支持。因此最终选择了r e d h a tl i n u xa d v a n c e ds e r v e r2 1 作为操作系统平台。r e d h a t a s2 1 是目前比较成熟的l i n u x 服务器版本,集成了多种典 型的应用服务软件。该操作系统的相关技术不在本文讨论范围,在此不再赘述。【7 】 2 2 2l d a p 服务软件 o p e n l d a p 是l i n u x 平台下的l d a p 目录服务软件,它也是一个开源软件。该软件 的,1 :发项目由一个志愿者组成的互联网社区管理f 引。o p e n l d a p 项目由即密歇根大学 l d a p3 3 版本发展而来9 1 ,受到o p e n l d a p 基盒会的支持。该软件的2 1 版本,在安 装r e d h a tl i n u xa d v a n c e ds e r v e r2 1 版本中已经包含。 o p e n l d a p 山s l a p d 和s l u r p d 两个进程组成,s l a p d 为目录服务进程,目录的操作都 通过客户端和s l a p d 之间来完成。通过s i a p d 的配置文件,可以设置目录服务进程的相关 选项,比如a c l 访问控制、后台数据库等。s l u r p d 进程负责分布式目录之间的同步, 具体工作流程,请看本文2 5 节。 2 3 数据模型设计 本节从一般性目录数据模型设计入手,结合辽河油f f i 综合信息网目录服务的具体需 坌查苎望墨壁堑些些! ! ! :曼墨竺! 塑坐望 求,给出数据模型设计方法,包括目录信息树设计、属性设计、对象类设计和模式设引。 2 3 1 数据规划 规划目录数据是目录设计中最重要的工作,同时也是最耗时间的工作,必须花相当 的t 1 t i j x , 油 i | 的组织结构进行调查,从而决定数据在目录中的存储。实际工作中会发现 微多数搠0 i 完整甚至数掘不存在等等问题。 茸先来看目录服务对数据的要求。有一些数据比较适合存储在目录里,它们具有如 卜f i ( j 特征: ( 1 ) 目录服务不是文件系统,不是关系型数据库因此,大量的、结构不规范的数据1 i 适合存储在目录罩,对于这些数据,可能用常规数据库等存储更为合适。但是,目 录服务很适合存储指向这些目标的指针。存储在目录旱的数据通常被大量读取,但 很少被改写或增删。这是因为目录服务对“读”操作进行了优化;“写”操作通常 系统丌销更大,占用更多的资源,频繁的“写”操作对目录服务器的性能会造成影 响。 ( 2 ) 对日录服务器的访问通常来自多个系统和多个客户端比如一个职工的个人喜好只 刘。该职工个人产生影响,因此这种数据就不适合放在目录早。目录晕存放的应当是 公川的,有很多人感兴趣和需要访问的数据或者需要从不同的系统访问的数据。比 如, t l 予邮件,用户可能需要从多个系统中来访问邮件路幽信息,那么把邮件路出信 息存放在一个集中的目录中肯定会对这种应用带来好处。 卜一步对目录服务的数据进行调查。可以从以一f l 个方面进行: ( 1 ) 那砦应用程序需要使用目录服务对于l o c i d s 来说,首先有一个运行在互联网上的 白页系统,可以查询所有员工的个人信息,比如部门、电话号码等。其次整个油刚 的电子邮件系统也是基于l o c i d s 的。最后l o c i d s 将应用于统一身份认证平台。 ( 2 ) 日录树的数据将来自哪里比如来自原有的目录、人力资源部门的数据库、设备管 理部门的数据库,或者重新输入。在l o c l d s 中,人员的数据主要来自油阳下设各单 位人事部门的数据库,将丌发单独的程序,从数据库里提取数据加入目录服务器; ( 3 ) 控制访问权限在l o c l d s 中,数据的改写权限由各单位人事部门保留,因此人事部 门负责将数据从数据库转换到l d a p 服务器的程序将有改写的权限,人事部门也可以 通过l d a p 的客户端程序对目录信息加以管理;此外,互联网白页系统、电子邮件系 统、身份认证平台将只有读取的权限。用户则可以对自己的密码进行修改; ( 4 ) 数据更新每一条数掘都需要有人更新。这样可以保持数据的有效性。这个工作是 由相关部门来完成的 f 5 1 设计好属性和对象类。 分布式目录服务发j :信息系统中的心用 2 3 2 目录信息树设计 设计一棵i = f l 录树包含了多个步骤,比如决定一个目录项中包含那些数据,模式的使 用以及这些目录项如何在目录树中组织和分布。在设计过程中,以下几个方面是需要特 别注意的1 1 1 l ( 1 ) 该f ;i :i 录服务上的应用程序 ( 2 ) 咳l d a p 目录服务是否需要加入到一个x ,5 0 0 目录 ( 3 ) 汕| _ 1 _ 的组织结构如何反映到目录树上 ( 4 ) 对管理性和扩展性的考虑 辽河油罔的目录系统,目前主要就是提供全体工作人员的名录服务和钻井的目录服 务。辽河油1 _ | 是典型的大型国有企业,下设二十多个二级单位,总职工人数二十万, l o c i d s 的建立,把二十力职工的数据建成目录,这样,油罔和各单位可以很容易地查 询职:的信息,同时也为辽河油田1 1 1 系统提供统一的单点身份认证平台。几十年来, 辽溯油 1 挖掘的上7 j 口钻井改变了地下的管道伟局,挖掘新钻井的时候需要避免和原有 钻井冲突,园此本文作者所在的课题组正在研究钻井防碰系统。钻井防碰系统中,大量 钻井的数据简单规范、稳定不变,并且经常查询。非常适合存储在目录中。 圈2 1 辽河油田组织信息结构图 f i g u r e2 - 1o r g a n i z a t i o ns t r u c t u r eo f l i a o h eo i l f i e l d 辽河油开1 的组织结构如图2 1 所示。最高机构为辽河油开1 石油勘探管理局,下设儿 一卜个二:级单位。二级单位下面分为职工和钻井,最下面是具体的职工和钻井。 分布止日录雌务发jl n 信息系统中的心用 | 1 求树的设计应该基j 二组织本身的结构,l 河油f h 的组织结构是设计目录树的基 础。辽河油罔下面所管辖的采油厂、钻井厂、设备公司、包装公司、运输公司等二级单 位,构成了设计日录信息树的基础。与此同时,目录树的设计也应当考虑地理位置分布 情况。1 4 录信息树的设计必须有足够的灵活性,但是也必须能够反映出组织的上述两种 结构。 i j 录信息树的树型目录结构,其基本信息存储单位称为目录项( e n t r y ) ,即目录树 中的个= 肖点。从最高层( r o o t ) 开始,下面每个节点称为一个对象。对象由多个不同擒 性组成,这些属性组合在一起形成该节点的相对辨别名称( r e l a t i v ed i s t i n g u i s h e dn a m e , r d n ) 。从根节点到某一节点的路径上的r d n 有序排列称为该节点( 对象) 的辨别名称 ( d i s t i n g u i s h e d n a m e ,d n ) ,这就形成一个无二义性的目录项,每个目录项至少属于一 个刑象类。r d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 民爆物品安全培训计划课件
- 民法课件教学
- 1S-2R-Bedaquiline-1S-2R-TMC207-生命科学试剂-MCE
- 保安证笔试考试题及答案
- 江西安全生产条例要点讲解
- 民族风光课件
- 华体科技新质生产力
- 新质生产力的核心特点
- 新质生产力对消费的影响
- 2025年精神科抑郁症早期干预试卷答案及解析
- (高清版)DZT 0337-2020 矿产地质勘查规范 油砂
- 【培训课件】5S培训课程讲义
- 2021年10月自考健康教育与健康促进试题及答案
- 假性软骨发育不全综合征介绍演示培训课件
- 他们创造了数学:50位著名数学家的故事
- 财务管理-企业筹资方式
- 07K103-2 防排烟系统设备及附件选用及安装
- (完整)消化性溃疡PPT课件ppt
- (完整word版)A3试卷模板
- 疫苗针对性疾病暴发疫情处置课件
- GB/T 13173-2021表面活性剂洗涤剂试验方法
评论
0/150
提交评论