基于CORBA的電子商務系統的安全性

時間:2022-04-18 01:42:00

導語:基于CORBA的電子商務系統的安全性一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

基于CORBA的電子商務系統的安全性

基于corba電子商務系統安全性

時間:2004-04-10作者:劉海巖田新燕田新宇

摘要:電子商務使用了刊登廣告并出售貨物的新方法來進行交易,并為動態開放式電子商務環境中的大組客戶提供服務和信息。本文說明了實現電子商務應用程序所用的技術,該技術集中于CORBA框架對于這些解決方案的支持。

關鍵詞:通用對象請求體系結構,電子商務,安全性,平臺

SecurityinCORBA-basedElectronicCommerceSystems

LIUHai-Yan,TIANXin-Yan,TIANXin-Yu

Abstract:Electroniccommerceprovidesbusinesswithnewwaysofadvertisingandsellinggoods,services,andinformationtolargegroupsofcustomersindynamicopenelectroniccommerceenvironments.Thisarticleaddressesthetechnologiesforrealizingelectroniccommerceapplications,focusingontherelevanceoftheCORBAframeworkforthesesolutions.

KeyWords:CORBA,electroniccommerce,security,platform

1.電子商務介紹

通俗的說,所謂電子商務,就是在網上開展商務活動-當企業將它的主要業務通過企業內部網(Intranet)、外部網(Extranet)以及Internet與企業的職員、客戶供銷商以及合作伙伴直接相連時,其中發生的各種活動就是電子商務。電子商務是基于Internet/Intranet或局域網、廣域網、包括了從銷售、市場到商業信息管理的全過程。

目前,電子商務只是在對通用方針和平臺意見一致的參與者間的封閉組織內進行。例如,電子數據交換(EDI)被用來在一個機構的多個分支之間,或者在建立了契約聯系的機構之間安全地傳輸數據。而在這些早期階段,電子商務系統只處理某幾個方面的完全商務事務。

當客戶可以通過他們的Web瀏覽器來使用的第一批基于web的商店出現時,建立了電子商務的一個更全面的概念作為Internet上傳遞貨物和價格的方式。現在,大多數電子商務系統是基于web的,并且允許客戶通過他們的web瀏覽器購買貨物并用信用卡結帳。然而,基于web的應用程序的局限功能使得很難向客戶提供全范圍的服務。

未來,電子商務解決方案的需求將超過當前級別。將來的系統將必須通過多個自治的服務提供商來滿足動態開放式環境中的需求,電子商務將成為一個包含多個交易實體間復雜的交互作用的分布式過程。在一個開放式市場中,有許多獨立的貨物和服務的供應商,并且可能有通過合并第三方提供的服務來提供服務的調解者。客戶本身也可能合并隨選(on-demand)產品或者服務來實現合成包。因此,現代的電子商務系統必須能集成不同種類參與系統和不同政策領域中互相不信任的用戶。

2.背景及未來電子商務安全性問題

Internet的爆發增長,使得通過為一大群顧客和供應商提供一個通用通訊環境的方法可以發揮電子商務的獨一無二的潛力。今天,網上有數以千計的面向消費者和面向交易的商務站點,并且這個數目正在快速增長。

從消費者的觀點來看,這個大型系統積極的方面是:用戶可以從相當大的產品范圍內選擇,并且尋找最合適的產品。提供者可以從大量的可能顧客和減少事務花費來獲益。

然而,電子商務成為世界新熱點,但其安全性也隨著信息化的深入也隨之要求愈高了。快速和不受控制的增長產生了組織和技術天性方面的不同問題。市場依舊是封閉的,并且常常沒有完全符合顧客和提供者的需求。今天的電子商務系統在私人擁有的平臺上運行,因此應用程序并不能互操作,也不能建立在對方的基礎上。安全性和支付系統仍然不成熟,并且常常是不相稱的。只有用標準的電子商務框架才能解決這些問題。

未來的電子商務系統的主要安全性問題是它們必須通過復雜的組件技術和信托關系在一個動態并開放的,從而也是不受控制的環境中操作。多數電子商務使用的電子支付系統必須很容易使用的,也必須透明地提供鑒定、完整性保護、機密性保護和認可。另外,客戶和提供者之間的通訊連接必須保持數據的機密性和完整性,首先保護客戶的隱私,其次是確保客戶購買的服務不能被篡改。

