【发布时间】:2013-05-19 18:09:51
【问题描述】:
编辑1:也许我之前不是很清楚。对于以下情况,我想知道最佳/标准方法。
我有一个 .NET 4 Web 应用程序,出于各种原因,我需要向我们的客户发送唯一链接。(如密码重置、邀请、帐户验证等)
链接结构通常为 mysite/some-action?key=some-unique-value
我应该怎么做才能生成 "some-unique-value" 部分?不管是什么方法,它都不应该破坏我的 URL。
我发现一些关于 SO 的问题与我的需求很接近,但无法完全确定。
也让我知道是否有更好/标准的方法来实现这种功能。谢谢。
【问题讨论】:
-
不能使用 GUID 吗?
-
@Edward 很多人建议不要在 SO 的类似讨论中使用 GUID。所以我不喜欢它们。
-
您将基于什么信任进行加密以及您计划如何避免重放攻击?您可能和我们一样,通过发送与数据库中的某些一次性数据相关联的唯一键。在其他不安全的 URL 中发送加密数据(假设这不是 https)是不安全的
-
@Devin 我不太同意,GUID 不会破坏 HTML,而且非常独特;您必须保存用于防止链接重用的链接导航(嗅探或电子邮件重用)
-
为什么你不能对你认为适合你需要的唯一标识符进行 URL 编码?
标签: c# asp.net encryption