asp.net - 电子邮件验证链接的生成

标签 asp.net security validation email

对于 Web 应用程序,我想生成一个电子邮件验证链接并将其发送给用户。像在许多公共(public)网站上一样,用户应该点击它来验证他的电子邮件地址。看起来与此类似:

http://www.foo.bar/validation?code=421affe123j4h141k2l3bjkbf43134kjbfkl34bfk3b4fkjb43ffe

任何人都可以帮助我提供一些关于正确生成这些验证 token 的提示吗?谷歌搜索最佳实践比我想象的要困难得多。链接应该:

  • ...不需要用户先登录。
  • ...不泄露任何登录凭据以确保应用程序安全
  • ...让我作为开发人员有效地验证 token 。我很确定我需要一种从代码中提取用户标识符以满足此标准的方法。不是吗?

此外,您会选择保存在某处的随机代码,还是我可以重新计算以进行验证的生成代码?

感谢您的回复!

马蒂亚斯

附:我正在使用 ASP.NET 3.5,以防有开箱即用的功能来执行此操作。

最佳答案

一些帮助您入门的建议:

  • 使用 GUID
  • 使用某种加盐哈希(MD5、SHA1 等)
  • 使用随机字符串(字符越多,发生冲突的可能性越小)
  • 将其临时存储在数据库中,并为其添加时间戳,使其在一段时间后过期

关于asp.net - 电子邮件验证链接的生成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1125470/

相关文章:

c# - 在 Asp.Net 中获取 jQuery Ajax 返回数据

asp.net - 什么是 <%= 或 <% : called in ASP. NET?

php - PHP 的 FILTER_VALIDATE_EMAIL 是否提供足够的安全性?

c# - 您最有用的自定义 ASP.NET MVC 2.0 验证属性是什么

css - Internet Explorer 固定位置无法正常工作

c# - 如何从 C# 代码隐藏生成 sql 脚本文件?

asp.net - 如何在域和子域之间共享cookie,但不在其他子域之间共享cookie

javascript - TCP 套接字、JSON 和安全性

objective-c - 如何安装 Mac OS X Security Auth 插件?

jquery - 我可以让 IE7、HTML5 表单验证和 jQuery .submit 事件一起工作吗