很不幸,今天的(基于web的)電子商務系統不能迎合這些關于功能性和安全性的需求。下面的段落描述如何用CORBA來解決一些問題。

3.CORBA概述

通用對象請求體系結構(CORBA)是對象管理組織(OMG)1995年首先開發出來的一個規范。其核心部分是對象請求(ORB),是一個便于實現不同硬件和軟件平臺上的互操作和集成的軟件總線。從軟件開發者的觀點來看,ORB抽象了分布式系統中遠程方法調用的內在的復雜性。CORBA可以抽象網絡通訊、平臺的差異、編程語言等的差異,并且可以透明地提供電子商務所需的安全性功能。另外,CORBA指定了大量CORBA服務,例如名字服務、事務服務、時間服務或安全性服務,這些服務分別著重于分布式系統中的某些特殊方面。

圖1CORBA綁定和方法調用

圖1用一種簡單方式說明了CORBA的工作機理:在最初的綁定階段,客戶端應用程序通過ORB庫(①,②)連接到一個活化組件或名字服務上,然后依次查詢實現庫中的目標對象引用(③)并當目標對象還沒有運行起來時,啟動這個對象(④,⑤)。目標對象引用然后就被傳回客戶端ORB庫(⑥)。客戶無論何時通過對象代碼樁(⑧)調用目標方的方法(⑦),ORB庫都要透明地連接到目標ORB庫上(⑨),然后目標ORB庫通過目標代碼骨架(⑩,⑾)將請求傳遞給目標對象。應答通過⑾和⑦之間的鏈送回。

CORBA的靈活方法調用系統允許客戶動態綁定到服務方上,從而使得服務靈活動態地合成,以及交互作用的調和、互操作性和購物會話過程中的狀態保持都很方便。

CORBA還使得電子商務系統支持合成產品的概念和由多個提供者的相應項構成的服務包的概念。例如,一個旅行社可以提供一個包括飛機票、旅店預約、汽車租賃和旅游向導等的旅行包。

很不幸的,實際上多數CORBA的實現并沒有完全遵照規范,許多服務至今仍不可用。這對安全性服務尤其不幸,因為安全性服務對任何基于CORBA的電子商務系統是絕對必需的。而且,不同廠商的CORBA實現并不總能完全互操作,尤其當使用別的CORBA服務時。沒有定制的CORBA安全性服務部分地或者完全不遵照使得互操作成為可能的規范。

4.CORBA安全性概述

CORBA安全性規范包括一個安全模式和為應用程序、管理程序和實現程序提供的接口和工具。規范中的通用安全互操作部分定義了通用安全性機制,使得可以安全互操作。

分布式對象系統的CORBA安全模式建立在表1所示的安全性特征的基礎上。

機密性(Confidentiality)

完整性(Integrity)

可說明性(Accountability)

表1:安全性特征

CORBA安全服務規范定義了不同的對象接口,這些接口提供了下面的安全功能來增強上面提及的安全性特征(見表2)。

安全性管理:方法和范圍(SecurityAdministration:PoliciesandDomains)

鑒定(Authentication)

安全性上下文制定(Securitycontextestablishment)

存取控制(Accesscontrol)

通訊保護(完整性,機密性)

Communicationsprotection(integrity,confidentiality)

安全性審計(Securityaudit)

認可(Non-repudiation)

表2:CORBA安全服務規范中的安全性功能

實際上,特別是在電子商務中,CORBA安全服務規范中的安全服務將不可避免的過于沉重和復雜。個別電子商務系統可能有不同于最初由OMG預想中CORBA系統的特別安全性需求。值得指出的是,在這個階段,CORBA安全性服務是圍繞分布式計算環境(DCE)而設計的,典型地都工作在類似于校園的封閉式環境中,下層平臺和政策都可控制(也就是說,可以安裝和管理DCE底層安全性結構)。在這種環境中,基本的安全需求是保護系統,防止未驗證的使用和修改。

5.電子商務安全需求

