2011-06-12 51 views
1

我正在開發一個asp.net mvc應用程序,其中我在會話對象中保留用戶憑據。這是在全局asax會話啓動方法中啓動的。並有一個statik類獲得或設置。我如何添加記住我的功能。它基於asp.net的表單身份驗證嗎?記住我在自定義會話對象中的功能

回答

4

是的,你可能想要表單身份驗證。您使用像[Authorize]這樣的屬性來「保護」您需要登錄的控制器,併爲登錄內容提供新的控制器。不要以爲這個設置要求你在全局asax文件或會話中做很多/任何事情。

這裏是一個開始:

http://msdn.microsoft.com/en-us/library/ff398049.aspx

本教程假設您使用了「新的MVC應用程序」模板,在登錄功能默認設置。可能有更多的關於這個主題的教程,搜索查詢「MVC Forms Authentication Tutorial」應該可以幫到你。當然,其中一些包括設置基本的web.config的東西。

+0

Jeroen感謝您的快速回復。表單身份驗證票據僅提供用戶角色以保存在cookie中?我對嗎?如何保留cookie中的其他信息以提供記住我的信息? – gandil 2011-06-12 21:27:03

+0

是的,可以調用[SetAuthCookie](http://msdn.microsoft.com/zh-cn/library/system.web.security.formsauthentication.setauthcookie.aspx)來處理大多數麻煩。 。如果您選擇在Visual Studio中使用基本設置模板,那麼調用應該已經在您身邊了,我想。 – Jeroen 2011-06-12 21:31:57

1

您可以在cookie和session中保存用戶名其他信息。當你需要檢查其他信息時,他們是否在會話中。如果沒有,你可以從基於cookie的用戶名從數據庫中獲取它們並保存會話。

+0

Fro怎麼樣,如果我需要比用戶名提供憑據登錄。我需要哪個網站用戶登錄。我怎樣才能爲該用戶保留多個cookie。我的應用程序實際上是運行在相同代碼上的多個網站。我根據他輸入的網址檢查用戶的安全性。 – gandil 2011-06-12 21:44:33

+0

我在cookie中知道的是保存它來自哪個域的信息。我不是1oo%肯定,但我認爲餅乾不應該互相干擾。 – Fro 2011-06-12 21:58:15