EJB和CORBA在異構環(huán)境中的統(tǒng)一用戶管理系統(tǒng)設計_第1頁
EJB和CORBA在異構環(huán)境中的統(tǒng)一用戶管理系統(tǒng)設計_第2頁
EJB和CORBA在異構環(huán)境中的統(tǒng)一用戶管理系統(tǒng)設計_第3頁
EJB和CORBA在異構環(huán)境中的統(tǒng)一用戶管理系統(tǒng)設計_第4頁
EJB和CORBA在異構環(huán)境中的統(tǒng)一用戶管理系統(tǒng)設計_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

精品文檔-下載后可編輯EJB和CORBA在異構環(huán)境中的統(tǒng)一用戶管理系統(tǒng)設計某市大型科技網(wǎng)站的定位側重于ICP(InternetContentProvider),兼作ISP(InternetServiceProvider),主攻方向是信息增值服務。其具有豐富的網(wǎng)上信息資源,提供科技信息全文檢索、動態(tài)信息發(fā)布等功能。作為地區(qū)國民經(jīng)濟信息化的重要工程之一,其建設目標是成為國際科技信息網(wǎng)和省科技信息網(wǎng)的地區(qū)主干網(wǎng),成為市科技信息開發(fā)、應用與服務及與國內外科技信息交流的平臺和反映地區(qū)科技信息的主要窗口。

為了滿足系統(tǒng)建設和將來升級擴展的需要,系統(tǒng)采用了先進的軟硬件配置。所有網(wǎng)絡設備、服務器、軟件平臺均采用當前在Internet網(wǎng)站建設方面享有良好聲譽的、代表Internet服務發(fā)展趨勢、方向和水平的產(chǎn)品。在服務器的選擇上,采用了在Internet服務領域享有很高聲譽的SUN、SGI服務器系列和HP公司系列產(chǎn)品,同時采用Solaris、IRIX和Windows2000Server作為服務器的操作系統(tǒng);選用Oracle數(shù)據(jù)庫系統(tǒng)及SybaseEnterpriseApplicationServer多層軟件技術及SGI公司先進的視頻技術,充分利用強大的系統(tǒng)擴展能力提供良好的信息查詢服務。

系統(tǒng)提供的主要ICP服務有:電子郵件、代理、科技信息檢索、視頻點播、撥號等。由于提供這些服務的廠商和平臺完全分散獨立,并且各自提供了基于不同語言的開發(fā)接口,這就帶來一個問題:如何統(tǒng)一地使用對應的服務,如何將異構環(huán)境中的用戶信息統(tǒng)一到科技網(wǎng)站系統(tǒng)中來,以便為科技網(wǎng)用戶透明地使用,并且為網(wǎng)站統(tǒng)一計費提供依據(jù)。因此在異構環(huán)境中的統(tǒng)一用戶管理成為本系統(tǒng)的一個重要研究課題。

1統(tǒng)一用戶管理思想

為了管理和計費的需要,本文提出了統(tǒng)一用戶管理的概念,以服務的方式組織應用。用戶上網(wǎng)申請注冊并交費后,可自由選取系統(tǒng)提供的各種ICP服務。用戶選取不同的服務,都要求把用戶信息統(tǒng)一到相應服務所在服務器系統(tǒng)平臺的用戶管理中。即:當注冊用戶在某一處增加、刪除一種服務或修改用戶信息和密碼時,其用戶信息(包括用戶賬號、密碼等)都統(tǒng)一到相應的服務所在的服務器系統(tǒng)平臺的用戶管理應用系統(tǒng)中,這是統(tǒng)一用戶管理的設計重點。簡言之,統(tǒng)一用戶管理即用戶擁有“一卡通”。這樣就能方便用戶擁有一個賬號便可在網(wǎng)上享用其所選用的資源并完整地實現(xiàn)統(tǒng)一計費。

2用戶服務方案

由于系統(tǒng)提供的增值服務所在的服務器系統(tǒng)平臺相對獨立、分散,所以必須根據(jù)不同系統(tǒng)針對性地解決用戶管理問題。Email服務是在NETSCAPE的MESSAGESERVER上實現(xiàn)的,代理服務是通過NETSCAPE的PROXYSERVER實現(xiàn)。以上兩種服務對應的用戶管理要根據(jù)NETSCAPE的目錄服務機制來實現(xiàn),其目錄服務機制遵循了LDAP協(xié)議,因此,Email和代理服務的用戶驗證要通過目錄服務的相應的LDAP協(xié)議來實現(xiàn)完成加載用戶信息到其目錄服務器中。

3實現(xiàn)技術

3.1基于LDAP和WindowsADSI

在實現(xiàn)統(tǒng)一用戶管理的過程當中,遵循了相應的目錄服務的有關協(xié)議,輕量級目錄訪問協(xié)議LDAP(LightweightDirectoryAccessProtocol)和Windows2000Server的ActiveDirectory(活動目錄)。

