【RBAC】打造Web權限控制系統


引言

權限系統模塊對於互聯網產品是一個非常重要的功能,可以控制不同的角色合理的訪問不同的資源從而達到安全訪問的作用


此外本次課程有視頻講解: http://www.imooc.com/learn/799 ,對應演示系統:http://rbac.54php.cn 


權限控制模型

  • ACL

  • RBAC 基於角色的訪問控制

600


從上圖我們可以看出,ACL是用戶和權限直接關系的,RBAC則是通過角色間接關聯用戶和權限的。所以角色是RBAC系統的一個重要屬性

Why RBAC

為什么我們選擇RBAC模型,原因如下

  1. 方便用戶分組

  2. 方便權限分配和回收

  3. 擴展方便,可以滿足大部分業務需求


RBAC

框架


600


圖中有5個角標數字,對應的就是RBAC模型重要的5個屬性


RBAC關系圖
序號 關鍵屬性
描述
1 用戶  張三、李四、王五
2 角色 銷售經理、銷售、前台
3 用戶角色關系 張三 是  銷售經理 、李四 王五 是 銷售
4 權限 添加客戶、編輯客戶、刪除客戶,查看客戶
5 角色權限關系

銷售 擁有 查看客戶的 權

限、銷售經理可以 查看/添加/刪除/編輯客戶的


功能

600

如上圖,一個RBAC權限模塊,必然要實現三個功能

  1. 用戶管理

    1. 用戶列表

    2. 添加用戶

    3. 編輯用戶

    4. 設置用戶角色

  2. 角色管理

    1. 角色列表

    2. 添加角色

    3. 編輯角色

    4. 設置角色權限

  3. 權限管理

    1. 權限列表

    2. 新增權限

    3. 編輯權限

戰果演示

  • 第一張截圖有2個瀏覽器,左邊使用超級管理員打開,右邊的使用 前台角色郭小威 用戶打開

  • 第二張截圖 展示的是 為 前台 設置權限

  • 第三張截圖展示了可以瀏覽的頁面(圖一中有無法瀏覽提示)


600


600


600


資源

  1. 演示代碼(請務必先查看readme文件) https://github.com/apanly/rbac 

  2. 課程視頻地址: http://www.imooc.com/learn/799 

  3. 對應演示系統:http://rbac.54php.cn 




原文地址: 【RBAC】打造Web權限控制系統
標簽: 權限    角色    用戶    控制    rbac    user    role    access    用戶管理    權限管理    角色管理   

智能推薦


免責聲明!

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



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