2011-09-06 53 views
1

我學習.NET MVC3,我如何用戶驗證工作很迷茫,希望你們都可以讓我在正確的方向指向。我的應用程序需要有用戶和組,每個用戶和組都需要存儲超出驗證所需的數據。例如,我的用戶對象需要能夠存儲電話,傳真和電子郵件數據以及他們是否是項目經理。我的小組需要存儲關於該小組的其他數據,例如網站。.NET MVC用戶/組認證

我使用實體爲我的其他車型。

我是否應爲我的用戶和組模型並以某種方式將其與會員認證鏈接?或者是以某種方式構建的類型?或者我需要一個自定義會員供應商?

對不起,如果我似乎無知。我一直在做.net一個星期。

我來自一個Django的背景下,如果說在解釋幫助。

謝謝!

回答

0

你當然可以使用窗體身份驗證和使用默認aspnet_Users和aspnet_Roles表來處理事情一樣登錄帳戶和你可能對本站有各種角色,然後將這些角色分配給用戶。這將允許您通過[Authorize(Roles = "Administrators")]您的控制器操作來控制誰可以做什麼。您可以在此級別設置一個「項目經理」角色,並根據該指定控制數據庫,這是有意義的。如果沒有,你可以把這些信息放在你自己的表格中。

在我的情況下,我需要將數據與用戶關聯,因此我在自己的數據庫中創建了特定於應用程序的Users表,然後通過將Guid列添加到應用程序的Users表中,將用戶的aspnetdb Users錶行添加到應用程序的Users表中我自己的Users表,並使用來自aspnet_Users表數據的UserId填充該表。通過這種方式,當用戶登錄系統時,我可以檢索適當的數據(例如「我的食譜」)。可能有不同的/更好的方法來解決這個問題,但這就是我最終爲自己的情況所做的。在我的應用程序的數據庫中,我創建了自己的表來處理用戶和組之類的事情,因爲有很多感興趣的領域。我根本不想改變aspnetdb中的表格。但是,我會感興趣的是,聽聽其他人的想法。

你可以看到一個問題,我發佈了關於這個問題here

+0

這基本上是我最終做的。我在我自己的數據庫中創建了一個用戶和組表,並將我的用戶表存儲在個人檔案信息中,並與內置用戶以及組關聯起來。由於任務分爲管理員和非管理員任務,因此我最終只需要管理員角色。 – lovefaithswing