Acegi實現(xiàn)對象實例級權(quán)限控制的方法

          一直以來對于Acegi實現(xiàn)Domain Object Instance的權(quán)限控制就比較感興趣,今天抽空大致的看了一下,感覺和我以前提出的數(shù)據(jù)權(quán)限那部分的實現(xiàn)是大致相同的。
          Acegi在Domain Object Instance上采用的是ACL的實現(xiàn),ACL在實現(xiàn)實例級別的權(quán)限控制上確實是非常好的方法,按照ACL的思想我們很容易知道Domain Object Instance的控制需要的是user--->Domain Object Instance的一個列表的維護(hù),這點在Acegi上可以看到采用的就是通過acl_object_identity以及acl_permission這兩張表來實現(xiàn)的,看acl_object_identity表驚喜的發(fā)現(xiàn)acegi也是考慮到了domain object instance的權(quán)限繼承的實現(xiàn)的,acl_object_identity記錄的是需要控制權(quán)限的domain object instance的相關(guān)信息,acl_permission記錄的即為用戶對于domain object instance的權(quán)限,Acegi做到的其實就是將這些通用的部分做了一個實現(xiàn),在存儲domain object時它幫忙做了相關(guān)的權(quán)限信息的存儲,應(yīng)該說acegi這樣的實現(xiàn)確實是可以做到domain object instance的權(quán)限控制,不過感覺在acegi中要去實現(xiàn)對象實例級權(quán)限控制還是不那么的方便,配置起來非常的繁瑣,應(yīng)該基于它做一級提升,在易用性方面。
          而且這種做法在侵入性上仍然是無法避免的,比如需要分頁獲取數(shù)據(jù)時,必然是要在現(xiàn)在的Dao層次做一個侵入的,盡管這點經(jīng)過一定的方法(Template Pattern)是可以實現(xiàn)無侵入性的...
          目前感覺在對象實例級別的權(quán)限控制上還是沒有非常好的方法...
          曾經(jīng)考慮過是否可以采用AOP的weaver來實現(xiàn)...
          還有就是在對象實例級別是否為權(quán)限控制還是業(yè)務(wù)規(guī)則定義方面是有一定的區(qū)分難度的,很多時候很難明白的去標(biāo)識哪個是數(shù)據(jù)權(quán)限、哪個是業(yè)務(wù)規(guī)則,感覺在這兩點上挺容易發(fā)生混淆的現(xiàn)象。

          posted on 2006-02-13 15:38 BlueDavy 閱讀(3789) 評論(1)  編輯  收藏 所屬分類: Java 、系統(tǒng)設(shè)計

          評論

          # re: Acegi實現(xiàn)對象實例級權(quán)限控制的方法 2008-05-16 13:06 dssd

          現(xiàn)在在看acegi結(jié)合使用的項目,將其擴(kuò)展,擴(kuò)展的自己都不知道在干什么?  回復(fù)  更多評論   

          公告

           









          feedsky
          抓蝦
          google reader
          鮮果

          導(dǎo)航

          <2006年2月>
          2930311234
          567891011
          12131415161718
          19202122232425
          2627281234
          567891011

          統(tǒng)計

          隨筆分類

          隨筆檔案

          文章檔案

          Blogger's

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 定西市| 龙胜| 桃源县| 浠水县| 大庆市| 来凤县| 西和县| 晴隆县| 仪陇县| 合江县| 岱山县| 焦作市| 五常市| 临邑县| 张家川| 新邵县| 赤峰市| 翁源县| 凤阳县| 乐昌市| 南开区| 安溪县| 富平县| 泰来县| 十堰市| 饶阳县| 通海县| 泽库县| 汾阳市| 常山县| 池州市| 清流县| 抚州市| 饶平县| 大渡口区| 定边县| 冕宁县| 即墨市| 徐州市| 张北县| 航空|