我們使用一個名爲Universe的IBM數據庫,它將所有用戶標識,密碼和配置文件信息保存在名爲USERINFO的表中。在Universe數據庫中處理ASP.NET MVC中的身份驗證的最佳方式是什麼?
我可以使用成員資格提供程序連接到此數據庫並驗證用戶嗎?
數據庫訪問實際上是通過Web服務,因爲我們沒有直接連接到數據庫。
我們有一個名爲GetUserInfo的Web服務方法,它接受用戶名參數。該方法將返回密碼和配置文件信息。
我們使用一個名爲Universe的IBM數據庫,它將所有用戶標識,密碼和配置文件信息保存在名爲USERINFO的表中。在Universe數據庫中處理ASP.NET MVC中的身份驗證的最佳方式是什麼?
我可以使用成員資格提供程序連接到此數據庫並驗證用戶嗎?
數據庫訪問實際上是通過Web服務,因爲我們沒有直接連接到數據庫。
我們有一個名爲GetUserInfo的Web服務方法,它接受用戶名參數。該方法將返回密碼和配置文件信息。
如上所述,您需要創建一個非常簡單的自定義成員資格提供程序。您將創建一個從System.Web.Security.MembershipProvider繼承的.NET類。有幾種方法需要在你的類中被覆蓋,但是大多數方法甚至都沒有被MVC賬戶控制器使用。你想要覆蓋的主要方法是ValidateUser(用戶名,密碼),它將使用戶登錄。在實現了你的類之後,你需要在web.config中註冊它,這也很容易。
你可以找到一個自定義提供這裏的樣本: http://msdn.microsoft.com/en-us/library/6tc47t75(VS.80).aspx
而且在整個過程中的教程在這裏: http://www.15seconds.com/issue/050216.htm
請記住,製作自定義提供了MVC的過程對於一個標準的ASP.NET網站來說也是如此,但是MVC並沒有充分利用MembershipProvider類的所有方法,因此實現起來要容易得多。
您必須爲此創建自定義提供程序。這不是很難,只要你可以訪問Web服務沒有問題。
您是否研究過UniObjects接口?它來自Universe,但需要安裝。它可以完全訪問所有數據庫功能。登錄,選擇文件,讀取,寫入,刪除,創建新文件等。