




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、Windows 下搭建LDAP服務(wù)器并使用JNDI訪問一、OpenLDAP安裝和配置安裝還是比較簡單的,一直next就好。這里記得把上面2個都選上,將LDAP注冊為系統(tǒng)的一個服務(wù),默認(rèn)安裝位置:C:Program FilesOpenLDAP,進(jìn)入安裝目錄,編輯slapd.conf 文件:找到ucdata-path ./ucdatainclude ./schema/core.schema在下面加入:(注意你的系統(tǒng)路徑,可能隨安裝位置不同而稍有差異 )include ./schema/core.schemainclude ./schema/corba.schemainclude ./schema/
2、dyngroup.schemainclude ./schema/java.schemainclude ./schema/misc.schemainclude ./schema/cosine.schemainclude ./schema/nis.schemainclude ./schema/inetorgperson.schemainclude ./schema/openldap.schema這個搞定以后,在同一文件后面的(大概65-66行,修改)suffix “o=anotherbug,c=com”rootdn “cn=manager,o=anotherbug,c=com”還有第70行的位置
3、: rootpw secret,這里要修改為加密后的密碼。具體操作:打開命令行,定位到安裝目錄下,輸入:slappasswd -h MD5 s “替換為你想要設(shè)置的密碼,無引號”將生成的MD5密文:MD5Xr4ilOzQ4PCOq3aQ0qbuaQ=填入原來secret位置。OK至此配置已經(jīng)搞定,可以測試一下服務(wù)了。打開命令行轉(zhuǎn)到安裝目錄下輸入:sldapd -d 1二、建立條目(Entry) ,導(dǎo)入 ldif 后綴名文件ldif:LDAP Data Interchange Format,基于文本。有兩種類型的 LDIF 文件:第一種是描述 Directory 條目數(shù)據(jù)的,第二種是描述更新條目
4、的。我們主要看怎么描述條目的。打開編輯器(如Editplus,UltraEdit等),新建test.ldif內(nèi)容如下:dn: o=anotherbug,c=comobjectClass: dcObjectobjectClass: organizationo: anotherbugdc: comdn: uid=mousepoato, o=anotherbug,c=comuid: mousepoatoobjectClass: inetOrgPersonmail: vicky.chenuserPassword: admin sn: Licn: test注意ldif文件對格式的要求非常嚴(yán)格,屬性要以冒
5、號和空格與值隔開 ,并且其他地方不允許有空格 。否則當(dāng)你導(dǎo)入ldif文件時,會提示出現(xiàn)“l(fā)dap_add: Invalid syntax (21 ”等諸多錯誤,另外在我機器上測試,ldif對中文支持也還不好 ,比如我將最后的cn: test改為 cn: 鼠標(biāo)土豆,導(dǎo)入就會報錯。寫完保存到安裝目錄下。在命令行輸入:ldapadd -c -x -D “cn=manager,o=anotherbug,c=com” -w “剛才替換secret出的密碼明文” -f test.ldif運行命令后結(jié)果如下:注意我們在ldapadd后面加上了 ”c “ 參數(shù),他會一直運行不會因錯誤而終止,比如對系統(tǒng)已經(jīng)存在
6、的entry命令會提示但不會中止。三、LDAP查看工具可能大家看了這么多感覺還是很抽象,我們需要一個GUI看看LDAP到底是個什么東東。這里推薦兩個瀏覽工具1、LdapBrowser這是個Java 開發(fā)的 LDAP Browser/Editor 工具,不但跨平臺(Windows, Unix-like,而且功能非常完整,速度又快。運行起來的界面時這個樣子的。2、Softrra LDAP Administrator 2009這是一個比較強大和專業(yè)的客戶端,涵蓋了大多數(shù)企業(yè)的LDAP服務(wù)類型。一直下一步安裝成功后,它的配置也是比較簡單的:新建一個profile,命名為Local_LDAP配置連接信息
7、這是完整配置好后的效果四、通過 JNDI api操作LDAP例子參考代碼:importimportimportimportimportimportimportpublic class LdapTest public static void main(String args / LDAP連接對象LDAPConnection ld = null;LDAPEntry findEntry = null;int status = -1;try ld = new LDAPConnection(;/ 連接LDAP服務(wù)器的IP及端口號final String MY_HOST = "localhost
8、"final int MY_PORT = 389;/ 連接LDAP服務(wù)器ld.connect(MY_HOST, MY_PORT;/ 欲查詢的條目final String ENTRYDN = "cn=vicky,dc=sino,dc=com"/ 條目的屬性final String attrNames = "sn", "telephonenumber", "name", "mail"/ LDAP查詢操作結(jié)果集合LDAPSearchResults res = ld.search(ENTRYD
9、N,LDAPConnection.SCOPE_BASE,"objectclass=*",attrNames,false;/ 循環(huán)遍歷集合,獲取屬性名,只能遍歷一次while (res.hasMoreElements(tryfindEntry = res.next(;catch (LDAPException eSystem.out.println("Error: " + e.toString(;continue;/ 條目屬性名集合LDAPAttributeSet findAttrs = findEntry.getAttributeSet(;/ 屬性名列表E
10、numeration enumAttrs = findAttrs.getAttributes(;/ 循環(huán)遍歷屬性名列表以獲取每個屬性名while (enumAttrs.hasMoreElements(LDAPAttribute anAttr = (LDAPAttribute enumAttrs.nextElement(;String attrName = anAttr.getName(;if (attrName.equals("cn"System.out.println("Full name:"else if (attrName.equals("
11、;sn"System.out.println("Last name (surname:"/ 斷開與LDAP服務(wù)器的連接if (ld != null && ld.isConnected(tryld.disconnect(;catch (LDAPException eSystem.out.println("Error: " + e.toString(;System.exit(status; catch(Exception eSystem.out.println("=成功!"五、通過SpringLDAP訪問LDAP
12、服務(wù)的例子參考代碼:1、spring配置文件代碼xml version="1.0" encoding="UTF-8"?>DOCTYPE beans PUBLIC "-/SPRING/DTD BEAN/EN" ><beans><bean id="ladpContextSource"class><property name="url" value="ldap:/localhost:389" /> <property name=
13、"base" value="dc=sino,dc=com"> property> <property name="userDn" value="cn=vicky,dc=sino,dc=com" /><property name="password" value="123456" />bean><bean id="ldapTemplate"class><property name="con
14、textSource" ref="ladpContextSource" />bean><bean id="userDao" class><property name="ldapTemplate"><ref bean="ldapTemplate" />property>bean>beans>2、訪問LDAP服務(wù)的java代碼importimportimportimportimport/* 2011-03-04* author vicky*/p
15、ublic class UserDaoImpl private LdapTemplate ldapTemplate;public void setLdapTemplate(LdapTemplate ldapTemplate this.ldapTemplate = ldapTemplate;public List getAllContactNames( return ldapTemplate.search("", "(objectclass=person",new AttributesMapper(public Object mapFromAttributes(Attributes attrsthrows NamingExceptionreturn attrs.get("cn".get(;3、測試代碼importimportimportimportpublic class Test public static void main(String args ApplicationCon
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度夫妻婚內(nèi)財產(chǎn)約定及家庭財務(wù)狀況監(jiān)測協(xié)議
- 2025年度白酒年份酒產(chǎn)區(qū)深度開發(fā)與合作合同
- 二零二五年度新能源企業(yè)代理招聘人才合同
- 二零二五年度獨立董事聘用合同(科技創(chuàng)新企業(yè))
- 二零二五年度全面數(shù)字化企業(yè)整體資產(chǎn)轉(zhuǎn)讓合同
- 二零二五年度解除勞動合同關(guān)系及經(jīng)濟補償計算協(xié)議
- 2025年度道路養(yǎng)護(hù)勞務(wù)承包合同(智能化管理)
- 二零二五年度挖機運輸與設(shè)備回收合同
- 浙江國企招聘2024中國郵政速遞物流股份有限公司舟山市普陀區(qū)分公司招聘筆試參考題庫附帶答案詳解
- 2025陜西煤業(yè)新型能源科技股份有限公司招聘(31人)筆試參考題庫附帶答案詳解
- 2025年湖南有色金屬職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫參考答案
- 2025年哈爾濱幼兒師范高等??茖W(xué)校單招職業(yè)技能測試題庫1套
- 2025年佳木斯職業(yè)學(xué)院單招職業(yè)傾向性測試題庫完整
- 2025廣東省安全員A證考試題庫
- 《酒店服務(wù)禮儀細(xì)節(jié)》課件
- 2025年人工智能(AI)訓(xùn)練師職業(yè)技能鑒定考試題(附答案)
- 《稀土冶金技術(shù)史》課件-中國的稀土資源與分布
- 醫(yī)學(xué)影像檢查技術(shù)復(fù)習(xí)題(含參考答案)
- 意外保險理賠申請書
- 2025春季學(xué)期信息科技開學(xué)第一課 課件
- 2025年湖北省技能高考(建筑技術(shù)類)《建筑構(gòu)造》模擬練習(xí)試題庫(含答案)
評論
0/150
提交評論