基于ldapv3擴(kuò)展操作的目錄條目批量增刪操作實(shí)現(xiàn)方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明屬于目錄服務(wù)系統(tǒng)領(lǐng)域,尤其是涉及一種基于LDAPV3擴(kuò)展操作的目錄條目 批量增刪操作實(shí)現(xiàn)方法。
【背景技術(shù)】
[0002] 隨著互聯(lián)網(wǎng)的發(fā)展,對(duì)各種數(shù)據(jù)資源的標(biāo)準(zhǔn)化管理和高效存取的要求變得十分迫 切,目錄服務(wù)技術(shù)就是在這樣的背景下產(chǎn)生并迅速發(fā)展的新技術(shù)。目錄服務(wù)系統(tǒng)是用于網(wǎng) 絡(luò)數(shù)據(jù)資源的分布式存儲(chǔ)和快速查詢的新型專用數(shù)據(jù)庫(kù)系統(tǒng),是專門為那些檢索頻率大大 高于數(shù)據(jù)更新頻率的信息服務(wù)而設(shè)計(jì)的。比如圖書館圖書索引系統(tǒng)、網(wǎng)絡(luò)資源管理系統(tǒng)、組 織人員管理系統(tǒng)、單點(diǎn)登錄系統(tǒng)等。
[0003] 目錄服務(wù)系統(tǒng)一般都遵循輕型目錄訪問協(xié)議LDAPV3,從而能夠保持應(yīng)用的標(biāo)準(zhǔn)性 和獨(dú)立性。該協(xié)議中規(guī)定了目錄的數(shù)據(jù)單元一條目,并且規(guī)定了操作條目數(shù)據(jù)的九個(gè)基本 操作,包括綁定,添加,修改,刪除,搜索,比較,解綁定等操作??刂坪蛿U(kuò)展也是LDAPV3協(xié)議 的組成部分,目的是在基本操作基礎(chǔ)上,增加目錄的擴(kuò)展能力。
[0004] 每個(gè)擴(kuò)展操作由唯一的0ID(object identifer,對(duì)象標(biāo)志符)來標(biāo)記,不同的0ID 代表不同的擴(kuò)展操作,除了 0ID,擴(kuò)展操作的參數(shù)還有具體的數(shù)據(jù),每個(gè)操作可以對(duì)數(shù)據(jù)進(jìn) 行單獨(dú)的定義和解析。
[0005] 目錄訪問的服務(wù)方,簡(jiǎn)稱服務(wù)方;
[0006] 目錄訪問的客戶方,簡(jiǎn)稱客戶方;
[0007]目錄訪問協(xié)議中不提供目錄條目的批量操作。其提供的基本操作只能針對(duì)單個(gè)目 錄的單個(gè)條目進(jìn)行增刪操作。客戶方為了將若干條目數(shù)據(jù)添加至目錄服務(wù)系統(tǒng),或者將若 干條目從目錄服務(wù)系統(tǒng)中刪除,如圖1所示,需要執(zhí)行如下過程:
[0008] 步驟101,客戶方連接到服務(wù)方指定的IP和端口;
[0009] 步驟102,客戶方執(zhí)行單個(gè)條目添加(或者刪除)操作;
[0010] 步驟103,服務(wù)方處理單個(gè)條目添加(或者刪除)請(qǐng)求,返回條目添加(或者刪除)結(jié) 果;
[0011] 步驟104,客戶方處理單個(gè)條目添加(或者刪除)響應(yīng)結(jié)果,根據(jù)結(jié)果決定下一步操 作。如果還有待添加(或者刪除)條目,繼續(xù)執(zhí)行步驟102、103;如果所有待添加(或者刪除) 條目都處理完,可進(jìn)行下列操作。
[0012] 步驟105,客戶方解除與服務(wù)方的連接綁定。
[0013] 由以上操作可以看出,客戶方只能通過LDAPV3定義的九個(gè)基本的操作之一,循環(huán) 地添加或者刪除條目??蛻舴綖榱藢?shí)現(xiàn)該批量操作,需要與服務(wù)方進(jìn)行大量的網(wǎng)絡(luò)交互,浪 費(fèi)了網(wǎng)絡(luò)帶寬以及服務(wù)的響應(yīng)能力,效率不佳。同時(shí)也給客戶方的程序邏輯編寫帶來不小 的復(fù)雜度。
【發(fā)明內(nèi)容】
[0014] 本發(fā)明要解決的問題是提供一種基于LDAPV3擴(kuò)展操作的目錄條目批量增刪操作 實(shí)現(xiàn)方法,尤其適合于對(duì)目錄服務(wù)增刪操作效率要求較高的場(chǎng)合,即擁有相同后綴DN的條 目,需要批量添加到目錄或從目錄中刪除的場(chǎng)合。
[0015] 為解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案是:
[0016] -種基于LDAPV3擴(kuò)展操作的目錄條目批量增刪操作實(shí)現(xiàn)方法,其特征在于此方法 包含:在目錄客戶方的LDAPV3擴(kuò)展請(qǐng)求中,將若干待操作的目錄條目?jī)?nèi)容填入到擴(kuò)展請(qǐng)求 的附加數(shù)據(jù),發(fā)送給目錄服務(wù)方來解析與批量操作,目錄服務(wù)方將批量操作的運(yùn)行結(jié)果返 回給目錄客戶方。
[0017] 進(jìn)一步的,包括如下具體步驟:
[0018] 1)客戶方設(shè)置擴(kuò)展請(qǐng)求信息,包括0ID號(hào)及附加的數(shù)據(jù);
[0019] 2)客戶方向服務(wù)方發(fā)送擴(kuò)展請(qǐng)求操作;
[0020] 3)服務(wù)方解析并處理擴(kuò)展請(qǐng)求操作,通過0ID號(hào)識(shí)別出是目錄條目批 [0021 ]量操作,則進(jìn)一步解析并處理附加的數(shù)據(jù);
[0022] 4)服務(wù)方生成目錄條目批量操作的結(jié)果信息,返回?cái)U(kuò)展響應(yīng)給客戶方;
[0023] 5)客戶方處理擴(kuò)展響應(yīng)結(jié)果,根據(jù)結(jié)果決定下一步操作。
[0024] 進(jìn)一步的,步驟1)中所述客戶方設(shè)置的擴(kuò)展請(qǐng)求信息,目錄條目批量增刪操作的 0ID號(hào),不同操作分別使用不同的具體0ID號(hào);附加的數(shù)據(jù)包括所有批量操作條目所在的目 錄后綴DN,及每個(gè)條目信息,每個(gè)條目信息包括條目DN和該條目的屬性及值列表。
[0025] 進(jìn)一步的,步驟4)中所述服務(wù)方生成目錄條目批量操作的結(jié)果信息包括成功或失 敗的操作結(jié)果,以及失敗的原因;所述操作結(jié)果用失敗條目數(shù)量來表達(dá),失敗條目數(shù)量為〇 表示成功,如果失敗條目數(shù)大于〇,需進(jìn)一步給出附加的其它響應(yīng)結(jié)果項(xiàng),每一項(xiàng)表達(dá)一個(gè) 失敗條目的具體失敗原因。
[0026] 進(jìn)一步的,服務(wù)方使用meta源目錄集群方式,源目錄通過步驟1)擴(kuò)展請(qǐng)求信息附 加數(shù)據(jù)中的目錄后綴DN,快速地定位到具體的實(shí)體目錄節(jié)點(diǎn)上,把客戶方請(qǐng)求的批量操作 指派到該目錄,完成meta源目錄集群的基于LDAPV3擴(kuò)展操作的目錄條目批量增刪操作。
[0027] 本發(fā)明具有的優(yōu)點(diǎn)和積極效果是:
[0028] 使目錄服務(wù)方通過擴(kuò)展操作支持了 LDAPV3標(biāo)準(zhǔn)中所不具有的目錄條目的批量操 作,填補(bǔ)了目錄批量操作的功能空白,同時(shí)使用該操作可降低原客戶方程序?yàn)閷?shí)現(xiàn)若干條 目同時(shí)增刪的API調(diào)用的復(fù)雜度,大量減少原客戶方與服務(wù)方請(qǐng)求和反饋等交互的多次網(wǎng) 絡(luò)花費(fèi),從而提升了目錄的增刪性能。
【附圖說明】
[0029] 圖1為現(xiàn)有的LDAPV3協(xié)議下的目錄批量條目增刪操作流程圖;
[0030] 圖2為本發(fā)明LDAPV3協(xié)議下的目錄批量條目批量增刪操作流程圖;
[0031]圖3為本發(fā)明LDAPV3協(xié)議下的客戶方目錄條目批量增刪操作請(qǐng)求附加數(shù)據(jù)裝配流 程圖;
[0032]圖4為本發(fā)明LDAPV3協(xié)議下的服務(wù)方目錄條目批量增刪操作響應(yīng)數(shù)據(jù)裝配流程 圖;
[0033]圖5為本發(fā)明LDAPV3協(xié)議下的meta源目錄集群中目錄條目批量增刪操作流程圖。
【具體實(shí)施方式】
[0034]下面結(jié)合附圖2、3、4、5對(duì)本發(fā)明的具體實(shí)施例做詳細(xì)說明。因?yàn)槟夸浽L問協(xié)議 LDAPv3中的擴(kuò)展操作是獨(dú)立的操作??蛻舴脚c服務(wù)方的連接操作是相同的,需要替換的是 原循環(huán)添加或刪除基本操作。
[0035]本發(fā)明采用的設(shè)計(jì)思想是:在目錄客戶方的LDAPV3擴(kuò)展請(qǐng)求中,將若干待操作的 目錄條目?jī)?nèi)容按照一定的格式要求填入到擴(kuò)展請(qǐng)求的附加數(shù)據(jù),一次性地發(fā)送給目錄服務(wù) 方來解析與操作,從而實(shí)現(xiàn)更復(fù)雜的目錄條目的批量操作,目錄服務(wù)方將批量操作的執(zhí)行 結(jié)果按照一定的格式要求返回給目錄客戶方。
[0036] 實(shí)現(xiàn)本發(fā)明LDAPV3擴(kuò)展操作的目錄條目批量增刪操作實(shí)現(xiàn)方法的具體程序?qū)崿F(xiàn) 過程中,首先根據(jù)目錄訪問協(xié)議LDAPv3中擴(kuò)展操作的定義方法,對(duì)此目錄條目批量增刪操 作的擴(kuò)展操作進(jìn)行定義,例如定義:
[0037] 新增的目錄條目批量增添操作的擴(kuò)展操作0 I D為:〃 1·3·6·1·4·1·12900·1·4·5·1"〇
[0038] 新增的目錄條目批量刪除操作的擴(kuò)展操作的0 I D為:〃 1·3·6·1·4·1·12900·1·4·5·2"〇
[0039] 如圖2所示,本發(fā)明提供的一種基于LDAPV3擴(kuò)展操作的目錄條目批量增刪操作實(shí) 現(xiàn)方法,此方法需要客戶方和服務(wù)方配合完成,包含如下步驟:
[0040] 步驟201,客戶方設(shè)置擴(kuò)展請(qǐng)求信息,包括0ID號(hào)及附加數(shù)據(jù);
[0041] 步驟202,客戶方向服務(wù)方發(fā)送擴(kuò)展請(qǐng)求操作;
[0042]步驟203,服務(wù)方解析并處理擴(kuò)展請(qǐng)求操作,通過0ID號(hào)識(shí)別出是目錄 [0043]條目批量操作,則進(jìn)一步解析并處理附加的數(shù)據(jù);
[0044] 步驟204,服務(wù)方生成目錄條目批量操作的結(jié)果信息,返回?cái)U(kuò)展響應(yīng)結(jié)
[0045] 果給客戶方;
[0046]步驟205,客戶