Yii权限管理工具Srbac使用小结
一、關(guān)于Srbac
Srbac是基于Yii 框架的 RBAC(基于角色的訪問控制) 插件模塊,用于幫助Yii開發(fā)人員更方便地進行權(quán)限控制,在實際應用過程中也比較方便。
二、安裝配置Srbac
在Yii的官方網(wǎng)站的Extensions中已經(jīng)收錄了Srbac插件,且給出了官方的配置文檔,比較詳細地列出了修改的具體內(nèi)容。配置詳情請見《Yii中配置Srbac模塊》。
三、Srbac的使用
Srbac提供了比較友好的圖形化界面操作,可以比較方便使用其提供的功能。我們可以通過這三個按鈕來進行具體到每個用戶的權(quán)限操作和查詢。
四、Srbac功能的詳細解釋
Srbac模塊是通過roles-- tasks-- operations 這三者之間的映射關(guān)系來實現(xiàn)權(quán)限控制的。
roles:角色
tasks:任務
operations:操作
其中:
users對應于我們的用戶
roles對應于我們系統(tǒng)需要的所有角色名稱
tasks對應于我們的訪問控制任務,其中可以包含多個的operation
operations對應于我們需要進行權(quán)限管理的所有具體操作的名稱(例如某個具體的action,我們只允許某個role來訪問)
配置好role/task/operation之后,將operations分配給各個task,然后再將tasks分配給具體的role,每個user都可以指定單獨的role,實現(xiàn)其權(quán)限的賦予。這些,通過界面中的按鈕來實現(xiàn)。
另外,Srbac還有用戶查詢界面,可以方便的對用戶進行詳細權(quán)限的查詢:
五、Srbac的數(shù)據(jù)庫表
其中,user表是我們系統(tǒng)的用戶表,其中包含我們項目用戶的基本信息,我們可以根據(jù)項目的實際需求來配置user表,但需要注意的是,我們需要有一個識別用戶的唯一字段,我們習慣使用user的id來判斷用戶的身份:
auth_item_child表用來記錄role/task、task/operation之間的繼承關(guān)系:
auth_item表是存儲我們新建role/task/operation的類型、備注、業(yè)務規(guī)則等:
auth_assignment表中記錄著各個role與user表中的用戶id對應情況:
這幾張表能夠確保我們可以對每個用戶的權(quán)限進行精確地管理。如果項目需要,我們也可以對這些表進行自由的調(diào)整,比如將auth_assignment表中的字段插入user表中,使用user表進行角色的查詢等等。
?
上一張RBAC工作流程圖:
?
?
End.
轉(zhuǎn)載于:https://www.cnblogs.com/lianche/p/3642432.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的Yii权限管理工具Srbac使用小结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【6】JAVA---地址App小软件(Q
- 下一篇: win7 安装 IIS