基于用戶的安全策略在B/S中的完成(1)
發(fā)表時間:2024-06-02 來源:明輝站整理相關軟件相關文章人氣:
[摘要]在用ASP,JAVASCRIPT與ORACLE開發(fā)一套稅務系統(tǒng)的后臺管理軟件時,我們成功的實現(xiàn)了基于用戶組與用戶的安全策略,并在靈活性,安全性方面達到了較好的效果。我們將分存貯結(jié)構(gòu),菜單管理,權(quán)限分配,安全檢查四個方面將基于用戶的安全策略在B/S中的實現(xiàn)介紹給大家。 1 存貯結(jié)構(gòu) 存貯結(jié)構(gòu)對于本系...
在用ASP,JAVASCRIPT與ORACLE開發(fā)一套稅務系統(tǒng)的后臺管理軟件時,我們成功的實現(xiàn)了基于用戶組與用戶的安全策略,并在靈活性,安全性方面達到了較好的效果。我們將分存貯結(jié)構(gòu),菜單管理,權(quán)限分配,安全檢查四個方面將基于用戶的安全策略在B/S中的實現(xiàn)介紹給大家。
1 存貯結(jié)構(gòu)
存貯結(jié)構(gòu)對于本系統(tǒng)來說就是數(shù)據(jù)庫表的結(jié)構(gòu)主要由以下幾個表:
A.菜單表(CDB)
字段名
字段說明
類型
備注
CDBH
菜單編號
NUMBER(3)
非空主鍵
FCDBH
父菜單
NUMBER(3)
CDMC
菜單名稱
VARCHAR2(40)
QXWS
權(quán)限位數(shù)
NUMBER(2)
RKLJ
入口路徑
VARCHAR2(50)
XGWJ
相關文件
VARCHAR(200)
SFQY
是否啟用
CHAR(1)
DEFAULT 1
B.用戶組表(YHZB)
字段名
字段說明
類型
備注
SSDW
所屬單位
CHAR(4)
非空主鍵
YHZBH
用戶組號
CHAR(4)
非空主鍵
YHZMC
名稱
VARCHAR2(40)
YHZQX
權(quán)限
CHAR(100)
YHGS
用戶個數(shù)
NUMBER(3)
DEFAULT 0
SFQY
是否啟用
CHAR(1)
DEFAULT 1
C.用戶表(YHB)
字段名
字段說明
類型
備注
SSDW
所屬單位
CHAR(4)
非空主鍵
YHBH
用戶編號
CHAR(4)
非空主鍵
SSYHZ
用戶組
CHAR(4)
DLM
登陸名
VARCHAR2(25)
DLMM
登陸密碼
VARCHAR2(40)
YHXM
用戶姓名
VARCHAR(20)
YHQX
用戶權(quán)限
CHAR(100)
SFQY
是否啟用
CHAR(1)
DEFAULT 1
權(quán)限的存貯采取的是“位”的方式,根據(jù)系統(tǒng)規(guī)模,我們估計系統(tǒng)的菜單項不會超過100個,則定義了100位作為權(quán)限的存貯。如用戶表中的用戶權(quán)限字段,如果用戶在第1位上不具備該權(quán)限,則第一位為“0”,反之,如果用戶在第1位上有該權(quán)限,則第一位為“1”。
菜單表用來存貯系統(tǒng)中所有的菜單項,通過提供的編輯方法,可以對菜單表中的菜單項進行添加修改刪除,從而為靈活性打下基礎。根據(jù)菜單編號與父菜單編號的對應關系,根據(jù)遞歸原理,很容易實現(xiàn)多級菜單,頂級菜單的父菜單編號為0。權(quán)限位數(shù)是菜單表中比較關鍵的一個字段,它表明該菜單在權(quán)限上的存貯的位置,例,如果菜單編號為10的菜單項的權(quán)限位數(shù)為10的話,當某用戶的權(quán)限第10位為“1”時就表明該用戶有使用菜單編號為10的菜單項的權(quán)力,反之,則沒有。
用戶組表用來存貯系統(tǒng)中所有的用戶組,通過提供的編輯方法,也可以對其進行靈活編輯。關鍵字段為用戶組權(quán)限為100位的字符串,存貯該用戶組的權(quán)限。
用戶表用來存貯系統(tǒng)中所有的用戶,通過提供的編輯方法,可以對其進編輯操作。關鍵字段為用戶權(quán)限為100位的字符串,存貯該用戶的權(quán)限。該權(quán)限是在建立用戶時從該用戶所屬的用戶組繼承過來的,建立好用戶時也可以單獨對用戶的權(quán)限進行修改。
其它字段將在后面的介紹中提到,在此不做詳細說明。