posts - 165, comments - 198, trackbacks - 0, articles - 1
            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          權(quán)限設(shè)計(jì)的探討閱讀后感

          Posted on 2008-04-07 22:49 G_G 閱讀(2818) 評(píng)論(6)  編輯  收藏 所屬分類: javaGeneral

          ????權(quán)限設(shè)計(jì)的探討閱讀后感

          ????文章路徑:http://www.chinaitpower.com/A200508/2005-08-07/183934.html

          ????權(quán)限設(shè)計(jì)通常包括數(shù)據(jù)庫(kù)設(shè)計(jì)、應(yīng)用程序接口(API)設(shè)計(jì)、程序?qū)崿F(xiàn)三個(gè)部分。

          ????權(quán)限分類:

          ????????首先是針對(duì)數(shù)據(jù)存取的權(quán)限,通常有錄入、瀏覽、修改、刪除四種。

          ????????其次是功能,它可以包括例如統(tǒng)計(jì)等所有非直接數(shù)據(jù)存取操作,另外,我們還可能對(duì)一些關(guān)鍵數(shù)據(jù)表某些字段的存取進(jìn)行限制。

          ?

          ?

          權(quán)限表及相關(guān)內(nèi)容大體可以用六個(gè)表來(lái)描述,如下:?
          ????1 擁有權(quán)限角色(即用戶組):具體擁有權(quán)限描述實(shí)體。

          ????2 用戶表:用戶的描述,其它(如地址、電話等信息);?
          ????3 角色-用戶對(duì)應(yīng)表:該表記錄用戶與角色之間的對(duì)應(yīng)關(guān)系(多對(duì)多關(guān)系),一個(gè)用戶可以隸屬于多個(gè)角色,一個(gè)角色組也可擁有多個(gè)用戶。

          ????4 權(quán)限列表:程序所有權(quán)限列表。該表記錄所有要加以控制的權(quán)限,如錄入、修改、刪除、執(zhí)行等;?
          ????5 權(quán)限-角色-用戶對(duì)應(yīng)表權(quán)限對(duì)應(yīng)角色(多對(duì)多關(guān)系)再由4表關(guān)系到用戶

          ?

          在探討文中的第4條,我怎么都不太理解?望大家探討。反向權(quán)限嗎?那怎么和系統(tǒng)中的擁有一起描述?

          ?

          下面提出一些自己的見(jiàn)解:

          ???? 1 用戶表:用戶的描述,其它(如地址、電話等信息);?

          ?? 2 權(quán)限列表:程序所有權(quán)限列表。該表記錄所有要加以控制的權(quán)限,如錄入、修改、刪除、執(zhí)行等;?
          ???3 權(quán)限樹(模糊看成角色,但有些不同。樹性結(jié)構(gòu),結(jié)構(gòu)數(shù)據(jù)庫(kù)中表外鍵自己):孩子接點(diǎn)繼承父親接點(diǎn)全部權(quán)限,并在次上擴(kuò)充和刪減權(quán)限建立自己分支。

          ???4 權(quán)限列表-權(quán)限樹:(多對(duì)多關(guān)系)用于描述此權(quán)限樹接點(diǎn)對(duì)父親接點(diǎn)權(quán)限繼承下,由自己添加和消減的權(quán)限

          ????????????????????????????????????????本表中用一列枚舉列用于表示本紀(jì)錄是添加或刪減權(quán)限。

          ???5 用戶-權(quán)限樹:權(quán)限樹接點(diǎn)對(duì)應(yīng)用戶(多對(duì)一)關(guān)系。

          感覺(jué)自己的這種框架,能很好的擴(kuò)充(在某接點(diǎn)下增,刪某權(quán)限或直接找到最向近的一個(gè)權(quán)限樹接點(diǎn)并繼承)??

          大家多說(shuō)說(shuō)自己的見(jiàn)解,和對(duì)比下這兩個(gè)框架的一些優(yōu)缺點(diǎn)把。本人隨時(shí)恭聽(tīng)。G_G

          與2008-4-7 22:50北京

          google doc 原稿:?http://docs.google.com/Doc?id=dkvfctc_16hgvfkbfs

          ?


          評(píng)論

          # re: 權(quán)限設(shè)計(jì)的探討閱讀后感  回復(fù)  更多評(píng)論   

          2008-04-08 13:33 by Ron
          我關(guān)于權(quán)限系統(tǒng)的一篇總結(jié)。
          http://ronliu.freehoxt.com/blog/?p=10
          所謂“限定內(nèi)容列表”,用來(lái)限制用戶所能操作的表的范圍,字段的范圍。比如對(duì)某些字段只讀,不過(guò)我傾向與單獨(dú)做個(gè)表。

          # re: 權(quán)限設(shè)計(jì)的探討閱讀后感  回復(fù)  更多評(píng)論   

          2008-04-08 21:05 by FastUnit
          在jdon上看過(guò)幾篇不錯(cuò)的討論:
          http://www.jdon.com/jivejdon/thread/7309.html
          http://www.jdon.com/jivejdon/thread/10122.html
          http://www.jdon.com/jivejdon/thread/4110.html

          我自己的設(shè)計(jì)大致上是這樣分解的:
          1、權(quán)限點(diǎn):訪問(wèn)權(quán)限(頁(yè)面權(quán)限、點(diǎn)權(quán)限、列權(quán)限、行權(quán)限/數(shù)據(jù)權(quán)限),執(zhí)行權(quán)限(包含增刪改和其他業(yè)務(wù)操作)
          2、組織結(jié)構(gòu):用戶、角色、用戶組、機(jī)構(gòu)(后兩者可選),允許對(duì)用戶從不同角度分組,方便管理和降低授權(quán)工作量
          3、權(quán)限點(diǎn)與用戶關(guān)聯(lián):以角色為核心間接關(guān)聯(lián),分級(jí)授權(quán)
          4、權(quán)限檢查:由可配置的攔截器統(tǒng)一管理

          # re: 權(quán)限設(shè)計(jì)的探討閱讀后感  回復(fù)  更多評(píng)論   

          2008-04-08 22:18 by 和風(fēng)細(xì)雨
          關(guān)注一下。

          # re: 權(quán)限設(shè)計(jì)的探討閱讀后感  回復(fù)  更多評(píng)論   

          2008-04-11 08:35 by 如坐春風(fēng)
          http://www.aygfsteel.com/sitinspring/archive/2008/04/10/191768.html

          這是我對(duì)權(quán)限系統(tǒng)的一點(diǎn)粗淺看法.

          # re: 權(quán)限設(shè)計(jì)的探討閱讀后感  回復(fù)  更多評(píng)論   

          2008-04-12 12:55 by 一農(nóng)
          建議大家還是深入了解一下Acegi,Acegi設(shè)計(jì)的思路和樓主有所不同。在Acegi里有用戶,授權(quán),資源,以及在資源被訪問(wèn)前進(jìn)行權(quán)限的檢查。一個(gè)用戶可以有多個(gè)授權(quán),一個(gè)授權(quán)可以對(duì)應(yīng)多種資源,而資源可以多種多樣。在Acegi的默認(rèn)實(shí)現(xiàn)了有url,方法,領(lǐng)域?qū)ο蟆6脩艉褪跈?quán)的關(guān)系,并不只是直接把授權(quán)交給用戶,還可以把授權(quán)分配給角色,給用戶組,給部門等,然后用戶和角色,用戶組,部門關(guān)聯(lián)起來(lái),幾種分配方式可以配合使用。
          按照這種思路,采用不同的授權(quán)方式,應(yīng)該是可以用一套類似的程序,實(shí)現(xiàn)多種的授權(quán)方式。Acegi關(guān)注的夠底層,所以可以有更大的擴(kuò)展,適應(yīng)更多的情況。

          # re: 權(quán)限設(shè)計(jì)的探討閱讀后感  回復(fù)  更多評(píng)論   

          2008-04-14 09:20 by G_G
          @一農(nóng)
          謝謝提醒!
          主站蜘蛛池模板: 全州县| 屏山县| 宁强县| 衡东县| 朝阳县| 弋阳县| 东丽区| 宣武区| 和硕县| 元谋县| 南康市| 阿荣旗| 罗江县| 汝阳县| 巴林左旗| 曲周县| 常德市| 宿迁市| 包头市| 兴海县| 长宁区| 弥渡县| 康保县| 武宁县| 岳阳县| 隆尧县| 榆树市| 株洲市| 思茅市| 颍上县| 平阴县| 宜昌市| 连州市| 兴仁县| 邛崃市| 定安县| 福安市| 东乌珠穆沁旗| 天柱县| 诸城市| 兴义市|