今天的電子商務系統中,一些安全需求與類似于DCE的環境大相徑庭。在DCE中,客戶必須信任服務器和系統,但需保護服務器以防未驗證的客戶。電子商務環境中,也需要防止有惡意的會員。因此,系統必須保護客戶以防惡意的服務器和另外的客戶,也要保護服務器以防未驗證的客戶。互相不信任的參與者這個概念并不是DCE所固有的。

在傳統的環境中,通過所有權來指定系統的責任,并用通過這些所有權的范圍來定義信任邊界。在開放式系統中,信任邊界、所有權和責任范圍可能不同,這引發了不同的問題。例如,商家可能負責購物過程的安全性,而不能控制客戶系統。另外,也常常不能規定客戶軟件所運行的平臺(例如,CORBA產品,Java版本,操作系統)或安全政策(例如,操作系統安全性配置)。另一方面,客戶可能負責一段它并不理解的而后臺透明運作的軟件,而這個軟件可能是由一個后來和客戶發生糾紛的供應商提供的。這造成了系統中可信部分如何在供應商和客戶間分配的問題。

交易的合伙人之間的契約關系應該指明風險分派,責任分派和解決糾紛的原則。就電子商務來說,我們現在必須處理可能來自一些不可信任源,并且運行在不安全的下層操作系統上的硬件和軟件,因此建立這種契約關系的困難就更大了。這樣的軟件偶爾會失效或者惡意地運作,并且太復雜而不能成為多數終端用戶的責任。

在更技巧性的層上,事務和支付需求更強的完整性和機密性保護,同時需要保證電子兌現的匿名性。也可能存在購物時可以在瀏覽器端下載輕量的客戶應用程序的需求。在這些情況下,客戶機裝不上大的安全基本設施。客戶端的安全政策也許也不允許購物軟件永久安裝在客戶機上。為了使開放的電子商務能實際運作起來,安全電子商務產品需要不定制就可使用,也需要銀行掩飾電子支付系統潛在的安全漏洞。

6.CORBA和電子商務安全性

CORBA安全服務規范提供了消息層完整性和負責者的鑒定/認可,這兩項對電子商務應用程序都很關鍵。然而,OMG的電子商務域任務組織(OMG-ECDTF)為電子商務系統識別另外幾種安全需求。CORBA規范中并沒有下面的需求,或者由于它們仍未被提出,或者由于它們超出了CORBA所能達到的范圍:

l事務審核:CORBA安全規范提供了審核數據產生,但沒有提供所需數據和粒度。

l基于角色的存取控制:盡管好的粒度或者靈敏的商務交易中需要單獨的存取控制,但電子商務把基于角色的存取控制作為主要形式。CORBA安全性沒有提供基于角色的存取控制。

l認可:CORBA規定根據的生成,但是不提供存儲根據、恢復根據和確認根據的工具。電子商務所需的完全的認可功能包括根據生成、確認、存儲、恢復和遞送權力。這個服務可以提供創造、起源、接收、服從、贊成、遞送和行為的認可。

l完整性:應該提供將數據變成完整性所保護的數據、將完整性所保護的數據轉變回原始數據、檢查是否遺失完整性的功能。另外,也需要著手一些另外的完整性問題。例如,需要有一些用來防止惡意的軟件,例如防止計算機病毒所做未驗證的修改的機制。除消息層完整性以外,CORBA沒有提供任何電子商務系統需要的其他層上的完整性功能。

l授權:CORBA提供了使得個別責任變得容易的“扮演的授權”。然而,電子商務需要別的授權選項,例如簡易授權,復合授權,組合特權授權(不允許把這些特權來追溯回某些中間節點),和追溯授權(提供了鏈中的授權追溯)。目前,CORBA并不要求提供這些授權模式。

l授權在安全性審核中發揮作用。它支持將一條復雜的對象請求鏈追溯回最初的用戶。

l安全性審核庫管理:審核服務可以用來保證所有的用戶對他們發起的安全相關事項負責任,并保證建立、保持和保護安全相關事項的審核跟蹤。另外,必須提供警告設施,并且收集、剖面、過濾、分析和查詢審核數據也是可能的。CORBA目前沒有提供任何審核管理功能。公務員之家版權所有

l安全性管理:電子商務安全性管理應該關心以下三個范疇:管理功能的安全性、安全服務管理和安全機制管理。當前,CORBA并沒有提供任何安全性管理工具。

7.基于CORBA的電子商務

