2010-07-28 111 views
0

我想讓我的用戶通過輸入姓名,電子郵件和密碼信息從主頁註冊。提交表單後,我想將用戶重定向到capthca驗證的安全檢查頁面。驗證碼驗證後,用戶將被保存到數據庫。該場景類似於Facebook的主頁註冊功能。ASP.NET MVC註冊與驗證碼

我的問題是,在收集姓名,電子郵件和密碼信息後,我怎樣才能以安全的方式將它們發送到驗證碼驗證頁面(而不是使用querystring發送它們,因爲密碼將在那裏顯示)。本項目不會遵循TempData和Session的使用。

謝謝!

+0

爲什麼不把驗證碼放在同一頁面上,並在發生任何提交之前收到它? – 2010-07-28 06:58:11

+0

有沒有一個原因,你不想只將驗證碼放在同一頁面上? – spinon 2010-07-28 06:58:38

+0

因爲我在主頁上沒有太多的空間,並且驗證碼圖像與我的主頁設計不一致 – 2010-07-28 07:15:10

回答

0

首先,您可以使用Recaptcha for .NET(http://recaptchanet.codeplex.com)爲您的MVC .NET項目使用健壯且安全的驗證碼解決方案。

當您提交表單,創建一個cookie,並與用戶的會話ID作爲密鑰來加密它的價值和有其到期時間是像5分鐘。從驗證碼頁面讀取cookie。我假設你不想將值存儲在服務器上,查詢字符串顯然不可行。

0

我會推薦使用MVCRecaptchahttps://mvcrecaptcha.codeplex.com/)。請注意 - 特別是MVCRecaptcha,而不是一些其他密切相關的實現。

下載包從的NuGet,但是,請確保您不要下載其他的Recaptcha包可用 - 你應該專門下載MVC驗證碼。

然後按照對MVC的reCAPTCHA的CodePlex網站上的說明其餘的啓動和運行。