2009-09-05 65 views
1

我有一個ASP.Net MVC應用程序,我在SQL Server中使用表單身份驗證。這爲我設置了認證和授權。但是,我還需要跟蹤其他基於人員的數據,如人員的電話號碼,部門,他們的收費率,開始日期等。ASP.Net MVC,基於角色的安全性和其他基於人員的數據

該人可以做什麼由ASP.Net安全)與WHO有關(由我的應用程序控制)。

是否有鏈接ASP.Net與我的應用程序的數據,以獲得更完整的人對象的最佳做法?我可以簡單地擴展ASP.Net表中的信息嗎?將它分開是否更好?有沒有人有任何提示或鏈接的指導?

回答

4

既然你已經在使用ASP.NET窗體身份驗證的ASP.NET RoleProvider可以通過Authorize屬性被整合到MVC是一樣容易安裝。

,你會得到這樣的事情:

[Authorize(IsInRole="Chef")] 
public ActionResult Cook() { // snip ... 

如果你沒有使用所有,另外還有ProfileProvider爲ASP.NET生成配置文件的代碼爲您提供齊全的智能感知支持。您可以自定義的字段你想要什麼類型的數據應該存儲在等等,等等

兩個角色提供和配置文件提供可定製或滾你自己的,也有在互聯網上很多很多文章,會告訴你如何。

使用ASP.NET提供商也給你帶來的好處是,數據在整個ASP.NET請求處理管道,例如自動維護你可以訪問此屬性:

HttpContext.Current.Profile 

...從幾乎任何地方。

+2

儘管你絕對*不想*以這種方式訪問​​它,如果你想能夠測試你的代碼... –