LDAP是輕量目錄訪問協(xié)議,英文全稱是LightweightDirectoryAccessProtocol,一般都簡稱為LDAP。它是基于X.500標準的,但是簡單多了并且可以根據(jù)需要定制。與X.500不同,LDAP支持TCP/IP,這對訪問Internet是必須的。LDAP的規(guī)范在RFC中都有定義,所有與LDAP相關的RFC都可以在LDAPmanRFC網(wǎng)頁中找到。

LDAP是遵循X.500標準的互聯(lián)網(wǎng)目錄協(xié)議,可用于訪問和管理目錄服務。LDAP基于客戶/服務器模式,服務器端提供目錄服務,LDAP使開發(fā)人員能夠使用標準查詢技術從一個合并的目錄中檢索信息,從而實現(xiàn)物理上分布的、邏輯上集中的統(tǒng)一用戶管理功能。從一個用戶管理界面統(tǒng)一管理所有系統(tǒng),LDAP客戶端通過TCP/IP與服務器通信,利用目錄服務獲得相關屬性信息,如查詢、添加、修改、刪除等。

活動目錄(ActiveDirectory)是面向WindowsStandardServer、WindowsEnterpriseServer以及WindowsDatacenterServer的目錄服務?;顒幽夸浄帐荳indows2000操作系統(tǒng)平臺的中心組件之一。理解活動目錄對于理解Windows2000的整體價值是非常重要的。這篇關于活動目錄服務所涉及概念和技術的介紹文章描述了活動目錄的用途,提供了對其工作原理的概述,并概括了該服務為不同組織和機構提供的關鍵性商務及技術便利。

ActiveDirectory是一個收集用戶與資源信息的分布式數(shù)據(jù)庫,它包含的用戶與資源信息描述了網(wǎng)絡、用戶、應用設置以及管理與編程人員所感興趣的所有內容?;顒幽夸浀闹饕δ苁怯脕泶鎯﹃P于網(wǎng)絡上的資源信息并提供相應的服務,使這些資源易于定位、使用和管理。網(wǎng)絡資源信息被存放在活動目錄的數(shù)據(jù)庫組件中?;顒幽夸洖橛脩?、應用程序和Windows2000系統(tǒng)本身搜索網(wǎng)絡資源提供了統(tǒng)一的服務平臺,同時還為管理員提供了一條集中組織、管理和控制對網(wǎng)絡資源訪問的途徑。

3.2基于不同API

各服務對應系統(tǒng)和第三方廠商提供了不同語言的開發(fā)接口。Email和代理服務對應的系統(tǒng)提供了Java語言的API;全文檢索和撥號服務對應的系統(tǒng)只提供了C語言的API。

API(ApplicationProgrammingInterface,應用程序編程接口)是一些預先定義的函數(shù),目的是提供應用程序與開發(fā)人員基于某軟件或硬件的以訪問一組例程的能力,而又無需訪問源碼,或理解內部工作機制的細節(jié)。API除了有應用“應用程序接口”的意思外,還特指API的說明文檔,也稱為幫助文檔。

因此系統(tǒng)必須選擇一種語言中立的開發(fā)模式。

3.3基于EJB和CORBA集成異構系統(tǒng)

對本系統(tǒng)實現(xiàn)功能要求:

(1)同步LDAP目錄服務、AD目錄服務系統(tǒng)和第三方用戶系統(tǒng)。

(2)采用流行的B/S結構。

(3)準確及時自動同步用戶信息的增、刪、改。

(4)基于J2EE標準技術構架和與開發(fā)語言無關的CORBA規(guī)范,無縫地集成不同應用系統(tǒng)。

(5)可以跨平臺運行,支持Windows、SUNSolaris、IRIX、HPUnix系統(tǒng)。

針對系統(tǒng)功能要求,統(tǒng)一用戶管理實現(xiàn)方法是基于EJB組件技術、CORBA[9]組件規(guī)范的技術,這樣就充分保證了系統(tǒng)的安全性、穩(wěn)定性和重用性,并為統(tǒng)一日志管理和計費管理提供了依據(jù)。

EJB(EnterpriseJavaBeans)是J2EE架構的重要組成部分,用于開發(fā)和部署多層結構的、分布式的、面向對象的Java應用系統(tǒng)的跨三層的組件體系結構。EJB組件通常不能單獨運行,而是運行在EJB容器中。應用系統(tǒng)可以在一個支持EJB的環(huán)境中開發(fā),開發(fā)完后可以部署在其他的環(huán)境中。并且隨著需求的改變,應用系統(tǒng)可以不加修改地遷移到其他功能更強、更復雜的服務器上。

CORBA組件實現(xiàn)規(guī)范由OMG提出,OMG首先發(fā)布了OMA(對象管理體系結構),提出了組件互操作的軟總線ORB(ObjectRequestBroker)。一個CORBA組件采用IDL進行(接口定義語言)描述。CORBA提供了IDL到C、C++、Java、COBOL等語言的映射機制——IDL編譯器。IDL編譯器可以生成Server方的Skelton和Client方的Stub代碼,通過分別與客戶端和服務端程序的聯(lián)編,即可得到相應的Server和Client程序。CORBA對象特點包括:可以位于網(wǎng)絡中的任何位置;可以和其他平臺上的對象交互;可以用任何設計語言編寫,只要有IDL到該語言的映射即可。

