權限管理系統之數據庫設計【系列篇】


前言

病幾時朝日邊,
方每續朱櫻獻。
氣沖頭鬢莖少,
多唯欲哭殘春。
牛織女渡河橋,
搖浮蟻香濃甚。
今已到九仙家,
在琴書自憶家。

今天是2020.02.02 (愛你愛你) 也是中國新年大年初九。中國人民正在經受新型冠狀病毒肺炎的折磨。每天看着不斷上升的確診病例和死亡病例。肺炎相關的時事新聞、廣播、電台不斷涌入。仿佛全國上下陷入深深的惶恐不安之中

 

 雖然2020年的開頭不順,諸事擾心。但是我們依然要保持對美好生活的向往與追求。希望肺炎疫情能盡快遏制住。禽流感不要四處蔓延,我們老百姓能安居樂業,健健康康~

開篇

早在一個月前就有這個想法,從0到1開發一個權限管理系統。那么問題來了?怎么做呢? 參考哇,模仿哇,抄襲哇,學習哇。

 

1.了解RBAC是個什么玩意兒

2.技術選型(前端UI、數據庫選擇、后端架構搭建)

那么,話不多說,開整。

其中前端頁面采用了H+,登錄頁抄襲了feiyitERP開源項目的登錄頁。后端采用了.NET Core 2.2,ORM使用自封裝的Dapper。數據庫使用Mysql

演示地址

此處留白,→群號:523490820

整個系統大概看起來是這樣:

在系統講解菜單中專門針對此系統有一個錄屏視頻講解。

 

RBAC

在這里簡單介紹一下RBAC吧,更多內容可以自己搜索一下相關資料。

RBAC(Role-Based Access Control )基於角色的訪問控制。

RBAC 認為權限的過程可以抽象概括為:

判斷【Who 是否可以對 What 進行 How 的訪問操作(Operator)】

  • Who:權限的擁用者或主體
  • What:權限針對的對象或資源
  • How:具體的權限
  • Operator:操作。表明對 What 的 How 操作。也就是 Privilege+Resource
  • Role:角色,一定數量的權限的集合。權限分配的單位與載體,目的是隔離User與Privilege的邏輯關系

 

 

可以看上圖簡單理解一下

數據庫設計

按照我的設想,不希望一開始就把系統設計的很復雜(其實是能力有限,思考深度不夠)。於是 就想着簡單實現菜單、角色、角色權限、用戶、組織機構這幾塊內容。最開始的數據庫設計看起來是這個樣子。

 

 

權限的主要涉及的表就是這7張表。

今天先寫到這里吧,該運動了,加強身體抵抗力。

文末彩蛋

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM