摘要:介紹了SAML的主要特點,包括聲明類型和SAML的標準體系結構,以及SAML在電子政務建設中的應用。針對目前電子政務系統中信任與授權服務是保障信息安全的重要基礎設施,結合SAML的標準體系結構,提出了電子政務中基于SAML的信任與授權系統的設計框架,并對此系統中基于SAML的授權機制的實現進行了分析。
關鍵詞:安全聲明標記語言; 電子政務; 聲明;公鑰基礎設施; 管理基礎設施; 策略決策中心; 策略實施點
中圖分類號:TP309文獻標志碼:A
文章編號:1001-3695(2007)07-0111-03
目前電子政務的安全重點已經由單純的網絡保護發展到對電子政務網絡中應用系統的安全防護,建立電子政務系統的信任與授權體系。電子政務需要滿足現有的政府部門內部橫向行政管理模式和縱向業務管理模式相互交織的復雜的信任關系。如果按照目前各自為政的信任服務體系的構建方式,必然造成各政府部門之間的信任管理錯綜復雜、交叉認證鏈過長,從而導致整個社會信任服務體系難以有效地管理和運行。為此可以采用一種新的機制,通過對信息化社會中的基本被管對象(自然人、機構和設備)分別建立基準的職能信任服務體系,然后,在此基礎上進一步構建相應的授權服務體系來實現各職能部門的管理權限。安全聲明標記語言(SAML)提供了一種信任與授權的標準架構。它與具體的實現無關,允許政府機構對實體、特權以及權限進行聲明,通過XML文檔來定義政府機構服務對象的鑒定、授權、權限和會話信息。因此,基于SAML構建電子政務的信任與授權系統,能夠以更加便捷和靈活的方式來構建電子政務自身的安全體系。
1SAML介紹
SAML是由OASIS組織批準,基于XML的安全訪問控制框架體系和協議。SAML用來在多個信任合作者之間交換安全信息。在SAML框架下,無論用戶使用哪種信任機制,只要滿足SAML的接口、信息交互定義和流程規范,相互之間就可以無縫地結合。
1.1SAML聲明
SAML將傳輸的安全信息定義為相應的聲明。聲明用XML來描述,以Request/Response的形式在多個信任合作者之間傳送。聲明提供主體所執行的驗證、主體屬性、是否允許主體訪問特定資源的授權決策等信息。通過SAML聲明的形式將信任與授權信息綁定到SOAP等開放性協議中,并通過HTTP、SMTP等通用的應用層協議在網上傳遞,達到信任與授權信息共享的目的。由權威組織定義的一組聲明組成一個主體配置文件。配置文件中的聲明可能來自不同的組織。聲明有三種類型:
(1)驗證聲明(Authentication)。該聲明定義了用戶的認證信息,如認證機構、方式和有效期等;處理主體在特定時刻、特定機制下的身份驗證。
(2)屬性聲明(Attribute)。該聲明提供將主體與特定屬性聯系起來的一種機制。屬性如主體的系統用戶標志、所屬用戶組、角色、可訪問的資源及權限等。
(3)授權決策聲明(Authorization Decision)。該聲明管理是否允許用戶訪問特定的資源及訪問權限。
1.2SAML的標準體系結構
SAML可以實現在不同的安全系統中跨信任域交換認證和授權信息。SAML本身沒有定義新的認證與授權機制,但是定義了用于不同授權系統間傳輸安全信息的交換機制。所以SAML不僅是一種用來描述信任和授權信息的標準,更是一種解決分布式應用系統中信任與授權共享問題的框架體系。SAML的標準體系如圖1所示。
(1)系統實體。它是提交應用請求,要求訪問資源的用戶。在電子政務中,用戶實體可以是人、機構或設備。
(2)憑證收集器。它負責收集用戶提供的可用于身份鑒別的憑證。
(3)鑒別權威。其主要作用是鑒別用戶身份,生成認證聲明。認證聲明指明鑒別用戶身份的時間、方式(證書/口令/生物鑒別)以及鑒別后用戶的身份。
(4)屬性權威。其主要作用是保存用戶的屬性信息,對用戶的相關屬性進行聲明、確認。
(5)屬性證書(Attribute Certificate,AC)。它包含了用戶的屬性,將證書持有者的身份及其相關屬性綁定在一起,用屬性來表示用戶屬于哪個組,具有什么樣的角色,持有什么樣的安全許可或其他授權信息。
(6)策略決策中心(Policy Decision Point,PDP)。它根據相應的安全策略,對用戶身份、請求的操作及所要訪問的資源進行評測,作出授權響應。
(7)策略實施點(Policy Enforcement Point,PEP)。它負責接收用戶請求,將通過身份認證的用戶信息發送到PDP,執行PDP作出的授權決議,如根據授權決議對服務進行配置,并執行。
2SAML在電子政務中的應用
由于SAML采用基于Web的開放和可互操作設計,當將其應用到電子政務的環境中時,可以提供G2G(Government to Government)、G2C(Government-to-Citizen)等典型應用,支持單點登錄、授權服務,提高了電子政務設計與應用部署的效率與安全性。
(1)對G2G、G2B事務處理的支持。G2G是指不同政府部門之間的電子政務。G2B(Government to Business)是指政府通過電子網絡系統進行政府與企業間的合作交流。對于異構的G2G、G2B環境或特定的業務連接來說,由于不同級別、不同地方的政府、不同的政府部門,以及不同的特定業務系統的構造方式基于不同的平臺,它們之間的通信必然要求一種獨立于具體平臺的技術。SAML未定義新的認證技術,而是在現有傳輸、認證、安全技術的基礎上為開發者提供了一個與平臺無關的安全服務框架,并且支持可擴展機制,允許開發者對其中的一些元素進行擴展和選擇。
(2)對G2C的支持。G2C是指政府通過電子網絡系統為公民提供的各種服務。SAML對用戶端沒有特殊要求,它聲明可以直接嵌入SOAP消息體中并通過SOAP over HTTP傳輸。另外,用戶從手機、PDA或其他非Windows平臺來訪問網絡的情況也越來越普及。SAML獨立于具體的平臺。
(3)單點登錄。電子政務的各個業務系統之間需要相互通信,而各個系統的信任和授權方式可能多樣。單點登錄方式下,用戶在源站點通過認證后,源站點為用戶生成相應的SAML聲明,并將一個與此聲明相關聯的標志分配給用戶。當用戶從源站點訪問其他目的站點上受保護的資源時,目的站點根據用戶提供的憑證與源站點進行通信,確認用戶的身份,用戶不需要再次在目的站點上進行登錄和認證。
(4)授權服務。用戶發出對資源訪問的請求,資源的安全控制器(PEP)根據PDP的授權,決定接收或者拒絕用戶的訪問請求。在這個過程中,策略決策點向策略實施點提供了授權服務。
3電子政務中的信任與授權服務系統的設計
3.1基于SAML的信任與授權服務體系架構
由于SAML的標準架構具有通用性和實用性,可以融合各種訪問控制機制,可基于SAML來構建電子政務中的信任與授權服務體系。只要各個組件滿足SAML的接口規范,就可以協同工作,組件功能的更新與升級不影響整個信任與授權服務系統的運作。同時解決了跨信任域的授權管理問題。
基于SAML的信任與授權服務體系架構設計如圖2所示。
信任和授權服務為敏感資源訪問提供了安全基礎,是電子政務中的兩個基礎設施。信任和授權的分離有利于系統的開發和重用,也方便安全管理。在公鑰基礎設施PKI的基礎上建立授權管理基礎設施PMI,授權服務體系和信任服務體系協同工作,完成從特定用戶的現實空間身份到特定應用系統中具體操作權限之間的轉換。此架構通過對信息化社會中建設的基本被管對象(自然人、機構和設備)分別建立基準的職能信任服務體系,然后在此基礎上進一步構建相應的授權服務體系來體現各職能部門的管理權限。
3.1.1信任服務體系
在信任服務體系PKI中,根CA提供基準服務體系的信任源點,它設在電子政務的認證和管理中心,是整個信任服務體系的最終信任源和最高管理機構。業務CA即自然人、機構和設備數字認證中心是信任服務體系中的核心業務節點,負責數字證書的申請、簽發和管理,是PKI的核心執行機構。
自然人包括所有常駐人員和暫住人員。自然人數字認證中心為自然人頒發數字證書,自然人數字認證體系管理自然人信息,可以為電子政務中的公眾服務項目(如勞務管理、暫住人員管理、政府信訪、計劃生育管理和市民參政議政等)以及電子商務應用項目(如網上購物、網上證券服務等)提供有效保障和服務。
機構數字認證中心主要通過為企業法人、社會團體和事業單位等機構頒發數字證書來提供網絡身份認證的基準,有效管理企業法人、社會團體和事業單位信息。
電子政務系統的一個重要任務就是為系統范圍內的設備頒發數字證書,進行信任服務管理。設備數字認證體系將由國家相關職能部門統一進行規劃和建設,各級相關職能部門將建立相應的數字證書審核注冊機構。
認證信息目錄服務器(LDAP)是認證機構發布其證書庫和證書撤銷列表CRL的服務器,它只接收CA服務器所發布的證書和CRL數據,同時接受所有證書使用者的查詢。
RA是信任服務體系中核心業務節點的附屬節點,負責在CA為實體頒發證書之前驗證實體身份并在PKI系統中為用戶注冊。RA是一個可選組件,如果沒有RA,則CA要負責完成RA功能。
業務受理點是RA的附屬節點,是與最終電子政務應用用戶的接口。
3.1.2授權服務管理體系
在自然人、機構和設備信任服務管理體系基礎上,電子政務系統各應用子系統可以采用授權服務管理體系,即頒發屬性證書AC對各類實體進行管理并提供服務。目前授權管理基礎設施PMI技術是建立授權服務體系的關鍵技術。
信任源點SOA是整個授權管理基礎設施PMI的最終信任源和最高管理機構。SOA的職責主要包括授權管理策略的管理、應用授權受理、AA中心的設立審核及管理授權管理體系業務的規范化。在簡單的情況下,SOA可以直接充當AA對最終實體授權。
電子政務中需要各類社會機構對人員、設備提供個性化的授權服務管理體系,如社保授權服務管理體系。各類社會機構有各自相對獨立的屬性權威機構——授權中心AA。不同的AA之間能夠根據實際需要達成信任合作關系,交換安全信息。AA的主要職責包括應用授權受理、屬性證書的發放和管理。 AA由具有設立AA中心業務需求的各應用單位負責建設,并與SOA中心通過業務協議達成相互信任關系,AA可將其特權的子集授予其他AA。AA的服務結構將根據各授權管理中心的具體功能和服務對象而定;典型的服務結構包括授權管理核心服務、屬性證書撤銷列表ACRL發布、證書存儲、控制臺以及受理審核等功能。
策略管理系統負責對系統的授權策略進行劃分管理和發布。通過對用戶、角色、資源、權限間的關聯定義,指定合理的、完備的訪問控制策略。輔助訪問控制系統完成對應用的授權決策。
訪問控制中心負責對具體的用戶應用資源進行授權審核,根據最終用戶針對特定的操作授權所提交的授權信息(屬性證書)連同對應的身份驗證信息(公鑰證書),并結合授權服務中心返回的授權結果,進行具體的應用訪問控制判斷。
授權信息目錄服務器(LDAP)負責發布用戶的屬性證書以及屬性證書撤銷列表ACRL,以供應用查找使用。
業務受理點是與最終電子政務應用用戶的接口,用戶通過業務受理點提出對資源的訪問請求。
3.2基于SAML的授權機制實現
在此,首先給出一個基于上述信任與授權服務系統的資源訪問控制流程示例。電子政務系統各應用子系統對具體的用戶實體提供了個性化采用授權服務的管理體系,因此各類社會機構有各自相對獨立的屬性權威機構。假設社保授權管理體系的授權中心為AA1,用戶想獲得有關社保服務,流程如下:
(1)登錄業務受理點,即通過策略實施點提交訪問資源的請求;
(2)業務受理點向RA請求驗證用戶身份,RA接受此業務,根據用戶類型——自然人,向自然人數字認證中心請求數字證書;
(3)自然人數字證書認證中心對用戶實體進行鑒別,向用戶頒發數字證書,生成SAML身份認證聲明;
(4)業務受理點得到身份認證聲明后,將該聲明提交給屬性權威——社保管理體系的授權中心AA1,申請對資源訪問的授權;
(5)授權中心AA1根據用戶的身份聲明,查詢授權信息目錄服務器,應用授權策略,生成用戶的屬性證書,發出SAML屬性聲明((4)(5)采用的是拉模式申請屬性證書,也可以采用推模式,即通過訪問控制中心來向AA1申請屬性證書,并將獲得的屬性證書推給業務受理點);
(6)業務受理點得到用戶的屬性聲明后,向策略決策點即訪問控制中心提交屬性申明,申請訪問應用服務;
(7)訪問控制系統根據用戶屬性和用戶身份判斷該用戶實體是否有執行所訪問服務的權限,然后向業務受理點發回SAML授權決策聲明;
(8)業務受理點根據授權決策聲明決定允許或拒絕用戶的訪問請求。
通過這個具體的訪問示例可以看出,圖2中的信任服務體系即相當于SAML中的鑒別權威,負責對用戶的身份進行鑒別驗證。用戶實體(自然人、機構或設備)通過業務受理點提出具體的資源訪問請求。在獲得對資源訪問的授權之前必須通過區域數字證書審核注冊中心RA提交身份認證請求。RA鑒別用戶身份,根據用戶實體的具體類型訪問相關的CA。CA完成證書的申請注冊、簽發和管理下級RA,通過數字認證系統對用戶身份進行鑒別,產生認證聲明。
授權服務體系即相當于SAML中的屬性權威。授權中心AA根據用戶的身份,負責對用戶相關屬性進行聲明,確認提供基于角色的屬性管理機制;通過對用戶、角色、權限和資源的合理劃分,為應用系統建立起一個完整的資源屬性管理體系,從而能夠為用戶頒發屬性證書,生成屬性聲明。
訪問控制中心即相當于SAML中的策略決策點,對用戶的權限進行審核,根據用戶的身份信息從AA處獲得用戶的屬性聲明,發出授權決策聲明。
業務受理點則對應于SAML中的策略執行點,接收用戶的請求,并接收來自PDP的授權決策信息,根據用戶對資源的訪問權限,負責對資源訪問控制的最終實施。
由上可以看出,整個授權管理服務體系完全遵循于SAML標準,允許政府機構對實體、特權以及權限進行聲明,從而可以通過XML文檔來定義政府機構服務對象的鑒定、授權、權限和會話信息,政務中所有支持SAML的應用和服務都可以獲得服務對象的信任和授權信息,使用SAML標準描述的信任和授權信息可以被信任域中的各個業務系統所共享。
4結束語
信任服務管理體系和授權服務管理體系是電子政務安全中的兩個重要基礎設施,SAML提出了一種通用的信任和授權標準架構,按照SAML標準構建的信任與授權系統能夠實現跨信任域的互操作,從而為電子政務提供更安全和靈活基礎設施體系。
參考文獻:
[1]JONGIL J. An XML-based single sign-on scheme supporting OSGi framework: proc.of International Conference on Consumer Electro-nics, ICCE 2005[C].[S.l.]:[s.n.], 2005:31-32.
[2]LOPEZ G, CANOVAS O, GOMEZ-SKARMETA A F. A heterogeneous network access service based on PERMIS and SAML[R]. Lecture Notes in Computer Science, 2005:55-72.
[3]LUO Changhang. Design of trust and authorization service platform based on SAML[J].Computer Engineering, 2005,31(13):118-120.
[4]WU Lijun, SU Kaile, YANG Zhihua. A role-based PMI security model for e-government[J]. Wuhan University Journal of Natural Sciences, 2005,10(1):329-332.
[5]SCOTT Candor, Jhon Kemp. SAML-core-2.0-os[EB/OL].[2005-03].http://docs.oasis-open.org/ security/SAML v2.0.
[6]Jhon Hughes, Scott andor. SAML-profiles-2.0-os[EB/OL].[2005-03].http://docs.oasis-open.org/ security/SAML v2.0.
[7]國家信息化工程研究中心.電子政務總體設計與技術實現[M]. 北京:電子工業出版社,2003.
[8]王西點,吳琦,王琨.電子政務中實現授權及訪問控制的研究[J].郵電設計技術,2004(7):50-53.
[9]吳鵬,吉逸.基于SAML的安全服務系統的設計[J].計算機應用研究,2004,21(11):127-129.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文”