CORBA作為電子商務系統的底層結構有許多優點,本節概述其中幾個優點。

開放式電子商務系統的兩個主要需求是互操作性和完整性。所有的客戶和供應商應用程序都應該可以在一個靈活的、動態的、開放的框架中,越過不同平臺,不同編程語言和商業布局來互操作。CORBA可以從開放的電子商務環境的復雜性中抽象出來。CORBA方便了電子商務系統和其它系統之間的交互作用,比如股票管理系統、會計系統、行銷系統等,并使得和以前的應用程序的之間集成變得容易,例如,一個舊的股票數據庫系統。

從軟件開發者的觀點來看,CORBA使得一切都變得比較簡單,尤其是如果打算進行不同的商店配置時。CORBA抽象了網絡和動態的遠程商店調用,允許應用程序開發者集中精力在實際的程序上,而不是集中在底層結構的內部工作方式上。應用程序開發者可以再利用已存在系統中的部分(例如安全性系統)來開發新程序。CORBA的靈活結構也使得開發者可以實現整個商業街的一部分來迎合特殊的貿易需求,并為進一步增強系統和容易地升級這部分商業街軟件提供堅實的基礎。將來,個別基于CORBA的可定制的商業街組件就可用了,可以購買它,并可以很容易的將之即插即用進已存在的商業街中,來增強或升級商店系統,。

為了使得商店組件的動態互用性運轉起來,一套定義良好的標準服務需要在電子商務環境下可用。例如,用來描述對象(例如貨物、服務、合同、發票或帳單等)的語義需要廣泛定義。因此,OMG和商業網(CommerceNet)共同定義了一系列電子商務服務的需求,也就是說,語義數據工具,選擇/商議工具和支付服務。語義數據工具提供了對電子市場參與者之間語義信息交換的支持,商議服務提供了一組從事商業事務的參與者,在服務或工具的選擇和配置上相互協定的支持,而電子支付工具關注支付協議的調用。

實際上,CORBA還是經常被認為是一項不成熟的技術,尤其是CORBA沒有實現許多服務,例如安全性服務。除了與不成熟的ORB實現相關的問題外,軟件開發者也往往沒有完全訓練到可以熟練編寫基于CORBA的組件的地步。就本地程序來說,基于CORBA的應用程序開發幾乎與普通的應用程序開發相同,因此并沒有真正造成問題,但是例如實現一個透明的提供了ORB層安全性的安全性服務就需要專業知識。

目前,對基于CORBA的電子商務系統的評價使得這些開發足以為一些公司盈利了。例如,銀行配置基于CORBA的個人銀行業,或者股票交易系統可能因為它是顧客的最主要地邊緣技術的服務提供者而獲益。

8.結論

許多CORBA的核心概念對電子商務系統是有用的,例如,互操作性和綜合性,平臺、編程語言和安全機制等的靈活性,底層組件布局和網絡的抽象,安全性功能的透明性,安全性的自動增強。

然而,目前可用的CORBA實現相當不成熟,而且并沒有實現最初指出的所有的功能。例如,目前沒有一個完全的安全性服務實現是可以定制使用的。這樣把實現自定義的安全服務的工作留給了應用程序開發者,他們需要有安全性和所使用CORBA產品的內部運轉機制的專業知識。

即使是未來CORBA功能沒有消弱,也沒被別的什么東西(例如JavaRMI和COM+)來代替,本文描述的基本概念也將成為任何電子商務中件的核心需求。如果CORBA如許多人推測,變成了電子商務的新的Internet標準的話,提供基于CORBA的商業街和服務越快的商務,獲益越多。因此,為了當分布式對象中件廣為使用時獲得競爭優勢,軟件開發者很明顯現在就得熟悉CORBA概念。

注:本文受課題號為863-30602-02-01,名為“基于WEB的應用服務器及其集成框架”項目支持,主要對項目中的涉及的電子商務框架的安全性提出自己的觀點

參考文獻:

1.《電子商務概論》方美琪清華大學出版社1999年出版

2.CORBAServicesSpecification

3.CORBASpecification

4./info/wenzhai/infowz21060108.htm中間件在電子商務中的應用

5.61.132.182.23/cit/200008/04.htmInternet上一種新型的CORBA應用安全防護模型