2012-07-19 116 views
1

我需要建立一個管理用戶的應用程序,我認爲這將是很好的遵循現有的管理模式,像一個由Windows或Linux的使用,有用戶,組,權限等用戶管理

我無法在互聯網上找到任何地方獲得有關如何實現這一點的解釋。

我的應用程序是一個web應用程序,可能是asp.Net(不太重要的技術)來管理用戶。對於現在的系統管理員,高級用戶,小組管理員和簡單的用戶,我有幾個級別。

每個級別提供的權限,如電力用戶可以看到所有的用戶,可促進用戶將增長到部門經理,可能會降低用戶(比他少的力量)等

有任何地方在哪裏我可以閱讀如何實施這樣的系統?

回答

0

可能使用ASP.NET membership provider將爲您工作。您可以使用將安全信息存儲在Sql Server數據庫中的SqlMembershipProvider。如果您需要更高級的功能(可能更安全),則可以使用Active Directory或ADAMActiveDirectoryMembershipProvider。 ASP.NET成員資格提供程序模型是可定製的,您可以實現自己的提供程序,但現有的提供程序非常強大。

+0

在選擇如何實現這個之前,我想看看其他人如何構建這種結構。我的應用程序管理來自不同地方的用戶和用戶數據(外部Web服務,2個SQL服務器,Active Directory等)。我需要找到一種方法來處理用戶的權限。例如,一個簡單的用戶不能更改Active Directory中的數據,但部分數據除外。另一個例子,一個小組經理只能看到他的小組細節和統計數據(我從Web服務獲得的統計數據)等。我想讀一些關於這個的理論,但我找不到。 – 2012-07-19 12:20:38

+1

您似乎需要處理自定義權限,並且成員資格提供程序只會幫助您處理用戶管理和組成員身份。對於權限,我認爲你需要實現['IPermission'](http://msdn.microsoft.com/en-us/library/system.security.ipermission.aspx)接口。所需的方法是「需求」。毫無疑問,MSDN上的例子並不多,但很容易理解:在實現Demand需求時,獲取當前的委託人並評估執行某些操作所需的權限。如果委託人沒有,則拋出'SecurityException'。 – 2012-07-19 12:39:43