RBAC角色許可權設計

2021-09-20 00:03:29 字數 842 閱讀 8396

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

角色是什麼?可以理解為一定數量的許可權的集合,許可權的載體。例如:乙個論壇系統,「超級管理員」、「版主」都是角色。版主可管理版內的帖子、可管理版內的使用者等,這些是許可權。要給某個使用者授予這些許可權,不需要直接將許可權授予使用者,可將「版主」這個角色賦予該使用者。

當使用者的數量非常大時,要給系統每個使用者逐一授權(授角色),是件非常煩瑣的事情。這時,就需要給使用者分組,每個使用者組內有多個使用者。除了可給使用者授權外,還可以給使用者組授權。這樣一來,使用者擁有的所有許可權,就是使用者個人擁有的許可權與該使用者所在使用者組擁有的許可權之和。

在應用系統中,許可權表現成什麼?對功能模組的操作,對上傳檔案的刪改,選單的訪問,甚至頁面上某個按鈕、某個的可見性控制,都可屬於許可權的範疇。有些許可權設計,會把功能操作作為一類,而把檔案、選單、頁面元素等作為另一類,這樣構成「使用者-角色-許可權-資源」的授權模型。而在做資料表建模時,可把功能操作和資源統一管理,也就是都直接與許可權表進行關聯,這樣可能更具便捷性和易擴充套件性。

rbac許可權設計:

許可權設計_20180905120009.png

一張圖搞定rbac使用者許可權設計:

rbac使用者許可權.png

rbac許可權管理設計 RBAC使用者角色許可權設計方案

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

角色許可權,RBAC

為了方便本人閱讀,文字格式略有調整。flags public enum flag long 特性 flag 告訴編譯器,當編譯器看到flag列舉時,它會充許你用 or 操作符組合列舉值,就像二的整數冪一樣,例如 flag administer flag.view flag.edit flag.del...

RBAC使用者角色許可權設計方案

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