用戶完成註冊過程後,我們需要發送驗證郵件給用戶。 我知道如何發送電子郵件,但我需要知道發送驗證鏈接的過程是什麼,應該在表中創建一列以保存驗證令牌並將其發送加密。如果我們必須保存驗證令牌,那麼生成此令牌的最佳方式是什麼。我不嘗試任何解決方案。Asp.net驗證郵件
回答
是的,您應該在表格中創建一個列來保存驗證令牌。
你可以激活代碼爲「GUID」
做同樣的一個簡單方法是:
結合用戶ID,驗證令牌和創建日期構建查詢字符串。將合併的字符串
「?用戶=」 + Convert.ToBase64String(Encoding.Unicode.GetBytes(字符串的
待辦事項編碼。格式(「user = {0} & code = {1} & cd = {2}」,User-ID,verification,Creation-date)));
將鏈接發送給用戶
當用戶點擊這個鏈接時,通過使用「&」
編碼吐涎它解碼查詢字符串
獨立的組合值。 Unicode.GetString(Convert.FromBase64String(ActivationDetails))。Split(new Char [] {'&'});
您擁有激活該帳戶所需的所有值。此外,您可以添加您的邏輯和加密方法。但是,基地保持不變。
希望這會有所幫助。
我建議有一個名爲「ActivationToken」的字段,並生成一個GUID。您可以通過調用newid()函數直接在SQL中執行此操作,也可以通過調用Guid.NewGuid()在C#中執行此操作。這是一個非常獨特的/隨機的價值,幾乎不可能暴力破解。
因此,當用戶註冊,你會做這樣的事情:
insert into tblUsers (Username, Password, Active, ActivationToken) values ('johndoe', 'mypassword', 0, newid())
鏈接會是這樣:http://yoururl.com/Activate.aspx?token= {yourActivationGuid}
Update tblUsers set Active=1 where ActivationToken={yourActivationGuid}
如果你的用戶名已經是一個GUID,你可以可能會使用它(例如,如果您使用的是aspnet_user表)。至於不允許登錄,只需檢查Active標誌是否設置爲true。如果不是,請禁止登錄。
所以驗證登錄,你可以這樣做:
select * from tblUsers where Username="johndoe" and Password="mypassword" and Active=1
我會建議生成一個GUID,當用戶註冊成功,這樣的:
Guid theVerificationCode;
theVerificationCode = Guid.NewGuid();
現在存儲在數據庫中列此GUID值,大概在類似User
的表格中。
現在,當您發送電子郵件,您可以提供此驗證碼值通過查詢字符串URL的一部分,就像這樣:
string theVerificationCode = GetVerificationCodeFromDatabase();
string theEmailLink = "https://www.yoursite.com/YourApp/Verify.aspx?code=" + theVerificationCode;
最後,你將需要建立邏輯到Verify.aspx
頁面將匹配在查詢字符串中傳遞的內容與數據庫中的內容匹配,如果它們匹配,則可以允許用戶進行身份驗證,否則將顯示錯誤消息。
- 1. html helper的電子郵件驗證 - ASP.Net
- 2. asp.net電子郵件長度驗證
- 3. ASP.NET會員電子郵件驗證
- 4. ASP.NET自定義驗證電子郵件
- 5. ASP.NET的電子郵件地址驗證
- 6. 電子郵件驗證是ASP.NET
- 7. ASP.Net電子郵件和帳戶驗證
- 8. ASP.NET MVC 4郵編驗證
- 9. 郵件驗證angularjs
- 10. grails郵件驗證
- 11. Android電子郵件驗證與Firebase電子郵件驗證
- 12. Asp.Net驗證控件
- 13. ASP.NET驗證控件
- 14. ASP.NET驗證控件
- 15. 電子郵件郵件字段驗證
- 16. 如何擴展ASP.NET MVC2開箱驗證以驗證信用卡/電子郵件?
- 17. CakePHP電子郵件驗證
- 18. 驗證電子郵件
- 19. rspec電子郵件驗證
- 20. 驗證電子郵件
- 21. Java郵件TLS驗證
- 22. Firebase電子郵件驗證
- 23. ResearchKit:驗證電子郵件
- 24. Jquery - 驗證電子郵件
- 25. 電子郵件驗證javascript
- 26. JavaScript電子郵件驗證
- 27. 郵件地址驗證JAVA
- 28. 電子郵件驗證:JavaScript
- 29. 電子郵件驗證 - HTML
- 30. NSRegularExpression驗證電子郵件
「我不會嘗試任何解決方案」,如果您嘗試了一些冷杉,那麼我們更喜歡它,如果您遇到困難,請回過頭來提問。 –
先試一下,然後來這裏告訴我們 –