摘要

本文主要講述的是犀光科技,神燈系統和廣告主系統中關於不同的用戶登錄時所展現的不同的權限,介紹的是基於角色的權限管理

基本架構圖

請點

組成結構

User(用戶):每個用戶都有唯一的UID識別,並被授予不同的角色Role(角色):不同角色具有不同的權限Permission(權限):訪問權限用戶-角色映射:用戶和角色之間的映射關係角色-權限映射:角色和權限之間的映射RBAC支持的安全原則

BAC支持三個著名的安全原則:最小權限原則、責任分離原則和數據抽象原則

最小權限原則:RBAC可以將角色配置成其完成任務所需的最小權限集合責任分離原則:可以通過調用相互獨立互斥的角色來共同完成敏感的任務,例如要求一個記賬員和財務管理員共同參與統一過賬操作數據抽象原則:可以通過權限的抽象來體現,例如財務操作用借款、存款等抽象權限,而不是使用典型的讀、寫、執行權限數據庫的設計

因爲用的是最簡單的思路去設計的這個權限系統,所以在該權限系統中就設計了三張表去完成整個項目

用戶表

用戶表是來存儲用戶的信息的數據表,並存儲該用戶對應的角色id

角色表

角色表是用來存儲創建的角色id的,和該角色對用的權限表中的權限id

權限表

把每個功能或者按鈕細化成一個權限,根據樹形結構去設計這個表,方便顯示和查詢

實現結果

內部用戶和普通用戶被授予不同的權限,普通用戶只能去查看一些內容和普通配置,而不能去修改或查看某些配置,並且也不能在系統中去切換查看其它的用戶,而內部用戶則可以去做這些操作。

結尾

到這裏,此文就接近尾聲了,簡單總結一下: 此次的權限系統用的是用戶和角色是多對一的關係,用戶,角色和權限之間存在緊密相連的關係,增加權限的時候也比較方便。

相關文章