本發(fā)明涉及軟件分層架構(gòu)技術(shù),尤其涉及一種通用的信息發(fā)布權(quán)限管理方法。
背景技術(shù):
計算機網(wǎng)絡(luò)能有效的實現(xiàn)資源共享,但資源共享和信息安全是一對矛盾。當(dāng)前企業(yè)的信息化和管理的網(wǎng)絡(luò)化成為趨勢,越來越多的企業(yè)構(gòu)建自己的網(wǎng)絡(luò)化信息管理平臺。但將管理信息放到網(wǎng)絡(luò)上,如何管理分配和控制用戶的權(quán)限成為影響管理信息安全性的重要問題。
網(wǎng)絡(luò)的權(quán)限控制是針對網(wǎng)絡(luò)非法操作所提出的一種安全保護(hù)措施。各類網(wǎng)絡(luò)化信息系統(tǒng)的開發(fā)中必然會涉及權(quán)限控制問題。在信息系統(tǒng)的安全管理方面,目前企業(yè)級信息發(fā)布安全應(yīng)用大部分都是多級管理員機制,即應(yīng)用系統(tǒng)存在著多級管理員,上層管理員的功能包含下層管理員的功能并可以對下層管理員進(jìn)行一些權(quán)限的控制。對于授權(quán)粒度較粗的開放或半開放系統(tǒng),他們一方面不可以進(jìn)行無限制的管理級別擴充,另一方面,對于每個級別的管理員不能方便的變化功能選項,失去了原本管理員的靈活性,并且還增加了服務(wù)器的負(fù)擔(dān)。
技術(shù)實現(xiàn)要素:
為了解決以上技術(shù)問題,本發(fā)明提出了一種通用的信息發(fā)布權(quán)限管理方法。目的是提供用戶信息發(fā)布權(quán)限控制的功能,避免操作繁瑣、不便。
本發(fā)明通過為系統(tǒng)中各模塊各欄目定義一組功能集合,這組集合定義了各欄目下的所有相關(guān)操作,從而基于這組集合標(biāo)準(zhǔn)可以實現(xiàn)功能的擴展和權(quán)限的靈活分配。
本發(fā)明的技術(shù)方案是:
一種通用的信息發(fā)布權(quán)限控制方法,包含以下步驟:
A、結(jié)構(gòu)定義。
B、權(quán)限的分配。
C、運行時權(quán)限接口API。
在步驟A,為了實現(xiàn)系統(tǒng)模塊功能權(quán)限控制,需要先定義整個系統(tǒng)模塊功能集。定義結(jié)構(gòu)包含如下幾個部分:
(5)劃分系統(tǒng)模塊。
(6)定義各模塊下各欄目L={i0,i1,i2,…,in}。
(7)定義功能集合OP={a0,a1,a2,……,an},其中相對應(yīng)的權(quán)限特征值為1(20)、
2(21)、4(22)…、2n(2n)。
(8)定義欄目下對應(yīng)功能集PS(Ln)={a0,a1,a2,a3,…}。
其中,特別的,“欄目”,就是一類相同屬性內(nèi)容展現(xiàn)的形式,例如公司新聞、動態(tài)分別代表一個欄目。
其中“定義功能集合op”,定義區(qū)分通用功能和個性化功能兩部分,通用功能(如增加、刪除、編輯、查看詳情……),個性化功能(如審核、發(fā)布、授權(quán)……),具體描述如下:
其中”定義欄目下對應(yīng)功能集“,包含兩個操作:“獲取功能權(quán)限通用的操作集”、“保存?zhèn)€性化操作集合”。具體描述如下:
在步驟B,通過操作步驟A中定義的欄目權(quán)限功能集合,來實現(xiàn)權(quán)限的分配。步驟B可以給用戶、組織或角色不同的維度分配權(quán)限。分配引用通配原則,簡化操作,靈活方便。分配的具體描述如下:
在步驟C,當(dāng)系統(tǒng)中運行期間,通過操作步驟B設(shè)置的權(quán)限信息,來實現(xiàn)具體用戶對信息欄目的操作和訪問。具體描述如下:
本發(fā)明的具有功能和有益效果:
本發(fā)明通過建立由細(xì)到粗的用戶、組織和角色三個不同維度授權(quán)機制,實現(xiàn)對權(quán)限操作的細(xì)粒度化管理和用戶對數(shù)據(jù)瀏覽權(quán)限的個性化定制,不但通過數(shù)據(jù)過濾,降低了操作和使用的難度,而且通過支持按類授權(quán)功能,實現(xiàn)了權(quán)限的聚合和復(fù)用。通過使用資源管理器技術(shù),解決了在多種類、多級別用戶環(huán)境系統(tǒng)的擴展性問題。不但較好解決了由于權(quán)限粒度過粗帶來的安全性低、操作復(fù)雜缺點,而且還通過減少數(shù)據(jù)傳輸量,減輕了服務(wù)器和網(wǎng)絡(luò)的負(fù)擔(dān)。
附圖說明
圖1是為本發(fā)明提供的信息發(fā)布權(quán)限控制方法示意圖。
具體實施方式
為了更好的解釋本發(fā)明的內(nèi)容,下面通過實施例對本發(fā)明進(jìn)行更加詳細(xì)的闡述:
針對目前企業(yè)應(yīng)用中多級用戶管理不靈活的問題,利用二進(jìn)制的特性實現(xiàn)權(quán)限管理的簡單判別,利用角色、組織與用戶管理實現(xiàn)用戶功能的靈活性。本發(fā)明以權(quán)限特征碼為基礎(chǔ)的資源權(quán)限控制運算與二進(jìn)制位運算相結(jié)合,提出一種新的資源權(quán)限控制辦法。
本發(fā)明其解析的示意圖如圖1所示,以用戶1的身份對本實施例的方法進(jìn)行解釋說明,其包括如下步驟:
(1)結(jié)構(gòu)定義;
(2)權(quán)限的分配;
(3)運行時權(quán)限接口API;
假設(shè)某欄目信息公司新聞,需要控制以下權(quán)限:
(1)只有個別的用戶可以錄入、審核、管理欄目;
(2)部分部門、個別角色人員可以瀏覽讀取該欄目信息。
步驟一:功能權(quán)限二進(jìn)制定義。
步驟二:將欄目公司新聞設(shè)置權(quán)限,選擇對應(yīng)的個別用戶,組織、角色分別設(shè)置功能權(quán)限,保存設(shè)置權(quán)限信息。
保存接口方法
public string SaveShareTargets(Dictionary<string,string>para)
步驟三:權(quán)限條件的解析。當(dāng)用戶訪問欄目公司新聞時,首先調(diào)用基于該欄目權(quán)限設(shè)置信息的訪問接口,將用戶ID、用戶組織ID、用戶所屬角色I(xiàn)D傳到方法GetUserAcl中,該接口方法調(diào)用基于屬性的權(quán)限對象解析引擎,對定義的二進(jìn)制權(quán)限碼進(jìn)行解析,根據(jù)與運算結(jié)果,對應(yīng)的功能權(quán)限碼,1:具有權(quán)限,0:無該權(quán)限。將結(jié)果返回給用戶。
獲取登陸用戶權(quán)限接口方法
public string GetUserAcl(Dictionary<string,string>para)
步驟四:根據(jù)返回結(jié)果,訪問資源。