專利名稱:基于層次結構的權限處理系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及計算機系統(tǒng)設計中的權限系統(tǒng),特別是涉及基于層次結構的權限處理系統(tǒng)。
背景技術:
每一個成熟的軟件系統(tǒng),權限管理是必不可少的。雖然權限應用很廣,但只是作為其他系統(tǒng)的附屬系統(tǒng),所以對這個部分的重視程度不高,導致系統(tǒng)制作完成以后,升級和管理都極其復雜,導致整個系統(tǒng)運行效率低下,重構極其復雜。嚴重影響用戶軟件操作熟練程度,增加管理人員工作量;并且權限控制粒度不夠細,只能控制到頁面級,沒有進行層次分類,管理不方便。
發(fā)明內容
本發(fā)明的目的就是為了克服上述現有技術存在的缺陷而提供涉及基于層次結構的權限處理系統(tǒng)。
本發(fā)明的目的可以通過以下技術方案來實現基于層次結構的權限處理系統(tǒng),其特征在于,包括模塊部分、角色部分、用戶部分,權限判斷部分,該系統(tǒng)通過模塊部分添加模塊,并通過功能列表給相應的模塊設置相應的功能;該系統(tǒng)通過角色部分添加角色,并給相應的角色設置相應模塊的相應功能的操作權限;該系統(tǒng)通過用戶部分添加用戶,并給相應用戶設置相應角色;所述的權限判斷部分通過角色將用戶和模塊的功能的操作權限關聯起來。
所述的權限判斷部分獲取用戶對應的所有角色對應的模塊權限,如果沒有用戶和模塊的關系數據,則該用戶沒有操作權限,如果有數據,則這進一步根據用戶的操作方式,找到對應的該操作方式的數據,如果有任何一個角色對應的操作數據為一,則該用戶有該操作方式的操作權限,否則沒有。
所述的模塊部分只有一個根模塊,其他的模塊代碼都是這個根模塊的子模塊,所有的模塊一起構成一個多層的樹型結構;根節(jié)點的父結點代碼為零;任何一個有子節(jié)點的節(jié)點都不能成為一個帶功能的模塊節(jié)點;任何一個帶功能的模塊結點也不能成為其他節(jié)點的父結點;所有的節(jié)點都不會真的刪除,只是會標志刪除;刪除某個模塊某項功能,相應的與這個模塊有關系的角色的這個功能操作權限都會被刪除。
所述的角色部分只有一個根角色,其他的角色都是這個根角色的子角色,所有的角色一起構成一個多層的樹型結構;根節(jié)點的父結點代碼為零;任何一個有子節(jié)點的角色都不能成為一個有模塊操作權限的角色節(jié)點;任何一個模塊功能操作權限的角色結點也不能成為其他節(jié)點的父結點;所有的節(jié)點都不會真的刪除,只是會標志刪除。
所述的模塊具有一個唯一的代碼標志,并具有一個VARCHAR類型的功能字段,該字段的每一位對應功能列表中的相應功能。
所述的角色具有一個唯一的代碼標志,并具有一個VARCHAR類型的功能權限字段。
所述的角色選擇模塊,并選擇相應的功能。
所述的用戶可以有一個或多個角色,該用戶具有所有對應角色的權限;所述的用戶選擇角色。
與現有技術相比,本發(fā)明粒度更細,可以控制到每一步操作;可定制性高上由于可進行層次結構分類,使得用戶可以根據自己的需要和習慣來組織結構,用戶操作起來更加方便;減少耦合度,引入角色,使功能模塊的操作權限不直接和用戶相關,只給角色授權,用戶擁有相應的角色;降低了系統(tǒng)操作和管理的復雜度,使系統(tǒng)升級更加方便;程序制作人員在重構系統(tǒng)時,能夠經量少的修改代碼,達到新的需求。
圖1為本發(fā)明的結構圖;圖2為本發(fā)明的總體結構圖;圖3為本發(fā)明的邏輯關系圖;圖4為本發(fā)明的角色和模塊關系圖;
圖5為本發(fā)明的用戶和角色關系圖;圖6為本發(fā)明的權限判斷部分的原理框圖。
具體實施例方式
下面結合附圖對本發(fā)明作進一步說明。
如圖1~圖6所示本實施例分為兩個大的模塊,一個是權限的規(guī)則制訂,一個是這些規(guī)則的應用。
A、模塊管理添加模塊,并給相應的模塊設置相應的功能。
B、角色管理添加角色,比給相應的角色設置某些模塊的相應的操作權限。
C、用戶管理添加用戶,并給用戶設置角色。
各個程序的關系見圖2A、DataBase存放角色,模塊以及用戶信息。
B、角色和模塊的權限設置授權給角色模塊功能的操作權限。
C、用戶與角色的關系的設置給用戶分配相應的角色。
D、用戶與模塊的關系的提取通過角色將用戶和模塊功能的操作權限關聯起來。
E、判斷用戶與模塊的關系給與用戶相應的模塊操作權限。
F、其他的添加基礎數據到數據庫中。
系統(tǒng)的總體邏輯如圖3,系統(tǒng)的搭建 模塊—>角色—>用戶A、添加模塊,設置模塊的操作方式,每個模塊都有一個唯一的代碼標志。
B、添加角色,給角色授權,角色模塊關系設置,每個角色都有一個唯一的代碼標志。
C、添加用戶,給用戶賦予角色,用戶角色關系設置。
D、用戶的權限,通過角色關聯出用戶和模塊之間的關系。
E、用戶權限的判斷,獲取用戶所有角色對應的模塊權限,如果沒有用戶和模塊的關系數據,則該用戶沒有操作權限,如果有數據,則這進一步根據用戶的操作方式,找到對應的該操作方式的數據,如果有任何一個角色對應的操作數據為一,則該用戶有該操作方式的操作權限,否則沒有。
模塊管理A、整個系統(tǒng)只有一個根模塊,其他的模塊代碼都是這個根模塊的子模塊,所有的模塊一起構成一個多層的樹型結構。
B、根節(jié)點的父結點代碼為0。
C、任何一個有子節(jié)點的節(jié)點都不能成為一個帶功能的模塊節(jié)點;任何一個帶功能的模塊結點也不能成為其他節(jié)點的父結點。
D、所有的節(jié)點都不會真的刪除,只是會標志刪除。
E、刪除某個模塊某項功能,相應的與這個模塊有關系的角色的這個功能操作權限都會被刪除。
角色管理A、這里的角色管理可以這樣理解對于沒有模塊操作權限的角色,可以理解成為部門,或者某一個組織。有模塊操作權限的角色才是真正意義上的角色B、整個系統(tǒng)只有一個根角色,其他的角色都是這個根角色的子角色,所有的角色一起構成一個多層的樹型結構。
C、根節(jié)點的父結點代碼為0。
D、任何一個有子節(jié)點的角色都不能成為一個有模塊操作權限的角色節(jié)點;任何一個模塊功能操作權限的角色結點也不能成為其他節(jié)點的父結點。
E、所有的節(jié)點都不會真的刪除,只是會標志刪除。
角色與模塊關系設置各主模塊之間的邏輯關系如圖4A、在模塊表中,有個字段標明該模塊的功能,該字段是一個VARCHAR類型(每位都是0或1)。每一位的位置對應功能類列表表中的某一項功能,0表示沒有,1表示有。
B、在角色模塊關系表中,也有一個字段標明功能權限的模塊。該字段是和模塊表中的模塊功能字段一樣的,但是只有模塊表中有的功能,在相應的角色模塊表中才可能有,或沒有相應的功能C、角色選擇模塊,并選擇相應的功能。
用戶管理角色與用戶關系設置各主模塊之間的邏輯關系如圖5A、每個用戶都可以有一個或N個角色,在判斷的時候任何一個角色有的權限,該用戶就有。
B、用戶選擇角色。
權利要求
1.基于層次結構的權限處理系統(tǒng),其特征在于,包括模塊部分、角色部分、用戶部分,權限判斷部分,該系統(tǒng)通過模塊部分添加模塊,并通過功能列表給相應的模塊設置相應的功能;該系統(tǒng)通過角色部分添加角色,并給相應的角色設置相應模塊的相應功能的操作權限;該系統(tǒng)通過用戶部分添加用戶,并給相應用戶設置相應角色;所述的權限判斷部分通過角色將用戶和模塊的功能的操作權限關聯起來。
2.根據權利要求1所述的基于層次結構的權限處理系統(tǒng),其特征在于,所述的權限判斷部分獲取用戶對應的所有角色對應的模塊權限,如果沒有用戶和模塊的關系數據,則該用戶沒有操作權限,如果有數據,則這進一步根據用戶的操作方式,找到對應的該操作方式的數據,如果有任何一個角色對應的操作數據為一,則該用戶有該操作方式的操作權限,否則沒有。
3.根據權利要求1所述的基于層次結構的權限處理系統(tǒng),其特征在于,所述的模塊部分只有一個根模塊,其他的模塊代碼都是這個根模塊的子模塊,所有的模塊一起構成一個多層的樹型結構;根節(jié)點的父結點代碼為零;任何一個有子節(jié)點的節(jié)點都不能成為一個帶功能的模塊節(jié)點;任何一個帶功能的模塊結點也不能成為其他節(jié)點的父結點;所有的節(jié)點都不會真的刪除,只是會標志刪除;刪除某個模塊某項功能,相應的與這個模塊有關系的角色的這個功能操作權限都會被刪除。
4.根據權利要求1所述的基于層次結構的權限處理系統(tǒng),其特征在于,所述的角色部分只有一個根角色,其他的角色都是這個根角色的子角色,所有的角色一起構成一個多層的樹型結構;根節(jié)點的父結點代碼為零;任何一個有子節(jié)點的角色都不能成為一個有模塊操作權限的角色節(jié)點;任何一個模塊功能操作權限的角色結點也不能成為其他節(jié)點的父結點;所有的節(jié)點都不會真的刪除,只是會標志刪除。
5.根據權利要求1所述的基于層次結構的權限處理系統(tǒng),其特征在于,所述的模塊具有一個唯一的代碼標志,并具有一個VARCHAR類型的功能字段,該字段的每一位對應功能列表中的相應功能。
6.根據權利要求1所述的基于層次結構的權限處理系統(tǒng),其特征在于,所述的角色具有一個唯一的代碼標志,并具有一個VARCHAR類型的功能權限字段。
7.根據根據權利要求6所述的基于層次結構的權限處理系統(tǒng),其特征在于,所述的角色選擇模塊,并選擇相應的功能。
8.根據權利要求1所述的基于層次結構的權限處理系統(tǒng),其特征在于,所述的用戶可以有一個或多個角色,該用戶具有所有對應角色的權限;所述的用戶選擇角色。
全文摘要
本發(fā)明涉及基于層次結構的權限處理系統(tǒng),包括模塊部分、角色部分、用戶部分,權限部分,該系統(tǒng)通過模塊部分添加模塊,并通過功能列表給相應的模塊設置相應的功能;該系統(tǒng)通過角色部分添加角色,并給相應的角色設置相應模塊的相應功能的操作權限;該系統(tǒng)通過用戶部分添加用戶,并給相應用戶設置相應角色;所述的權限部分通過角色將用戶和模塊的功能的操作權限關聯起來。與現有技術相比,本發(fā)明具有粒度細、可定制性高、耦合度少等優(yōu)點。
文檔編號G06F17/30GK101093524SQ200610028060
公開日2007年12月26日 申請日期2006年6月22日 優(yōu)先權日2006年6月22日
發(fā)明者陳海華, 金駿 申請人:上海新納廣告?zhèn)髅接邢薰?