本方案采用EnterpriseJavaBean組件、CORBAC++組件實現(xiàn)了電子郵件用戶、代理服務用戶、全文檢索服務用戶、撥號服務用戶的統(tǒng)一管理。通過建立目錄服務服務器及相應的用戶屬性信息,采用支持LDAP協(xié)議、ADSI的開發(fā)工具(NetscapeSuitespot、SybaseEnterpriseApplicationServer、SybasePowerJ、VisualC++)開發(fā)LDAP服務組件、撥號服務組件,實現(xiàn)了對系統(tǒng)內用戶的統(tǒng)一管理。本方案對提供二次開發(fā)支持的第三方系統(tǒng)(TRS全文檢索系統(tǒng)),可通過相應的C語言的API開發(fā)CORBAC++組件實現(xiàn)。

3.3.1采用三層體系結構

系統(tǒng)采用三層體系結構。

(1)前端的客戶層:客戶端系統(tǒng)采用Web方式,利用瀏覽器向Web服務器請求對網(wǎng)上應用管理系統(tǒng)進行操作的相關網(wǎng)頁。

(2)中間應用層:封裝業(yè)務邏輯、進行事務處理,包括PowerDynamo和JaguarCTS。其中PowerDynamo負責網(wǎng)頁生成和動態(tài)數(shù)據(jù)發(fā)布,JaguarCTS負責組件和事務處理,客戶端利用HTTP協(xié)議與PowerDynamo通信,得到想調用的頁面(包括以JavaApplet形式的組件),若有組件則由PowerDynamo與JaguarCTS通過IIOP協(xié)議執(zhí)行組件方法。其具有下列特點:

①支持EJB、CORBA、DCOM等組件。

②不依賴于語言。

③支持多種分布式協(xié)議。

④支持廣泛的平臺。Windows、Solaris、IRIX和HP-UX等。

⑤支持標準安全機制和可靠的先進性。

⑥先進的命名服務。支持CORBACosnamingService和JNDI.

(3)后端數(shù)據(jù)庫管理層:提供對數(shù)據(jù)庫的訪問。

圖1為三層體系結構圖。

3.3.2服務組件實現(xiàn)

(1)EJB組件

通過EJB組件方法創(chuàng)建了Email服務的用戶統(tǒng)一管理的組件LDAPuser、代理服務的用戶統(tǒng)一管理的組件LDAPproxy。

(2)CORBAC++組件

通過CORBAC++組件方法創(chuàng)建了全文檢索服務的用戶統(tǒng)一管理組件TSRuser、撥號服務的用戶統(tǒng)一管理的組件RADuser。

3.3.3用戶統(tǒng)一管理的實現(xiàn)方法

(1)對用戶透明。注冊用戶通過選取相應服務或修改用戶信息的頁面操作,系統(tǒng)自動進行相應的判斷。

(2)系統(tǒng)調用EJB組件。用戶在選擇新增Email服務時,頁面執(zhí)行的語句為:

ldaphomeobj=java.GetHomeInterface(“LDAPuser”,“iiop://組件服務器名:9000”,“用戶名”,“密碼”);

ldapObj=ldaphomeobj.create();//實例化

ldapObj.Add(user,psw);//組件中新增Email服務的

//成員方法,user為用戶名參數(shù),psw為用戶密碼參數(shù),以下同

ldapObj.Mod(user,old_psw,new_psw);//組件中修改

//Email服務用戶密碼的成員方法。注:old_psw為舊密碼,

//new_psw為新密碼。

ldapObj.Del(user);//組件中刪除Email郵箱賬號的成

//員方法

代理服務用戶統(tǒng)一管理的實現(xiàn)方法與Email服務調用的實現(xiàn)方法類似。

(3)系統(tǒng)調用CORBAC++組件

①全文檢索服務用戶統(tǒng)一管理的實現(xiàn)方法

TSRobj1=java.CreateComponent(“TSRadmin/TSRuser”,“iiop://組件服務器名:9000”,“用戶名”,“密碼”,“TSRadmin/

//TSRuser”);

TSRobj1.Add(user,psw);//組件中新增全文檢索服務的//成員方法

TSRobj1.Mod(user,old_psw,new_psw);//組件中修改全//文檢索服務的用戶密碼的成員方法

TSRobj1.Del(user);//組件中刪除全文檢索服務的成員//方法

②撥號服務用戶統(tǒng)一管理的實現(xiàn)方法

其組件RADuser中包含的方法分別為:選取撥號服務Add、修改用戶密碼Mod、刪除撥號服務Del。撥號服務用戶統(tǒng)一管理的實現(xiàn)方法與全文檢索服務用戶統(tǒng)一管理組件調用的實現(xiàn)方法類似。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論