<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 193,  comments - 520,  trackbacks - 0
    一個朋友留言,提了一些關心的問題,這里說說自己的想法(不一定對)。
    問題:
    數據范圍的控制:“事實上不是每個用戶都可以看到所有記錄的。以財務管理為例,部門經理只能查看金額小于1W的數據;而總經理則沒有限制”。象這樣要根據數據的某個字段對數據范圍進行控制,應該實現呢,是通過AOP動態改變執行的SQL嗎?這樣似乎不太可行,如果要執行的SQL特別復雜,那動態改變SQL 就更難了。現在的應用中一般使用hibernate,這樣的話就變成了動態改變HQL,也是難的。
    回答:目前在我的代碼里就是通過AOP動態改變執行的SQL,改變HQL確實很困難,但是改變criteria就比較簡單了。對于特別復雜的sql,我的建議是把這些SQL直接寫到你的業務程序里去,或者單獨配置出來,和ibatis比較類似。

    問題:單條數據ACL權限:由于數據是不斷增加的,所以要對單條數據的ACL權限,不應該是數據已存在,然后再對存在的數據授權,應該是對某種規則進行授權。以你舉的個人通訊錄為例,各人自己維護自己的通訊記錄,數據只對自己可見,要想實現對自己的數據的可再授權,應該是對符合某個規則的數據進行授權,也就是說 “要執行授權操作的人就是數據的擁有者”這是個規則,那是不是應該對這個規則授權呢。
    回答:我理解的和你不一樣。我的理解是這樣的,實際中我把單條數據的權限劃分為擁有、瀏覽、修改、刪除四種權限,用戶擁有哪種權限就可以對數據進行相應哪種操作。“要執行授權操作的人就是數據的擁有者”也可以理解為“要執行授權操作的人就必須有該數據的擁有權限”,這可以理解為一種規則,但我更愿意把它理解為一種習慣,很顯然對習慣授權是沒有意義的。當然這里是存在規則的,這種規則簡單的說是這樣:當我新增一條數據時,哪些人對該條數據擁有擁有的權限,哪些人對該條數據擁有瀏覽的權限,哪些人對該條數據擁有修改的權限,哪些人對該條數據擁有刪除的權限。權限相關記錄會在新增這條數據時根據該規則生成。在上面的例子里,這一規則體現在:各人自己維護自己的通訊記錄,數據只對自己可見。也就是說在用戶新增自己的通訊記錄時,系統同時往權限表里插入了該用戶對該記錄的一個擁有權限記錄。

    問題:數據字段權限:要實現對某個字段的權限控制,那是不是應該所有字段應該有個默認的操作呢,或者默認就是只可以查看,要進行修改的話就必須授權。但是通常整個應用中的字段非常多,這樣是乎不太合理。那是不是可以做成所有字段默認就是可以CRUD的,只有要控制的字段才進行權限判斷。同樣,由于使用 Hibernate來進行持久化,那對字段的控制是不是就變成了對類中屬性的控制。
    回答:數據字段權限一直是一個很難辦的事情,實際上我很傾向于把這個問題推到頁面來解決。其實所有的權限控制最后都是要通過頁面來表現的。其實對字段來說,所需要的權限也很簡單:可見/不可見,只讀/可修改。這樣的話,通過標簽的形式來控制字段的顯示、只讀就顯得很自然。對字段的權限記錄可以放入到數據庫,或者xml中,與具體的pojo類沒有關系,當渲染頁面的時候,由標簽來讀取相關權限記錄并控制顯示。

    問題:角色權限的繼承:角色權限的繼承通過規則來做,這個規則應該怎么設計呢。
    回答:這個問題其實是一個分離關注點的問題。你可以抽象出一個規則接口,這個接口定義了對部門、角色下的用戶而言,哪些權限是可以從部門角色繼承的,繼承幾級,哪些是不可以的。然后再具體實現。更靈活的方式是定義出一個配置文件,運行時可以靈活修改。




    http://www.tkk7.com/ronghao 榮浩原創,轉載請注明出處:)
    posted on 2007-06-05 17:36 ronghao 閱讀(4068) 評論(3)  編輯  收藏 所屬分類: 權限相關

    FeedBack:
    # re: 關于權限系統設計的一些問與答
    2008-03-18 00:25 | leekiang
    字段級別的權限控制,你用標簽去讀取配置,可以做到頁面級別的控制,即客戶可見/不可見,只讀/可修改,但這個并不能容易的做到url級別控制,即防止客戶繞過頁面,模擬提交.
    期待你的回復 。  回復  更多評論
      
    # re: 關于權限系統設計的一些問與答
    2008-04-07 18:20 | ronghao
    @leekiang
    在其他文章里有交代,這些權限控制是結合使用的。  回復  更多評論
      
    # re: 關于權限系統設計的一些問與答[未登錄]
    2011-01-22 11:46 | 學習者
    博主作者、您好!本人希望向您學習一下權限有關的問題、加我的Q:343537050.  回復  更多評論
      
    <2007年6月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    1234567

    關注工作流和企業業務流程改進。現就職于ThoughtWorks。新浪微博:http://weibo.com/ronghao100

    常用鏈接

    留言簿(38)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    常去的網站

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 99久久亚洲综合精品成人网| 中文字幕亚洲日本岛国片| 亚洲女人初试黑人巨高清| 91精品全国免费观看含羞草 | 特级淫片国产免费高清视频| 中文字幕乱码亚洲精品一区| 一个人免费观看视频www| 亚洲中字慕日产2020| 无码中文字幕av免费放| 亚洲精品GV天堂无码男同| 四虎永久免费地址在线网站| 免费一区二区无码视频在线播放 | 亚洲精品午夜无码专区| 两性色午夜视频免费播放| 亚洲AV无码国产一区二区三区 | 色噜噜噜噜亚洲第一| 亚洲av成人一区二区三区在线观看| 黄色a三级免费看| 亚洲情综合五月天| 亚洲视频在线免费播放| 亚洲看片无码在线视频| 免费永久国产在线视频| 中文在线观看永久免费| 亚洲黄色网址大全| 国产精品极品美女免费观看 | 国产精品无码亚洲精品2021| 在线a亚洲v天堂网2019无码| 久久精品视频免费看| 亚洲精品免费网站| 国产成人亚洲精品91专区手机| 黄网站免费在线观看| 亚洲中文字幕一区精品自拍| 日本中文一区二区三区亚洲| 精品在线免费观看| 亚洲熟女综合色一区二区三区| 亚洲天堂在线视频| 成视频年人黄网站免费视频| 一区视频免费观看| 亚洲免费一级视频| 久久久久亚洲av毛片大| 韩国免费一级成人毛片|