設計OA系統的使用者 角色 許可權分配

2022-10-10 23:09:17 字數 1893 閱讀 7580

本文主要講述在oa系統設計時使用者——角色——許可權的資料庫設計,以便實現許可權分配。

使用者通過ui登入系統時,把使用者的使用者名稱、密碼傳遞給後台判斷使用者表中是否存在可用的使用者資訊,如果存在那麼允許頁面的跳轉,並設定一些session資訊,當頁面跳轉時根據使用者的session資訊獲取使用者的角色,進一步根據角色獲取使用者的操作許可權,這裡的操作許可權包括角色可以操作的選單,以及此選單對應的操作按鈕。

通過上面的描述就可以分析出系統中包含的資料表有t_users(使用者表)、t_roles(角色表)、r_userrole(使用者角色關係表)、t_menus(選單表)、t_button(按鈕表)以及

r_privilege(角色、選單、按鈕關係表)、r_menubutton(選單按鈕關係表),總共七張表。為了使文章更具有正對性,對於其他和本文分析的問題無關緊要的資料表例如t_deprt(部門表)等省去不提。

下面通過物理模型圖分析這些表的關係:

以上的所有表中省去了對分析問題沒有必要存在的一些資料字段。這些必要的字段相信開發的人員都能知道是什麼意思,所以不做解釋。

需要說明的是:所有關係表(以"r_"開頭的表)關聯的表中的主鍵都是n:n的關係。此處需要特殊說明的就是r_privilege表中的objectid、objectdescr。因為許可權表既需要對應選單,又需要對應增刪改查的

按鈕,所以objectid的值是menuid或者menubuttonid,這樣對應的objectdescr就是menu和button。

當使用者登入時,會根據條件objectdescr='menu'獲取角色的roleid對應的objectid=t_menu.menuid,這樣能夠獲取所擁有的可操作的選單。

當開啟某一頁麵時,根據條件objectdescr='button'獲取角色的roleid對應的objectid=r_menubutton.menubuttonid,這樣可以獲取使用者在相關頁面的操作按鈕btnid。  

以上即是關於主題的分析,希望能拋磚引玉。

本文主要講述在oa系統設計時使用者——角色——許可權的資料庫設計,以便實現許可權分配。

使用者通過ui登入系統時,把使用者的使用者名稱、密碼傳遞給後台判斷使用者表中是否存在可用的使用者資訊,如果存在那麼允許頁面的跳轉,並設定一些session資訊,當頁面跳轉時根據使用者的session資訊獲取使用者的角色,進一步根據角色獲取使用者的操作許可權,這裡的操作許可權包括角色可以操作的選單,以及此選單對應的操作按鈕。

通過上面的描述就可以分析出系統中包含的資料表有t_users(使用者表)、t_roles(角色表)、r_userrole(使用者角色關係表)、t_menus(選單表)、t_button(按鈕表)以及

r_privilege(角色、選單、按鈕關係表)、r_menubutton(選單按鈕關係表),總共七張表。為了使文章更具有正對性,對於其他和本文分析的問題無關緊要的資料表例如t_deprt(部門表)等省去不提。

下面通過物理模型圖分析這些表的關係:

以上的所有表中省去了對分析問題沒有必要存在的一些資料字段。這些必要的字段相信開發的人員都能知道是什麼意思,所以不做解釋。

需要說明的是:所有關係表(以"r_"開頭的表)關聯的表中的主鍵都是n:n的關係。此處需要特殊說明的就是r_privilege表中的objectid、objectdescr。因為許可權表既需要對應選單,又需要對應增刪改查的

按鈕,所以objectid的值是menuid或者menubuttonid,這樣對應的objectdescr就是menu和button。

當使用者登入時,會根據條件objectdescr='menu'獲取角色的roleid對應的objectid=t_menu.menuid,這樣能夠獲取所擁有的可操作的選單。

當開啟某一頁麵時,根據條件objectdescr='button'獲取角色的roleid對應的objectid=r_menubutton.menubuttonid,這樣可以獲取使用者在相關頁面的操作按鈕btnid。  

以上即是關於主題的分析,希望能拋磚引玉。

使用者角色許可權設計思路

使用者角色管理作為每個管理系統所必備的模組,也是每個系統的基礎模組。網上有很多都稱作通用許可權管理系統,真的就通用麼?不一定吧,個人認為不管通用與不通用,能滿足自己系統的需求就ok了。廢話不多說 下面是乙個使用者角色許可權設計思路 1 不同職責的人員,對於系統操作的許可權應該是不同 2 可以對 組 ...

基於使用者角色的許可權設計

整個例子隨便試驗下。使用者與角色是多對多 角色與許可權是多對多 aps user 使用者表 aps role 角色表 aps user group 使用者角色表 aps module 模組表 或成選單表 aps power 許可權表 1 先建立錶用以下指令碼 if exists select fro...

使用者 角色 許可權系統概述

參考部落格 迄今為止最為普及的許可權設計模型是rbac模型,基於角色的訪問控制 role based access control 1.1 rbac0模型 rbac0模型如下 這是許可權最基礎也是最核心的模型,它包括使用者 角色 許可權,其中使用者和角色是多對多的關係,角色和許可權也是多對多的關係。...