第三場直播免費碼10個送你&關於sf第二場直播-《Yii2之rbac(基於角色的許可權管理)-思想與配置》 的總結
依舊,每節直播課送10個免費碼,針對於沒有加入兄弟連VIP的小夥伴,也能免費看阿北每周一次的yii技術直播。
現在把昨天的直播做一個回顧
昨天的直播進行了90分鐘,首先感謝大家的報名,算是把yii文檔中rbac的例子講完了,同時對數據表也進行了一些分析。
可能相對於sf上的大牛們講座,yii2直播算很小眾了,畢竟php只是眾多語言中的一種,而yii又是眾多php框架中的一個而已,但是這不影響我們一顆執著學習的心,這個直播要一直搞下去。
之所以寫這篇文章,一是對昨天直播的一個總結,讓大家對rbac有一個回顧,需要注意哪些等。二來,沒有二來。
什麼是rbac
這是一套許可權體系,在它之前有過好多種,後來一群美國人把rbac整出來一個標準,叫做INST RBAC,yii2用的就是這個。為何rbac能成為標準且現在這麼多的框架都在用那?
rbac最接近人類的各種場景。
在我們的生活中,每天都在扮演不同的角色,執行不同的許可權,調用不同的資源。
- 昨天晚上我是一個講師,我能在sf上和大家聊天,探討技術,能使用sf的直播資源。
- 今天醒來我是一名父親,能安靜的看著熟睡中的「小核桃」,這個角色是一輩子的。
這就是生活中的rbac,老天給了很多人很多不同的角色,讓他們有條不紊的在社會上生活。
rbac是嚴肅的,不能跨越的,你不能做不屬於你的角色,比如「小三」這種角色,你不應該走到陽光之下,否則就會天下大亂,越權角色是不被允許的。
yii的rbac
我喜歡yii,不是因為它有多高級,而是在我需要它做某個事情的時候,總是能發現它已經有了完備的功能提供給我,rbac也是一樣,yii對rbac進行了很好的封裝,我們使用的時候無需多關注內在。
首先你要知道對於yii的rbac,有4張表你躲不過
- auth_item 該表存放授權條目(譯者註:即角色和許可權)
- auth_item_child 該表存放授權條目的層次關係
- auth_assignment 該表存放授權條目對用戶的指派情況
- auth_rule 該表存放規則
而rbac許可權的初始化過程就是對這四張表的數據填充和關係的部署。
在使用上,yii將rbac弄成了一個組件,所以你必須在config/web.php的components中有如下配置
authManager => [
class => yii
bacDbManager ,
],
配置完之後使用 Yii::$app->authManager 就可以做80%的事情了,比如新建一個角色和許可權,建立角色和許可權之間的關係。
有一個例外,就是當你需要建立一個新規則的時候,除了 Yii::$app->authManager 你還需要新建一個繼承於yii
bacRule的子類並且實例化後傳遞給 authManager組件才可以,這個如果不明白建議回顧下昨天直播的後半部分,sf上所有直播都可以回放和再次訂購看回放。
總體來說yii的rbac很簡單。
一個例子
最開始我想過很多例子,後來決定還是用官方文檔中的了,但是對於很多初學者可能對這個例子以及一些提示要注意的地方,不了解為何要注意。
所以直播的後半段就是對這個例子進行了一行一行的代碼重現,編寫過程中進行講解,遇到要注意的地方進行說明。
我個人比較喜歡這樣的形式,有時候我們學了很多,但是仍然不會寫代碼,就像linux之父linus說的那句話
空談是不值錢的。給我看你的代碼就好。
無論我們在程序員的哪個階段,代碼是我們唯一的名片,直播亦然,以後的直播中也會一直延續這個思路。
最後
這是yii rbac的第一節,算入門,我們下一節將講解一個叫做acf的東西,你可能不知道它,但是你一定見過它,各位夥伴記得報名哦。
不止有老司機帶你飛,還有認真看遠方。
( ̄. ̄)
北哥兄弟連:http://nai8.me


TAG:北哥小報 |
※語義分割網路DeepLab-v3的架構設計思想和TensorFlow實現
※Tile-based Optical Flow 演算法流程與基本思想
※Spring源碼解析——Spring思想、設計模式總結
※Zilliqa設計思想詳細分析:第3部分
※面試題殺手鐧:CopyOnWrite思想
※一隻有思想的豬 A Thinking Being
※國內首發Nature子刊 Machine Intelligence論文:思想精妙,或對DNN有重大改進
※Facebook的思想帝國主義
※今天JENNY和 ANUP 思想 Thought for Today!
※科技公司是如何 「控制」 億萬人思想的!SparklingLab-火花會
※怪才建築師Paolo Cesaretti,空間的思想家
※Redis Scan演算法設計思想
※Marc Grandbois透過色彩豐富的變化,傳達思想和情感
※BEM思想(css命名規範)
※Charlie:用善意和純潔的思想滋養系統
※RNG贏了BLG後,Karsa的表現遭玩家質疑,網友:Karsa思想出了問題
※你的第一關注點或許是他的輪椅,但他的思想卻永遠停留在天際——致敬偉人 Stephen Hawking
※我猜你已經準備好迎接這場思想碰撞了 | TEDxPozijie
※心靈畫境——Kinuko Craft的作品涵蓋了知覺、感情、思想與生活
※如何能理解 Spring 框架的思想?