代码之家  ›  专栏  ›  技术社区  ›  jinsungy

asp.net唯一链接生成器

  •  2
  • jinsungy  · 技术社区  · 16 年前

    在电子邮件中,我希望我的用户能够单击一个链接来确认面试日程。如何动态创建这些URL?

    示例:invitation.aspx?qs=24lkl254524j2re2wtl5y6。

    有什么建议吗?

    3 回复  |  直到 16 年前
        1
  •  1
  •   Tim C    16 年前

    虽然您可以使用GUID并可能将其与数据库中的用户关联,但您需要围绕应用程序如何排除该GUID创建一些业务逻辑。例如,您可能会说UserA有一个GUID,如果在接下来的15分钟内使用该GUID,则让UserA自动登录,但在15分钟后强制用户使用用户名和密码。

    类似地,您可以创建一个查询字符串,类似于u=UserA&时间=1347&date=01282001,然后通过某种类型的散列运行它。当它返回时,取消对其进行刷新(因此您无法使用MD5),检查时间戳,并查看该时间戳创建以来的时间。如果在可接受的时间范围内,则允许用户输入,如果不允许,则强制用户使用用户名和密码。这不需要您将任何内容与数据库中的用户相关联,因此与GUID相比,这可能是一个更简单的解决方案。

        2
  •  2
  •   Oded    16 年前

    Guid NewGuid 方法。

    就我个人而言,在链接上使用之前,我会去掉花括号和破折号。

        3
  •  0
  •   kazinix    14 年前

    在本文中: http://www.ietf.org/rfc/rfc4122.txt

    不要认为UUID很难猜测;它们不应该被使用 作为安全功能(仅拥有就授予
    访问),例如。一个可预测的随机数源将

    推荐文章