• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    輕量級目錄存取協議

    發布: 2008-2-03 14:16 | 作者: 不詳 | 來源: www.igenus.org | 查看: 24次 | 進入軟件測試論壇討論

    領測軟件測試網 什么是LDAP?

      LDAP的英文全稱是Lightweight Directory Access Protocol,一般都簡稱為LDAP。它是基于X.500標準的,但是簡單多了并且可以根據需要定制。與X.500不同,LDAP支持TCP/IP,這對訪問Inte.net是必須的。LDAP的核心規范在RFC中都有定義,所有與LDAP相關的RFC都可以在LDAPman RFC網頁中找到,F在LDAP技術不僅發展得很快而且也是激動人心的。在企業范圍內實現LDAP可以讓運行在幾乎所有計算機平臺上的所有的應用程序從LDAP目錄中獲取信息。LDAP目錄中可以存儲各種類型的數據:電子郵件地址、郵件路由信息、人力資源數據、公用密匙、聯系人列表,等等。通過把LDAP目錄作為系統集成中的一個重要環節,可以簡化員工在企業內部查詢信息的步驟,甚至連主要的數據源都可以放在任何地方。

      LDAP目錄的優勢

      如果需要開發一種提供公共信息查詢的系統一般的設計方法可能是采用基于WEB的數據庫設計方式,即前端使用瀏覽器而后端使用WEB服務器加上關系數據庫。后端在Windows的典型實現可能是Windows NT + IIS + Acess數據庫或者是SQL服務器,IIS和數據庫之間通過ASP技術使用ODBC進行連接,達到通過填寫表單查詢數據的功能;

      后端在Linux系統的典型實現可能是Linux+ Apache + postgresql,Apache和數據庫之間通過PHP3提供的函數進行連接。使用上述方法的缺點是后端關系數據庫的引入導致系統整體的性能降低和系統的管理比較繁瑣,因為需要不斷的進行數據類型的驗證和事務的完整性的確認;并且前端用戶對數據的控制不夠靈活,用戶權限的設置一般只能是設置在表一級而不是設置在記錄一級。

      目錄服務的推出主要是解決上述數據庫中存在的問題。目錄與關系數據庫相似,是指具有描述性的基于屬性的記錄集合,但它的數據類型主要是字符型,為了檢索的需要添加了BIN(二進制數據)、CIS(忽略大小寫)、CES(大小寫敏感)、TEL(電話型)等語法(Syntax),而不是關系數據庫提供的整數、浮點數、日期、貨幣等類型,同樣也不提供象關系數據庫中普遍包含的大量的函數,它主要面向數據的查詢服務(查詢和修改操作比一般是大于10:1),不提供事務的回滾(rollback)機制,它的數據修改使用簡單的鎖定機制實現All-or-Nothing,它的目標是快速響應和大容量查詢并且提供多目錄服務器的信息復制功能。

      現在該說說LDAP目錄到底有些什么優勢了,F在LDAP的流行是很多因數共同作用的結果?赡躄DAP最大的優勢是:可以在任何計算機平臺上,用很容易獲得的而且數目不斷增加的LDAP的客戶端程序訪問LDAP目錄。而且也很容易定制應用程序為它加上LDAP的支持。

      LDAP協議是跨平臺的和標準的協議,因此應用程序就不用為LDAP目錄放在什么樣的服務器上操心了。實際上,LDAP得到了業界的廣泛認可,因為它是Internet的標準。產商都很愿意在產品中加入對LDAP的支持,因為他們根本不用考慮另一端(客戶端或服務端)是怎么樣的。LDAP服務器可以是任何一個開發源代碼或商用的LDAP目錄服務器(或者還可能是具有LDAP界面的關系型數據庫),因為可以用同樣的協議、客戶端連接軟件包和查詢命令與LDAP服務器進行交互。與LDAP不同的是,如果軟件產商想在軟件產品中集成對DBMS的支持,那么通常都要對每一個數據庫服務器單獨定制。不象很多商用的關系型數據庫,你不必為LDAP的每一個客戶端連接或許可協議付費 大多數的LDAP服務器安裝起來很簡單,也容易維護和優化。

      LDAP服務器可以用“推”或“拉”的方法復制部分或全部數據,例如:可以把數據“推”到遠程的辦公室,以增加數據的安全性。復制技術是內置在LDAP服務器中的而且很容易配置。如果要在DBMS中使用相同的復制功能,數據庫產商就會要你支付額外的費用,而且也很難管理。

      LDAP允許你根據需要使用ACI(一般都稱為ACL或者訪問控制列表)控制對數據讀和寫的權限。例如,設備管理員可以有權改變員工的工作地點和辦公室號碼,但是不允許改變記錄中其它的域。ACI可以根據誰訪問數據、訪問什么數據、數據存在什么地方以及其它對數據進行訪問控制。因為這些都是由LDAP目錄服務器完成的,所以不用擔心在客戶端的應用程序上是否要進行安全檢查。

      LDAP(Lightweight Directory Acess Protocol)是目錄服務在TCP/IP上的實現(RFC 1777 V2版和RFC 2251 V3版)。它是對X500的目錄協議的移植,但是簡化了實現方法,所以稱為輕量級的目錄服務。在LDAP中目錄是按照樹型結構組織,目錄由條目(Entry)組成,條目相當于關系數據庫中表的記錄;條目是具有區別名DN(Distinguished Name)的屬性(Attribute)集合,DN相當于關系數據庫表中的關鍵字(Primary Key);屬性由類型(Type)和多個值(Values)組成,相當于關系數據庫中的域(Field)由域名和數據類型組成,只是為了方便檢索的需要,LDAP中的Type可以有多個Value,而不是關系數據庫中為降低數據的冗余性要求實現的各個域必須是不相關的。LDAP中條目的組織一般按照地理位置和組織關系進行組織,非常的直觀。LDAP把數據存放在文件中,為提高效率可以使用基于索引的文件數據庫,而不是關系數據庫。LDAP協議集還規定了DN的命名方法、存取控制方法、搜索格式、復制方法、URL格式、開發接口等。

      LDAP對于這樣存儲這樣的信息最為有用,也就是數據需要從不同的地點讀取,但是不需要經常更新。

      例如,這些信息存儲在LDAP目錄中是十分有效的:

      (1)公司員工的電話號碼簿和組織結構圖

      (2)客戶的聯系信息

      (3)計算機管理需要的信息,包括NIS映射、email假名,等等

      (4)軟件包的配置信息

      (5)公用證書和安全密匙

      什么時候該用LDAP存儲數據

      大多數的LDAP服務器都為讀密集型的操作進行專門的優化。因此,當從LDAP服務器中讀取數據的時候會比從專門為OLTP優化的關系型數據庫中讀取數據快一個數量級。也是因為專門為讀的性能進行優化,大多數的LDAP目錄服務器并不適合存儲需要需要經常改變的數據。例如,用LDAP服務器來存儲電話號碼是一個很好的選擇,但是它不能作為電子商務站點的數據庫服務器。

      如果下面每一個問題的答案都是“是”,那么把數據存在LDAP中就是一個好主意。

      (1)需要在任何平臺上都能讀取數據嗎?

      (2)每一個單獨的記錄項是不是每一天都只有很少的改變?

      (3)可以把數據存在平面數據庫(flat database)而不是關系型數據庫中嗎?換句話來說,也就是不管什么范式不范式的,把所有東西都存在一個記錄中(差不多只要滿足第一范式)。

      最后一個問題可能會唬住一些人,其實用平面數據庫去存儲一些關系型的數據也是很一般的。例如,一條公司員工的記錄就可以包含經理的登錄名。用LDAP來存儲這類信息是很方便的。一個簡單的判斷方法:如果可以把保數據存在一張張的卡片里,就可以很容易地把它存在LDAP目錄里。

      安全和訪問控制

      LDAP提供很復雜的不同層次的訪問控制或者ACI。因這些訪問可以在服務器端控制,這比用客戶端的軟件保證數據的安全可安全多了。

      用LDAP的ACI,可以完成:

      (1)給予用戶改變他們自己的電話號碼和家庭地址的權限,但是限制他們對其它數據(如,職務名稱,經理的登錄名,等等)只有“只讀”權限。

      (2)給予“HR-admins"組中的所有人權限以改變下面這些用戶的信息:經理、工作名稱、員工號、部門名稱和部門號。但是對其它域沒有寫權限。

      (3)禁止任何人查詢LDAP服務器上的用戶口令,但是可以允許用戶改變他或她自己的口令。

      (4)給予經理訪問他們上級的家庭電話的只讀權限,但是禁止其他人有這個權限。

      (5)給予“host-admins"組中的任何人創建、刪除和編輯所有保存在LDAP服務器中的與計算機主機有關的信息

      (6)通過Web,允許“foobar-sales"組中的成員有選擇地給予或禁止他們自己讀取一部分客戶聯系數據的讀權限。這將允許他們把客戶聯系信息下載到本地的筆記本電腦或個人數字助理(PDA)上。(如果銷售人員的軟件都支持LDAP,這將非常有用)

      (7)通過Web,允許組的所有者刪除或添加他們擁有的組的成員。例如:可以允許銷售經理給予或禁止銷售人員改變Web頁的權限。也可以允許郵件假名(mail aliase)的所有者不經過IT技術人員就直接從郵件假名中刪除或添加用戶!肮谩钡泥]件列表應該允許用戶從郵件假名中添加或刪除自己(但是只能是自己)。也可以對IP地址或主機名加以限制。例如,某些域只允許用戶IP地址以192.168.200.*開頭的有讀的權限,或者用戶反向查找DNS得到的主機名必須為*.foobar.com。

      LDAP目錄樹的結構

      LDAP目錄以樹狀的層次結構來存儲數據。如果你對自頂向下的DNS樹或UNIX文件的目錄樹比較熟悉,也就很容易掌握LDAP目錄樹這個概念了。就象DNS的主機名那樣,LDAP目錄記錄的標識名(Distinguished Name,簡稱DN)是用來讀取單個記錄,以及回溯到樹的頂部。后面會做詳細地介紹。

      為什么要用層次結構來組織數據呢?原因是多方面的。下面是可能遇到的一些情況:

      (1)如果你想把所有的美國客戶的聯系信息都“推”到位于到西雅圖辦公室(負責營銷)的LDAP服務器上,但是你不想把公司的資產管理信息“推”到那里。

      (2)你可能想根據目錄樹的結構給予不同的員工組不同的權限。在下面的例子里,資產管理組對“asset-mgmt"部分有完全的訪問權限,但是不能訪問其它地方。

      (3)把LDAP存儲和復制功能結合起來,可以定制目錄樹的結構以降低對WAN帶寬的要求。位于西雅圖的營銷辦公室需要每分鐘更新的美國銷售狀況的信息,但是歐洲的銷售情況就只要每小時更新一次就行了。

      刨根問底:基準DN

      LDAP目錄樹的最頂部就是根,也就是所謂的“基準DN";鶞蔇N通常使用下面列出的三種格式之一。假定我在名為FooBar的電子商務公司工作,這家公司在Internet上的名字是foobar.com。

      o="FooBar, Inc.", c=US

      (以X.500格式表示的基準DN)

      在這個例子中,o=FooBar, Inc. 表示組織名,在這里就是公司名的同義詞。c=US 表示公司的總部在美國。以前,一般都用這種方式來表示基準DN。但是事物總是在不斷變化的,現在所有的公司都已經(或計劃)上Internet上。隨著Internet的全球化,在基準DN中使用國家代碼很容易讓人產生混淆,F在,X.500格式發展成下面列出的兩種格式。

      o=foobar.com

      (用公司的Internet地址表示的基準DN)

      這種格式很直觀,用公司的域名作為基準DN。這也是現在最常用的格式。

      dc=foobar, dc=com

      (用DNS域名的不同部分組成的基準DN)

      就象上面那一種格式,這種格式也是以DNS域名為基礎的,但是上面那種格式不改變域名(也就更易讀),而這種格式把域名:foobar.com分成兩部分 dc=foobar, dc=com。在理論上,這種格式可能會更靈活一點,但是對于最終用戶來說也更難記憶一點?紤]一下foobar.com這個例子。當foobar.com和gizmo.com合并之后,可以簡單的把“dc=com”當作基準DN。把新的記錄放到已經存在的dc=gizmo, dc=com目錄下,這樣就簡化了很多工作(當然,如果foobar.com和wocket.edu合并,這個方法就不能用了)。如果LDAP服務器是新安裝的,我建議你使用這種格式。再請注意一下,如果你打算使用活動目錄(Actrive Directory),Microsoft已經限制你必須使用這種格式。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: 輕量級


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>