日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

基于Linux操作系統(tǒng)的目錄服務(wù)的實(shí)現(xiàn)

本文的目的是通過使用Linux系統(tǒng)支持的應(yīng)用軟件包(openldap) , 快速實(shí)現(xiàn)基于LDAP協(xié)議的目錄服務(wù)系統(tǒng)來支持Windows消息簿中的用戶查詢功能 。作者從用戶的觀點(diǎn)介紹了目錄服務(wù)的特點(diǎn) , 并比較了其與通常使用的關(guān)系數(shù)據(jù)庫在處理數(shù)據(jù)上的差別 , 作者只是普通的Linux的愛好者 , 嘗試將所學(xué)到的一點(diǎn)Linux知識(shí)進(jìn)行綜合應(yīng)用 , 希望對(duì)大家有所啟發(fā) 。
關(guān)鍵字:目錄、LDAP 。
如果需要開發(fā)一種提供公共信息查詢的系統(tǒng) , 如通過用戶姓名能夠獲得該用戶的郵件地址、家庭住址等信息 , 如Yahoo提供的People search服務(wù)和Windows OutLook中提供的消息簿功能 。一般的設(shè)計(jì)方法可能是采用基于WEB的數(shù)據(jù)庫設(shè)計(jì)方式 , 即前端使用瀏覽器而后端使用WEB服務(wù)器加上關(guān)系數(shù)據(jù)庫 。后端在Windows的典型實(shí)現(xiàn)可能是Windows NTIISAcess數(shù)據(jù)庫或者是SQL服務(wù)器 , IIS和數(shù)據(jù)庫之間通過ASP技術(shù)使用ODBC進(jìn)行連接 , 達(dá)到通過填寫表單查詢數(shù)據(jù)的功能;后端在Linux系統(tǒng)的典型實(shí)現(xiàn)可能是LinuxApachePostgresql , Apache和數(shù)據(jù)庫之間通過PHP3提供的函數(shù)進(jìn)行連接 。使用上述方法的缺點(diǎn)是后端關(guān)系數(shù)據(jù)庫的引入導(dǎo)致系統(tǒng)整體的性能降低和系統(tǒng)的管理比較繁瑣 , 因?yàn)樾枰粩嗟倪M(jìn)行數(shù)據(jù)類型的驗(yàn)證和事務(wù)的完整性的確認(rèn);并且前端用戶對(duì)數(shù)據(jù)的控制不夠靈活 , 用戶權(quán)限的設(shè)置一般只能是設(shè)置在表一級(jí)而不是設(shè)置在記錄一級(jí) 。
目錄服務(wù)的推出主要是解決上述數(shù)據(jù)庫中存在的問題 。目錄與關(guān)系數(shù)據(jù)庫相似 , 是指具有描述性的基于屬性的記錄集合 , 但它的數(shù)據(jù)類型主要是字符型 , 為了檢索的需要添加了BIN(二進(jìn)制數(shù)據(jù))、CIS(忽略大小寫)、CES(大小寫敏感)、TEL(電話型)等語法(Syntax) , 而不是關(guān)系數(shù)據(jù)庫提供的整數(shù)、浮點(diǎn)數(shù)、日期、貨幣等類型 , 同樣也不提供象關(guān)系數(shù)據(jù)庫中普遍包含的大量的函數(shù) , 它主要面向數(shù)據(jù)的查詢服務(wù)(查詢和修改操作比一般是大于10:1) , 不提供事務(wù)的回滾(rollback)機(jī)制 , 它的數(shù)據(jù)修改使用簡單的鎖定機(jī)制實(shí)現(xiàn)All-or-Nothing , 它的目標(biāo)是快速響應(yīng)和大容量查詢并且提供多目錄服務(wù)器的信息復(fù)制功能 。
LDAP(Lightweight Directory Acess Protocol)是目錄服務(wù)在TCP/IP上的實(shí)現(xiàn)(RFC 1777 V2版和RFC 2251 V3版) 。它是對(duì)X500的目錄協(xié)議的移植 , 但是簡化了實(shí)現(xiàn)方法 , 所以稱為輕量級(jí)的目錄服務(wù) 。在LDAP中目錄是按照樹型結(jié)構(gòu)組織 , 目錄由條目(Entry)組成 , 條目相當(dāng)于關(guān)系數(shù)據(jù)庫中表的記錄;條目是具有區(qū)別名DN(Distinguished Name)的屬性(Attribute)集合 , DN相當(dāng)于關(guān)系數(shù)據(jù)庫表中的關(guān)鍵字(Primary Key);屬性由類型(Type)和多個(gè)值(Values)組成 , 相當(dāng)于關(guān)系數(shù)據(jù)庫中的域(FIEld)由域名和數(shù)據(jù)類型組成 , 只是為了方便檢索的需要 , LDAP中的Type可以有多個(gè)Value , 而不是關(guān)系數(shù)據(jù)庫中為降低數(shù)據(jù)的冗余性要求實(shí)現(xiàn)的各個(gè)域必須是不相關(guān)的 。LDAP中條目的組織一般按照地理位置和組織關(guān)系進(jìn)行組織 , 非常的直觀 。LDAP把數(shù)據(jù)存放在文件中 , 為提高效率可以使用基于索引的文件數(shù)據(jù)庫 , 而不是關(guān)系數(shù)據(jù)庫 。LDAP協(xié)議集還規(guī)定了DN的命名方法、存取控制方法、搜索格式、復(fù)制方法、URL格式、開發(fā)接口等 。
Linux支持的LDAP服務(wù)器一般有Michigan大學(xué)開發(fā)的免費(fèi)軟件包和Openldap組織基于Michigan大學(xué)的開發(fā)包提供的Openldap免費(fèi)軟件發(fā)行包 , 其中Openldap發(fā)行包安裝配置更加簡單 。RedHat 6.1 Linux發(fā)行版中就包含了Openldap軟件包 , 該發(fā)行版可從計(jì)算機(jī)世界報(bào)信息服務(wù)中心得到 , 對(duì)LDAP的支持是Redhat6.1提供的一個(gè)重要擴(kuò)展 , (參見Redhat 6.1產(chǎn)品介紹) , 以下詳細(xì)介紹在Linux中安裝并配置Openldap的方法 , 以及使用該軟件包為Windows Outlook中的帳號(hào)提供消息簿的后端 。

推薦閱讀