基於使用者的安全性原則在B/S中的實現(1)

來源:互聯網
上載者:User
安全|策略 在用ASP,JAVASCRIPT與ORACLE開發一套稅務系統的後台管理軟體時,我們成功的實現了基於使用者組與使用者的安全性原則,並在靈活性,安全性方面達到了較好的效果。我們將分存貯結構,菜單管理,許可權分配,安全檢查四個方面將基於使用者的安全性原則在B/S中的實現介紹給大家。

1 存貯結構
存貯結構對於本系統來說就是資料庫表的結構主要由以下幾個表:

A.菜單表(CDB)

欄位名
欄位說明
類型
備忘

CDBH
菜單編號
NUMBER(3)
非空主鍵

FCDBH
父菜單
NUMBER(3)


CDMC
菜單名稱
VARCHAR2(40)


QXWS
許可權位元
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
許可權
CHAR(100)


YHGS
使用者個數
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
使用者權限
CHAR(100)


SFQY
是否啟用
CHAR(1)
DEFAULT 1


許可權的存貯採取的是“位”的方式,根據系統規模,我們估計系統的功能表項目不會超過100個,則定義了100位作為許可權的存貯。如使用者表中的使用者權限欄位,如果使用者在第1位上不具備該許可權,則第一位為“0”,反之,如果使用者在第1位上有該許可權,則第一位為“1”。

菜單表用來存貯系統中所有的功能表項目,通過提供的編輯方法,可以對菜單表中的功能表項目進行添加修改刪除,從而為靈活性打下基礎。根據菜單編號與父菜單編號的對應關係,根據遞迴原理,很容易實現多級菜單,頂級菜單的父菜單編號為0。許可權位元是菜單表中比較關鍵的一個欄位,它表明該菜單在許可權上的存貯的位置,例,如果菜單編號為10的功能表項目的許可權位元為10的話,當某使用者的許可權第10位為“1”時就表明該使用者有使用菜單編號為10的功能表項目的權力,反之,則沒有。

使用者組表用來存貯系統中所有的使用者組,通過提供的編輯方法,也可以對其進行靈活編輯。關鍵字段為使用者組許可權為100位的字串,存貯該使用者組的許可權。

使用者表用來存貯系統中所有的使用者,通過提供的編輯方法,可以對其進編輯操作。關鍵字段為使用者權限為100位的字串,存貯該使用者的許可權。該許可權是在建立使用者時從該使用者所屬的使用者群組繼承過來的,建立好使用者時也可以單獨對使用者的許可權進行修改。

其它欄位將在後面的介紹中提到,在此不做詳細說明。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。