基于URL方式的權限模型

          對于B/S結構的權限控制,有N多種實現方式的權限模型,但很多都是非常的復雜,以前在做這塊時一直就做的不是很好,考慮的過于復雜,其實應該遵循Simple原則先做出自己能想到的最簡單的方案,再逐漸的重構,一種基于URL方式的權限模型就非常簡單,很容易理解,也是非常的有效。
          模型仍然是基于RBAC,遵循User---->Role---->Permission---->Resource+Operate,在URL方式的權限模型中認為所有對于系統的操作均通過URL進行,其實在B/S結構中這樣認為也沒有什么不可的,既然是這樣那么模型就很容易建立了,例如對于用戶管理模塊,有查看、新增、編輯、刪除這四種操作方式,那么就可以在系統中建立Resource=用戶管理,Operate分別為查看、新增、編輯、刪除,每種操作相應的對應一個url,這個在MVC框架中就更好去做了,通常一種動作對應了一個command類,那么其url可能是view.cmd等,^_^,這樣用戶管理的幾種操作權限就配置好了,系統管理員則相應的可增加用戶管理員、用戶管理查看員等來配置相應的權限,在實現的模型中判斷則可通過類似user.doPrivilege("用戶管理","查看")來判斷用戶是否具有權限,這種模型對控制菜單樹的顯示、操作、模塊的功能按鈕的顯示都具有有效的作用。
          但對于具體業務細節的權限控制,還是得通過代碼控制來實現的,如控制某某部門的管理員只可對該部門下的權限進行管理,其實想想這個也是可以在url方式的權限模型中實現的,通過url的正則表達方式等來實現,呵呵,不去具體說了,至于對模塊產生的數據權限的控制,可以通過數據類型的方式來控制,如某模塊產生的數據類型分為公共、私有幾種類型,可通過配置角色能訪問該模塊何種類型的數據來實現。
          基于URL方式的權限模型好處在于容易理解,能夠快速實現,當然,還有基于action方式的權限模型等等,其實相應來講基于URL方式的和基于action方式的基本相似,而且基于URL方式的更容易理解和實現。

          posted on 2005-09-01 19:43 BlueDavy 閱讀(2069) 評論(3)  編輯  收藏 所屬分類: 系統設計

          評論

          # re: 基于URL方式的權限模型 2005-09-02 14:23 pesome

          你好,有聯系方式嗎?  回復  更多評論   

          # re: 基于URL方式的權限模型 2007-10-30 16:39 一生一火花

          非常贊同 我也想這樣實現  回復  更多評論   

          # re: 基于URL方式的權限模型[未登錄] 2012-02-07 12:17 abc

          哈哈,我還寫一個類似的系統呢。  回復  更多評論   

          公告

           









          feedsky
          抓蝦
          google reader
          鮮果

          導航

          <2005年9月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          統計

          隨筆分類

          隨筆檔案

          文章檔案

          Blogger's

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 大理市| 望江县| 乐安县| 冀州市| 江门市| 湖州市| 竹山县| 鞍山市| 全椒县| 屏南县| 承德市| 九寨沟县| 富民县| 晴隆县| 彭阳县| 彩票| 酒泉市| 清徐县| 阳泉市| 富源县| 集贤县| 松江区| 巴彦淖尔市| 开化县| 特克斯县| 屯留县| 浪卡子县| 阿勒泰市| 白朗县| 龙南县| 多伦县| 义马市| 凤庆县| 绥化市| 华容县| 甘德县| 阿巴嘎旗| 茶陵县| 南郑县| 宜兴市| 梁河县|