2012-09-28 57 views
1

您能否建議我哪種設計模式可用於具有不同用戶角色的應用程序(Web應用程序)。我的應用程序有一個管理員,人力資源經理,助理經理人和職員爲具有不同用戶角色的應用程序提供設計模式

管理員擁有在Web應用程序 HR只能訪問只有幾頁,說第1頁和第2頁(注有權訪問的每個頁面的正確的管理員可以在將來) 經理-Managers添加特權更多頁面可以查看有相應的人員

是否有任何的設計模式來實現上述功能。由於更多的用戶角色和頁面可以在未來如果要阻止在頁面級別的訪問被添加

感謝

回答

4

一般來說,設計用戶角色時,該Decorator Pattern是合適的解決方案。

1

,你會發現你在一個需要的一切或其他安全框架(如春的安全性)。

如果您希望能夠鎖定對某些功能的訪問權限,則有一些選項。

對於大多數這些選項,最好不要使用角色,而要使用權限。角色可以擁有多個權限。這可以提供很大的靈活性。您可以看看some MVC derivations。控制器上的方法可以保證。您可以將每個功能映射到一個權限。

如果結合這與command pattern你可以在這個級別添加安全,然後權限映射一來一往的命令。通過這個,讓UI控件反映當前用戶的權限變得非常容易。 (see Actions in Delphi and Spring

最後一個選項,如果給我最美麗的和用戶友好。

2

嗯,我知道這是一箇舊的帖子..但這是我設計的類似的東西,你可以有任何數量的角色。最初,每個用戶在登錄後都是訪問者,他們可以擁有任何用戶角色。我用這個裝飾模式。

加我已添加數據庫和通信接口。 (大多數Web應用程序都需要這個)我已經使用了Strategy設計模式,因此用戶可以擁有各種數據庫類(Mysql,MsSql)以及各種通信方法(Email,SMS)。同樣,您可以添加自己的付款界面來處理各種類型的付款選項。

img

相關問題