rbac設計解惑

2021-06-26 11:21:22 字數 739 閱讀 8673

看到這篇文章我才真正的明白了,之前不知道別人的思路,原來這就是別人的思路

其實這個思路是嚴格按照表的關係,1:1  1:n  n:n關係設計的,考慮了很久怎麼和選單動態的關聯

所以想找出選單和許可權是什麼關係,看到這篇文章,這裡當做是1:1的關係,也就是乙個許可權對應乙個選單,

可是我們實際中的後台**會每個操作都有乙個耳機選單呢,所以就有人在選單表中多加了乙個欄位is_show來判斷這個動作對應的選單是否顯示的問題

這樣功能是可以實現,但是覺得總有很多的雜亂的東西在裡面,所以想精簡出自己的乙個rbac類庫,把設計做到最好

**。角色與角色的關係可以建立起來以囊括更廣泛的客觀情況。

根據上面的需求,設計了以下資料庫

說明:系統中有使用者表(user)、角色表(role)、角色許可權表(role_privilege)、許可權表(privilege)、選單表(menu_item) 每個使用者對應乙個角色,每個角色有多個許可權,每個許可權屬於乙個選單項

根據需求,整個rbac系統的後端分為以下幾個模組:

使用者管理:

使用者查詢

使用者編輯

使用者刪除

使用者新增

文章管理

文章查詢

文章編輯

文章刪除

文章新增

對於普通使用者:無進入後端管理的許可權

根據以上需求,對資料庫進行初始化

資料庫的設計到此為止,目前這個許可權系統已經託管到了github上了,後續的程式實現思路會另外寫一篇博文

RBAC許可權設計

rbac role based access control,基於角色的訪問控制 就是使用者通過角色與許可權進行關聯。簡單地說,乙個使用者擁有若干角色,每乙個角色擁有若干許可權。這樣,就構造成 使用者 角色 許可權 的授權模型。在這種模型中,使用者與角色之間,角色與許可權之間,一般者是多對多的關係。...

RBAC 設計演進

rbac role based access control,基於角色的訪問控制 就是使用者通過角色與許可權進行關聯。簡單地說,乙個使用者擁有若干角色,每乙個角色擁有若干許可權。這樣,就構造成 使用者 角色 許可權 的授權模型。在這種模型中,使用者與角色之間,角色與許可權之間,一般者是多對多的關係。...

RBAC許可權設計

rbac 模型作為目前最為廣泛受的許可權模型 角色訪問控制 rbac 引入了role的概念,目的是為了隔離user 即動作主體,subject 與privilege 許可權,表示對resource的乙個操作,即operation resource role作為乙個使用者 user 與許可權 priv...