本發(fā)明涉及云計算和身份認證、訪問控制技術(shù)領域,具體涉及一種基于SAML和XACML的云計算統(tǒng)一身份認證的方法。
背景技術(shù):
云計算經(jīng)過幾年的醞釀和發(fā)展,時至今日已成為當前業(yè)界乃至全社會關注的焦點和熱點,云計算時代被業(yè)界廣泛認為是繼PC和互聯(lián)網(wǎng)之后的第三次IT浪潮。
云計算自身具備的高性能、低成本、高可靠性等特點能極大地提高IT資源的利用率,云計算技術(shù)也成為新一代信息技術(shù)變革和業(yè)務應用模式變革的核心,核心應用正從傳統(tǒng)的IT架構(gòu)向云計算架構(gòu)轉(zhuǎn)變。
將云計算技術(shù)及理念應用于安全領域已成為各個安全廠商積極研究的課題,通過對安全設施資源進行云化,形成安全能力資源池,并通過網(wǎng)絡為IT環(huán)境提供可彈性調(diào)度、按需訂購的安全服務,實現(xiàn)安全即服務的模式。
技術(shù)實現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題是:本發(fā)明針對以上問題,提供一種基于SAML和XACML的云計算統(tǒng)一身份認證的方法。主要用于解決云計算下諸多應用平臺中用戶的身份認證和管理問題,依據(jù)SAML和XACML規(guī)范,實現(xiàn)多平臺下用戶身份認證的集中管理,以避免數(shù)字證書的重復發(fā)放、重復認證、用戶使用成本高、使用繁瑣等問題的發(fā)生。負責完成用戶與虛擬對象的關聯(lián)管理,對映射后實體對象的權(quán)限進行定義,限定其訪問控制權(quán)限。將身份認證和所有權(quán)限的管理集中到統(tǒng)一身份認證模塊處理,認證流程安全穩(wěn)定、可靠高效,有效解決了云計算下諸多應用平臺的統(tǒng)一身份認證和訪問控制權(quán)限的管理控制問題。
本發(fā)明所采用的技術(shù)方案為:
一種基于SAML和XACML的云計算統(tǒng)一身份認證的方法,所述方法通過使用SAML標準定義身份提供者和服務提供者,構(gòu)成不同的安全域,實現(xiàn)在不同的安全域之間交換認證和授權(quán)數(shù)據(jù);并通過使用XACML來實現(xiàn)請求/響應的通用訪問控制策略和執(zhí)行授權(quán)策略的框架,實現(xiàn)云計算環(huán)境中訪問控制策略的執(zhí)行,從而實現(xiàn)云計算的統(tǒng)一身份認證和權(quán)限訪問控制。
所述方法通過將SAML的構(gòu)造、解析、簽名、加密功能融合在一起,形成一個標準的SAML請求,然后由客戶端向服務器端發(fā)送SAML請求,再由服務器返回SAML響應。
所述的SAML請求,是采用國產(chǎn)密碼技術(shù)來實現(xiàn)的X.509證書,通過在SAML中定義了一個XML簽名元素以標識認證中心,該元素包含一個基于國產(chǎn)密碼算法的帶有公鑰、到期日和使用策略的X.509證書;所述XML簽名還包含簽名值本身,簽名值是由認證中心為元素內(nèi)容生成的。
所述的XACML訪問控制策略,是基于國際標準的安全策略,采用統(tǒng)一的策略描述語言。
所述方法通過SAML和XACML兩種技術(shù)融合,XACML和SAML協(xié)同工作,SAML定義安全系統(tǒng)之間的共享授權(quán)信息,使用XACML描述政策的規(guī)則引擎,通過檢查已建立的規(guī)則并提示與之相符的行為的程序,將授權(quán)信息與已建立的標準比較以判定用戶權(quán)限。
本發(fā)明的有益效果為:
本發(fā)明依據(jù)SAML和XACML規(guī)范,實現(xiàn)多平臺下用戶身份認證的集中管理,以避免數(shù)字證書的重復發(fā)放、重復認證、用戶使用成本高、使用繁瑣等問題的發(fā)生;負責完成用戶與虛擬對象的關聯(lián)管理,對映射后實體對象的權(quán)限進行定義,限定其訪問控制權(quán)限;將身份認證和所有權(quán)限的管理集中到統(tǒng)一身份認證模塊處理,認證流程安全穩(wěn)定、可靠高效,有效解決了云計算下諸多應用平臺的統(tǒng)一身份認證和訪問控制權(quán)限的管理控制問題。
附圖說明
圖1為云計算統(tǒng)一身份認證系統(tǒng)應用部署示意圖。
具體實施方式
下面根據(jù)說明書附圖,結(jié)合具體實施方式對本發(fā)明進一步說明:
實施例1
如圖1所示,一種基于SAML和XACML的云計算統(tǒng)一身份認證的方法,所述方法通過使用SAML標準定義身份提供者(IP:Identity Provider)和服務提供者(SP:Service Provider),構(gòu)成不同的安全域,實現(xiàn)在不同的安全域(security domain)之間交換認證和授權(quán)數(shù)據(jù);并通過使用XACML來實現(xiàn)請求/響應的通用訪問控制策略和執(zhí)行授權(quán)策略的框架,實現(xiàn)云計算環(huán)境中訪問控制策略的執(zhí)行,從而實現(xiàn)云計算的統(tǒng)一身份認證和權(quán)限訪問控制。
所述的XACML是一種用于決定請求/響應的通用訪問控制策略語言和執(zhí)行授權(quán)策略的框架,可廣泛應用于云計算的分布式環(huán)境中,主要用于訪問控制策略等安全政策的描述,也就是安全應用信息訪問權(quán)限的控制。
實施例2
在實施例1的基礎上,本實施例所述方法通過將SAML的構(gòu)造、解析、簽名、加密等功能融合在一起,形成一個標準的SAML請求,然后由客戶端向服務器端發(fā)送SAML請求,再由服務器返回SAML響應。
數(shù)據(jù)的傳輸以符合SAML規(guī)范的XML格式表示。SAML依靠SSL、X.509等完善的安全標準,來保護SAML源站點和目標站點之間通信的安全。源站點和目標站點之間的所有通信都經(jīng)過了加密。并且使用數(shù)字證書確保參與SAML交互的雙方站點都能驗證對方的身份。
實施例3
在實施例1或2的基礎上,本實施例所述的SAML請求,是采用國產(chǎn)密碼技術(shù)來實現(xiàn)的X.509證書,替換原有的RSA等國際公開算法,通過在SAML中定義了一個XML簽名(XML Signature)元素以標識認證中心,該元素包含一個基于國產(chǎn)密碼算法的帶有公鑰、到期日和使用策略的X.509證書;所述XML簽名還包含簽名值本身,簽名值是由認證中心為元素內(nèi)容生成的??梢允褂肵509證書中權(quán)威機構(gòu)的公鑰信息來驗證簽名。這樣能夠保證信息的安全性、有效性和完整性。
實施例4
在實施例3的基礎上,本實施例所述的XACML訪問控制策略,是基于國際標準的安全策略,采用統(tǒng)一的策略描述語言,提高了XACML能適應多種應用環(huán)境,支持廣泛的數(shù)據(jù)類型和規(guī)則聯(lián)合算法,策略表達能力很強,可用來描述各種復雜的和細粒度的訪問控制安全需求,提高了Web環(huán)境下不同組織之間協(xié)同工作的效率。
實施例5
在實施例4的基礎上,本實施例所述方法通過SAML和XACML兩種技術(shù)融合,XACML和SAML協(xié)同工作,SAML定義安全系統(tǒng)之間的共享授權(quán)信息,例如用戶密碼和安全檢查,使用XACML描述政策的規(guī)則引擎,通過檢查已建立的規(guī)則并提示與之相符的行為的程序,將授權(quán)信息與已建立的標準比較以判定用戶權(quán)限。通過云計算中身份認證和訪問控制權(quán)限的統(tǒng)一融合,實現(xiàn)了云計算中多應用系統(tǒng)的集中登錄和管控。
實施例6
有一個云計算中心,其中部署有自動化辦公系統(tǒng)、行政審批系統(tǒng)、項目管理系統(tǒng)等等諸多的應用,但每一項應用均需要采用安全的方式登錄,并進行權(quán)限的控制,如果用戶每使用一個新的系統(tǒng)就需要登錄一次,操作繁瑣的同時也不便于集中管控。
通過部署使用云計算統(tǒng)一身份認證系統(tǒng),可以將所有系統(tǒng)按照SAML和XACML標準,進行用戶統(tǒng)一身份認證和訪問權(quán)限控制的集中管控。在使用過程中采用國產(chǎn)密碼算法的數(shù)字證書,實現(xiàn)了SSL加密加密通道,確保了客戶端和服務器端身份認證交互數(shù)據(jù)的安全。
如果客戶端所提共的信息,和服務器端的不能一致,則表明客戶登錄信息非法,自動斷開連接。
實施方式僅用于說明本發(fā)明,而并非對本發(fā)明的限制,有關技術(shù)領域的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術(shù)方案也屬于本發(fā)明的范疇,本發(fā)明的專利保護范圍應由權(quán)利要求限定。