<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    拾貝殼

    走過的路
    隨筆 - 39, 文章 - 1, 評論 - 14, 引用 - 0
    數據加載中……

    OpenLDAP快速上手

    OpenLDAP 快速上手

    ?? Ben 的項目里面要用到 OpenLDAP, 我的項目里面也要用到 LDAP, 所以這 2 天集中看了一下 LDAP 相關的內容。做了個筆記,也算是為人類知識的積累做點或有或無的貢獻。

    ?? OpenLDAP 的官方站點是 http://www.openldap.org

    ?????? 上面有個 QuickStart, 我將大致按照這個來講解。

    一、 安裝
    在官方站點上發布的是 linux/unix 下的 OpenLDAP 源文件,當然也很容易找到 windows 系統下的版本。筆者學習安裝的就是 windows 版本的。

    二、 配置

    OpenLDAP 2 個用戶最關注的配置文件。

    一個是 slapd.conf 在他里面定義了最基本的 DN 以及管理員的賬號和密碼。

    另一個是 LDIF 的文件。在它里面可以配置所有的用戶和組織。

    1、? 我們先來了解 LDAP 的相關概念。
    我們知道 LDAP 的全稱為( Lightweight Directory Access Protocol ),即輕量級目錄訪問協議。

    Ldap 是怎樣的一個結構呢 ?用官方的話說:“ In LDAP, directory entries are arranged in a hierarchical tree-like structure. Traditionally, this structure reflected the geographic and/or organizational boundaries. Entries representing countries appear at the top of the tree. Below them are entries representing states and national organizations. Below them might be entries representing organizational units, people, printers, documents, or just about anything else you can think of.. ”他是一個樹狀的結構。每一個節點被稱為一個 Entry 。這些 Entry 有著有趣的含義。

    下面是他的 2 個實例。一個反映了 geographic ,一個反映了 organizational

    ?????????????????????????????????????????????????????????? 傳統命名

    ?????????????????????????????????????????????????????????? 網絡命名

    我們來看看個個節點的定義方式。

    每個 Entry 都有一個自己得一個標示 ,我們把他叫 DN(Distinguished Name) ,這個 dn 包含了一個 RDN Relative Distinguished Name )。在上面的第二個圖例 中,Barbara Jensen的RDN是 uid=babs,他的dn是 uid=babs,ou=People,dc=example, dc=com。

    每個節點都需要一個類別 這個類別信息用objectClass來表示。ObjectClass就是該節點的schema,他定義了該節點該有和不該有的屬性。默認的objectClass都在schema/core.schema中有定義。如果在你的配置過程中出現了關于找不到objectClass的問題,您不妨參看一下這里面有沒有你用到的objectClass . 在schema文件夾下還有其他一些schema文件,你也可以定義自己的schema.想要加載其他的schema,你可以在slapd.conf文件中用include加入.如:include??./schema/core.schema. 為了方便識別,其實我們在DN里面用的都是objectClass的簡寫形式。如:ou代表organizationUnit,c代表country,st代表state,dc代表??等。

    2、? 來看看 slapd.conf 這個文件
    這個文件的主要信息是如下幾行:

    database bdb

    suffix "dc=<MY-DOMAIN>,dc=<COM>"

    rootdn "cn=Manager,dc=<MY-DOMAIN>,dc=<COM>"

    rootpw secret

    directory /usr/local/var/openldap-data

    定義了數據庫,最基本的后綴,管理員的 dn 和密碼,以及數據存放路徑。

    編輯好這個文件,我們就可以啟動了。

    如果你把 ldap 安裝為 windows 服務,你可以像我一樣啟動:

    net start OpenLDAP-slapd

    ?

    3、? 我們主要操作的就是這個 LDIF 文件
    我們需要在這個文件里面加入所需要的 dn.

    注意,因為我們在 slapd.conf 中定義了一個 base dn 和一個管理員 dn ,所以我們需要首先把這 2 dn 加進來。

    dn: dc=<MY-DOMAIN>,dc=<COM>

    objectclass: dcObject

    objectclass: organization

    o: <MY ORGANIZATION>

    dc: <MY-DOMAIN>

    ?

    dn: cn=Manager,dc=<MY-DOMAIN>,dc=<COM>

    objectclass: organizationalRole

    cn: Manager

    保存為 ldif 后綴的文件。然后我們用命令把這些信息加到 ldap 中去:

    ldapadd -x -D "cn=Manager,dc=<MY-DOMAIN>,dc=<COM>" -W -f example.ldif

    讓我們來查看以下我們的設置是否出現問題:

    ldapsearch -x -b 'dc=example,dc=com' '(objectclass=*)'

    上面的是 linux/unix 下的命令, windows 下我們需要做點更改:

    ldapsearch -x -b dc=example,dc=com (objectclass=*)

    對,就是去掉引號。

    為了察看方便,筆者建議使用 GUI 工具來查看,比如筆者使用的 Softerra LDAP Browser 2.6

    ?

    三、 java 集成
    我們的 ldap Server 已經搭建起來了,我們需要在我們的 java 程序中訪問這個服務。

    Openldap.org 上有沒有講?有講?下面介紹的 JLDAP 就是干這個的。

    我們需要看一下“ Java LDAP Overview ”里面的內容。內容不是很多,但很實用。

    要在 java 中訪問 ldap ,我們需要一套 api, 你可以在下面的網站上獲得:

    http://developer.novell.com/wiki/index.php/LDAP_Classes_for_Java

    在下在的文件里面有許多的例子,在 novell 的網站上也有很多的例子。我就不講了。 Try yourself

    posted on 2006-08-26 08:37 binge 閱讀(9159) 評論(7)  編輯  收藏 所屬分類: OPEN SOURCE

    評論

    # re: OpenLDAP快速上手  回復  更多評論   

    不深入
    2006-08-27 11:05 | 笑嘻嘻系

    # re: OpenLDAP快速上手  回復  更多評論   

    剛學啊,感性認識先.望樓上提點一下需要深入的綱要
    2006-08-28 09:35 | binge

    # re: OpenLDAP快速上手  回復  更多評論   

    Softerra LDAP Browser 2.6 哪有啊?
    2006-11-19 16:40 | 李[匿名]

    # re: OpenLDAP快速上手  回復  更多評論   

    很難找到windows版本的啊,找到的也是版本太低了!不知道樓主的是那個版本的,我的是2.2.29的,但我想找一個版本高一點的。我的QQ:76988599
    2007-05-29 17:49 | yeyu710

    # re: OpenLDAP快速上手  回復  更多評論   

    感覺不錯,剛開始琢磨這個東西。。哎,學習中。。。。。
    2007-07-18 17:45 | OK

    # re: OpenLDAP快速上手  回復  更多評論   

    其實講解LDIF文件不如講解schema文件來的直接。
    感覺如果能從一個schema例子來講解會比直接講LDIF好。
    2008-04-03 09:58 | chenpengyi

    # re: OpenLDAP快速上手  回復  更多評論   

    學習·····,有個感性認識
    2008-12-03 18:03 | sss
    主站蜘蛛池模板: 亚洲欧洲日本在线| 亚洲国产精品不卡毛片a在线| 在线A亚洲老鸭窝天堂| 激情无码亚洲一区二区三区| 午夜免费福利在线| 成人区精品一区二区不卡亚洲| 国产卡一卡二卡三免费入口| 亚洲精品国产成人| 69成人免费视频| 亚洲中文字幕无码爆乳app| 最近免费中文字幕4| 亚洲色一区二区三区四区| 夫妻免费无码V看片| 水蜜桃视频在线观看免费| 久久亚洲国产精品123区| 无码日韩精品一区二区免费| 亚洲婷婷在线视频| 嫩草视频在线免费观看| 婷婷亚洲综合五月天小说在线| 亚洲高清成人一区二区三区| www一区二区www免费| 亚洲成人中文字幕| 亚洲性线免费观看视频成熟| 亚洲国产精品18久久久久久| 亚洲高清国产拍精品青青草原 | 57pao国产成永久免费视频| 亚洲日产2021三区在线| 在线观看91精品国产不卡免费| 色多多A级毛片免费看| 亚洲国产精品第一区二区| 免费无码肉片在线观看| 免费国产黄网站在线看| 亚洲国产精久久久久久久| 毛片在线免费视频| 久久成人永久免费播放| va天堂va亚洲va影视中文字幕| 亚洲国产av无码精品| 91免费福利精品国产| 免费人妻精品一区二区三区| 亚洲国产国产综合一区首页| 手机看片久久国产免费|