曬曬公司的許可權管理

2021-09-30 08:44:39 字數 2309 閱讀 1487

先談想法

我記得我之前有很不怎麼樣的**規範寫過乙個關於許可權管理 的系統,分享一下自己動手做出來的後台許可權管理系統

因為當時的水平有限,呵呵,

這個許可權管理 主要是實現了角色這個概念,我是根據使用者所屬的角色不同,分載入的功能不同的,雖說有點那個,不過也算是實現 了,對是入門的新手來說還是乙個不錯的例子,有了這個例子再去做,具體到控制項每乙個使用者的功能就會變得非常方便了。思路是一樣的,使用者與功能的對應,就相當到角色與功能的對應關係一樣。

在做許可權功能的時候我們必須明天這樣幾個物件之間的關係

1.角色

2.功能

3.使用者

它們三個之間有什麼關係呢?

我用幾句話來總結一下大家看合適不?

1.乙個使用者可以對應多個角色,多個角色也可以對應乙個使用者。多對多關係

2.乙個角色可以對應多個功能,多個功用也可以對應乙個角色。多對多關係

3.乙個使用者可以對應多個功能,多個功能也可以對應乙個使用者。多對多關係

總起來使用者的功能就是,乙個使用者可以有多個角色,多個功能,使用者不僅僅有角色所對應的功能,還可以有角色之外的功能。也就是乙個使用者不僅僅有它所在角色的功能,還可以額外加乙個功能,自由性更大了。

我們先來分析乙個最重要的三個物件之間的關係吧如下圖

其實我們公司裡的許可權實現是很簡單的,我把他們三個的關係用三個表來體現出來

1. 使用者與功能對應表

2.使用者與角色對應關係

3.角色與功能對應關係

如下圖

我先把這幾張表的主要字段說明 一下吧

1.使用者表:使用者

id、註冊時間、

說明資訊

暱稱、、狀態id、

等級id。

2.功能表 功能

id、功能名稱、

、對應介面、

說明、排序號、

是否刪除

、狀態id。

3.角色表

角色表id、

角色名稱、

對應、預設位址、

排序號、

是否刪除、

狀態id。

4.角色對功能

角色表id

、功能表id、

說明、註冊時間。 5.

使用者對角色

角色id、使用者

id、說明、註冊時間。 6.

使用者對功能 使用者

id、功能id

、說明、

註冊時間。

如果要達到許可權控制的功能 我們還要寫乙個方法來完成

1.先不用說,我們要先完成這對角色表,使用者表,和功能表的增刪改查的功能

2.實現使用者與角色的對應關係,有關這張表的角色id與使用者

id分別來自角色表和使用者表這兩張表,我們要事先查詢出來現有的使用者和角色然後再增加他們之間的關係

當然我們也可以在增加使用者的同時選擇 ,為了更好的客戶體驗,我還打算在角色裡直接新增相應的使用者從屬關係。

3. 實現角色與功能的對應關係,角色表id、

功能表id

要從角色表和使用者表中提取,這裡是關鍵,為了更方便的分配功能,我們提供了批量選擇功能的方法,在選擇乙個角色的同時載入所有的功能 ,關列出目前所具有的功能,可以根據情況選擇功能,只要選擇完成後單擊確定就ok了,說白了就是把所有功能載入到乙個表裡,然後在後面加乙個單選按鈕進行選擇

當然大家也可以選擇其它方法,這只不過是其中一種,

4.實現使用者與功能的對應關係,使用者id、

功能id

,分別來自使用者表和功能表。在這裡其實就是想為乙個特別的使用者開啟一些大於他本身角色的功能,但又不能給全他下乙個角色的功能,所以使用者可以直接對應功能,在查詢乙個使用者的所有功能時,是把所在角色對應的功能與直接對應的功能合併在一起查詢,查出來的功能就是使用者的所有功能了。

5.提供乙個驗證許可權的方法就行了,根據當前功能的id,和使用者的id,來確定使用者的所有功能,關驗證是否具有當前的功能,其實就是查出來使用者與功能表和角色與功能表中的並集就可以了。

所有關於這一塊的圖如下

大家可以說說自己的想法,東西重在交流,我是打算這樣實現公司的許可權控制,我會把我實現的方法一步一步的寫出來給大家分享,希望高手們多多指教啊!

具體的**實現待續中,,,,,

曬曬公司的許可權管理 一

閱讀全文 我記得我之前用很不怎麼樣的 規範寫過乙個關於許可權管理 的系統,分享一下自己動手做出來的後台許可權管理系統 因為當時的水平有限,呵呵,這個許可權管理 主要是實現了角色這個概念,我是根據使用者所屬的角色不同,分載入的功能不同的,雖說有點那個,不過也算是實現 了,對於入門的新手來說還是乙個不錯...

曬曬長春的IT

長春對於我來說既熟悉又陌生,熟悉可以說它是我們的省會,每年大學開學都要經過那裡,而陌生是因為我在長春 都找不到。除了火車站。關於長春的it方面,我了解的並不多,可是感覺至少是電信或者說是運營商不怎麼樣。怎麼講呢?我的大學也算是海可以吧,至少畢業的招聘基本上全國的運營商都會過來招聘,但惟獨東北三省的沒...

曬曬長春的IT

萌萌的it人 長春對於我來說既熟悉又陌生,熟悉可以說它是我們的省會,每年大學開學都要經過那裡,而陌生是因為我在長春 都找不到。除了火車站。關於長春的it方面,我了解的並不多,可是感覺至少是電信或者說是運營商不怎麼樣。怎麼講呢?我的大學也算是海可以吧,至少畢業的招聘基本上全國的運營商都會過來招聘,但惟...