專利名稱:統(tǒng)一身份認證系統(tǒng)中針對應(yīng)用權(quán)限的委托授權(quán)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息安全技術(shù)領(lǐng)域,尤其涉及統(tǒng)一身份認證系統(tǒng)中針對應(yīng)用權(quán)限的委 托授權(quán)方法。
背景技術(shù):
目前的統(tǒng)一身份認證系統(tǒng),大都是建立一個統(tǒng)一的單點登錄和訪問控制服務(wù)器, 所有接入統(tǒng)一身份認證系統(tǒng)的應(yīng)用系統(tǒng)都會跟這個服務(wù)器進行交互,獲取相應(yīng)的登錄信 息、會話信息、屬性信息或策略信息,以確定是用戶是否合法、是否對用戶授權(quán)、是否允許用 戶訪問應(yīng)用。在接入的時候,需要對應(yīng)用進行一定改造,如在應(yīng)用中加入通過超文本傳輸協(xié) 議頭屬性(HttpHeader)或應(yīng)用編程接口(API)調(diào)用獲取用戶屬性并進行授權(quán)的代碼。我 們把這種授權(quán)方式稱為基于屬性的授權(quán)方式。當(dāng)用戶實施統(tǒng)一身份認證系統(tǒng)后,就擁有了一次登錄,所有接入應(yīng)用都可以漫游 的便利,同時也提出了對應(yīng)用進行委托授權(quán)的需求。例如,用戶在某種情況下需要將某一應(yīng) 用系統(tǒng)的權(quán)限委托給另外一個人,讓其代理本人辦理某些事項,在原來未接入統(tǒng)一身份認 證系統(tǒng)的情況下,僅僅需要將該應(yīng)用系統(tǒng)的用戶名、密碼告訴被委托人即可。但在接入統(tǒng)一 身份認證系統(tǒng)后,直接告知用戶名、密碼的方式會導(dǎo)致被委托人在訪問被委托授權(quán)的應(yīng)用 時,還可以漫游其他所有接入的應(yīng)用,有可能包括郵件、財務(wù)系統(tǒng)等敏感應(yīng)用,產(chǎn)生隱私泄 漏的問題,這是委托人不希望看到的。為了解決這個問題,就要求統(tǒng)一身份認證系統(tǒng)能夠提供細化到應(yīng)用粒度權(quán)限甚至 是應(yīng)用內(nèi)部更細粒度權(quán)限的委托授權(quán)機制。這種委托授權(quán)機制的需求,不同于針對統(tǒng)一身 份認證系統(tǒng)本身的管理權(quán)限的委托管理,而是針對接入統(tǒng)一身份認證系統(tǒng)中應(yīng)用權(quán)限的委 托授權(quán)。而在現(xiàn)有的統(tǒng)一身份認證系統(tǒng)中,如Shibboleth,SUN的OpenSSO或Oracle的 Access Manager(訪問控制)等產(chǎn)品實現(xiàn)的統(tǒng)一身份認證系統(tǒng)中,最多只有對統(tǒng)一身份認 證系統(tǒng)本身的管理權(quán)限進行委托授權(quán)的方法,而并沒有實現(xiàn)對應(yīng)用系統(tǒng)進行委托授權(quán)的機 制。這是目前統(tǒng)一身份認證系統(tǒng)的委托授權(quán)功能一個不足之處。
發(fā)明內(nèi)容
本發(fā)明提供了一種統(tǒng)一身份認證系統(tǒng)中針對應(yīng)用權(quán)限的委托授權(quán)的方法,該方法 在避免改動現(xiàn)有的統(tǒng)一身份認證系統(tǒng)框架的基礎(chǔ)上,充分利用基于屬性的授權(quán)機制,實現(xiàn) 對接入的應(yīng)用進行委托授權(quán)的功能,解決了現(xiàn)有的統(tǒng)一身份認證系統(tǒng)不能對應(yīng)用進行委托 授權(quán)的不足之處?!N統(tǒng)一身份認證系統(tǒng)中針對應(yīng)用權(quán)限的委托授權(quán)的方法,包括以下步驟(1)將用戶的委托信息和委托接受信息表述成兩個屬性用于存儲委托辦理指定 應(yīng)用的委托授權(quán)信息的委托人的委托屬性(委托人的委托屬性記為delegate)和用于存 儲被委托人被委托指定應(yīng)用權(quán)限以及是否已經(jīng)接受委托的信息的被委托人的被委托屬性(被委托人的被委托屬性記為surrogate);(2)在所述的統(tǒng)一身份認證系統(tǒng)的身份信息庫中增加所述的委托人的委托屬性 (delegate)和所述的被委托人的被委托屬性(surrogate);(3)將所述的委托人的委托屬性(delegate)和所述的被委托人的被委托屬性 (surrogate)接入所述的指定應(yīng)用中,并傳遞到所述的指定應(yīng)用;(4)所述的指定應(yīng)用接入時,加入針對所述的委托人的委托屬性(delegate)和所 述的被委托人的被委托屬性(surrogate)進行授權(quán)的邏輯如果發(fā)現(xiàn)有對應(yīng)于所述的指定 應(yīng)用的委托授權(quán)的設(shè)置,就按照委托授權(quán)的設(shè)置進行新的授權(quán),否則按原有的用戶進行授 權(quán)。所述的步驟(3)中,通過超文本傳輸協(xié)議頭屬性(HttpHeader)或應(yīng)用編程接口 (API)的方式將所述的委托人的委托屬性(delegate)和所述的被委托人的被委托屬性 (surrogate)傳遞到所述的應(yīng)用。所述的統(tǒng)一身份認證系統(tǒng)的身份信息庫通常是基于輕量目錄訪問協(xié)議(LDAP)實 現(xiàn)。步驟(1)中將用戶的委托信息和委托接受信息表述成兩個屬性可以通過委托管 理模塊實現(xiàn)。所述的委托管理模塊,分為委托人模塊和被委托人模塊。通過委托人模塊,委 托人可以管理委托信息,如進行委托或取消委托;通過被委托人模塊,被委托人可以接受或 拒絕委托。委托信息和委托接受等相關(guān)信息記錄到上述的委托屬性中。本發(fā)明的技術(shù)方案通過委托管理模塊,將用戶的委托信息和委托接受信息表述成 兩個屬性,利用現(xiàn)有的統(tǒng)一身份認證系統(tǒng)的屬性傳遞機制將這兩個屬性傳遞給接入的應(yīng) 用,并在應(yīng)用接入改造時加入針對委托管理屬性進行授權(quán)的邏輯,從而實現(xiàn)針對應(yīng)用的委 托授權(quán)。本發(fā)明具有以下有益的技術(shù)效果本發(fā)明的統(tǒng)一身份認證系統(tǒng)中針對應(yīng)用權(quán)限的委托授權(quán)的方法,提供了在統(tǒng)一身 份認證系統(tǒng)中針對應(yīng)用的委托管理機制,同時防止了被委托人非法訪問委托人的其他敏感 應(yīng)用,保護了用戶的隱私,從而促進了用戶對統(tǒng)一身份認證系統(tǒng)的用戶體驗和接受程度。此外,本發(fā)明的統(tǒng)一身份認證系統(tǒng)中針對應(yīng)用權(quán)限的委托授權(quán)的方法,對現(xiàn)有的 統(tǒng)一身份認證系統(tǒng)改動很小或不需要進行改動,僅僅需要在應(yīng)用接入時增加一段針對委托 管理屬性進行授權(quán)的邏輯。這樣帶來的好處是只需要很小的集成開發(fā)成本,就可以實現(xiàn)委 托管理的強大功能,有利于該方式的推廣應(yīng)用。
圖1為本發(fā)明方法的委托管理模塊中的委托人管理模塊的示意圖;圖2為本發(fā)明方法的委托管理模塊中的被委托人管理模塊的示意圖;圖3為實現(xiàn)本發(fā)明方法的流程圖。
具體實施例方式如附圖1 3所示,統(tǒng)一身份認證系統(tǒng)中針對應(yīng)用權(quán)限的委托授權(quán)的方法,包括以 下步驟
4
(1)委托人通過委托管理模塊選擇需要委托授權(quán)的應(yīng)用或應(yīng)用內(nèi)部權(quán)限,所述的 應(yīng)用或應(yīng)用權(quán)限來自于統(tǒng)一身份認證系統(tǒng)的授權(quán)管理模塊,或由用戶進行自定義。(2)委托人選擇被委托人,并確定將選擇的應(yīng)用權(quán)限授權(quán)委托給被委托人。(3)委托管理模塊在委托人確定委托之后,會在委托人的委托屬性(delegate)中 添加一條記錄,該條記錄記錄了所選擇的應(yīng)用的URL、被委托人的標識(例如學(xué)工號)及被 委托人是否已經(jīng)接受。例如http//www, fdc. ζju. edu. cn :80/fcc/UniLoRin. asp I02&false ;在被委托人的被委托屬性(surrogate)中也添加一條記錄,該條記錄同樣會記錄 所選擇的應(yīng)用的URL、委托人的標識(例如學(xué)工號)及被委托人是否已經(jīng)接受。例如http //www, fdc. ζ iu. edu. cn :80/fcc/UniLogin. asp I Ol&false ;(4)委托人委托權(quán)限成功之后,在被委托人的委托管理頁面會出現(xiàn)要求被委托人 選擇是否接受委托的選項,被委托人可選擇接受或者拒絕這項委托。當(dāng)被委托人拒絕委托,上述delegate和surrogate信息中的最后一項信息會修改 為不接受(false),那么,在委托人的頁面中,會顯示被委托人已經(jīng)拒絕了這項委托。當(dāng)被委托人接受委托,上述delegate和surrogate信息中的最后一項信息會修改 為接受(true),此時,被委托人就能進入該應(yīng)用,若之前被委托人沒有進入該應(yīng)用的權(quán)限, 統(tǒng)一身份認證系統(tǒng)會為被委托人創(chuàng)建被分配進入該應(yīng)用的權(quán)限,則被委托人的應(yīng)用頁面中 會出現(xiàn)一個進入該應(yīng)用的鏈接。(統(tǒng)一身份認證系統(tǒng)會自動根據(jù)配置好的用戶權(quán)限,會在應(yīng) 用管理的頁面中顯示具有進入該應(yīng)用權(quán)限的應(yīng)用鏈接)。(5)被委托人進入該應(yīng)用后,應(yīng)用會通過獲取HttpHeader或通過調(diào)用對應(yīng)的API 從統(tǒng)一身份認證系統(tǒng)中獲取相關(guān)的屬性信息,在用戶的surrogate信息中取到委托人的標 識,如步驟(3)例子中的‘01’,應(yīng)用會根據(jù)該標示符,將委托人在該應(yīng)用的權(quán)限賦予被委托 人,實現(xiàn)應(yīng)用授權(quán)機制。(6)當(dāng)被委托人完成委托的事務(wù)之后,委托人可以在委托管理的頁面中刪除這項 委托,此時會刪除委托人的委托屬性(delegate)和被委托人的被委托屬性(surrogate)的 這項紀錄,同時,被委托人則無法再次進入被委托的應(yīng)用。如果之前他沒有該應(yīng)用的權(quán)限, 則在應(yīng)用管理的頁面中會刪除進入該應(yīng)用的鏈接。
權(quán)利要求
一種統(tǒng)一身份認證系統(tǒng)中針對應(yīng)用權(quán)限的委托授權(quán)的方法,其特征在于,包括以下步驟(1)將用戶的委托信息和委托接受信息表述成兩個屬性用于存儲委托辦理指定應(yīng)用的委托授權(quán)信息的委托人的委托屬性和用于存儲被委托人被委托指定應(yīng)用權(quán)限以及是否已經(jīng)接受委托的信息的被委托人的被委托屬性;(2)在所述的統(tǒng)一身份認證系統(tǒng)的身份信息庫中增加所述的委托人的委托屬性和所述的被委托人的被委托屬性;(3)將所述的委托人的委托屬性和所述的被委托人的被委托屬性接入所述的指定應(yīng)用中,并傳遞到所述的指定應(yīng)用;(4)所述的指定應(yīng)用接入時,加入針對所述的委托人的委托屬性和所述的被委托人的被委托屬性進行授權(quán)的邏輯如果發(fā)現(xiàn)有對應(yīng)于所述的應(yīng)用的委托授權(quán)的設(shè)置,就按照委托授權(quán)的設(shè)置進行新的授權(quán),否則按原有的用戶進行授權(quán)。
2.如權(quán)利要求1所述的方法,其特征在于所述的步驟(3)中,通過超文本傳輸協(xié)議頭 屬性或應(yīng)用編程接口的方式將所述的委托人的委托屬性和所述的被委托人的被委托屬性 傳遞到所述的指定應(yīng)用。
3.如權(quán)利要求1所述的方法,其特征在于所述的統(tǒng)一身份認證系統(tǒng)的身份信息庫通 常是基于輕量目錄訪問協(xié)議實現(xiàn)。
全文摘要
本發(fā)明公開了一種統(tǒng)一身份認證系統(tǒng)中針對應(yīng)用權(quán)限的委托授權(quán)的方法,通過委托管理模塊,將用戶的委托信息和委托接受信息表述成兩個屬性,利用現(xiàn)有的統(tǒng)一身份認證系統(tǒng)的屬性傳遞機制將這兩個屬性傳遞給接入的應(yīng)用,并在應(yīng)用接入改造時加入針對委托管理屬性進行授權(quán)的邏輯,從而實現(xiàn)的針對應(yīng)用的委托授權(quán);同時,采用本發(fā)明的方法,可防止被委托人非法訪問委托人的其他敏感應(yīng)用,從而保護用戶的隱私;此外,本發(fā)明的方法,對現(xiàn)有的統(tǒng)一身份認證系統(tǒng)改動很小或不需要進行改動,因此只需要很小的集成開發(fā)成本,就可以實現(xiàn)委托管理的強大功能,有利于該方式的推廣應(yīng)用。
文檔編號H04L29/08GK101895533SQ201010218968
公開日2010年11月24日 申請日期2010年7月5日 優(yōu)先權(quán)日2010年7月5日
發(fā)明者劉維紅, 方君理, 羊杰, 蘇斌, 蔣淑紅, 阮林磊 申請人:浙江匯信科技有限公司