时间敏感的令牌系统?

时间:2011-07-06 19:38:51

标签: authentication token

是否有办法通过电子邮件发送链接,该电子邮件包含验证服务器发送链接的url参数,并验证在生成令牌后的某段时间内点击了链接?

4 个答案:

答案 0 :(得分:2)

您可以执行以下步骤:

  1. 为用户(或您希望向服务器发送访问权限的每个用户)的每个请求生成一个随机的唯一密钥。
  2. 保存密钥,用户的电子邮件(或登录名),令牌生成的时间;
  3. 将密钥发送给用户,以便通过链接访问您的服务器
  4. 当用户访问您的服务器时,您:

    1. 验证以前是否使用过此链接(如果您希望链接仅限一次访问)
    2. 验证令牌何时生成并计算其是否在允许的时间段内(如果它尚未过期)
    3. 允许用户访问 - 做任何你想做的事情
    4. 如果您希望将令牌使用一次,则
    5. 将令牌标记为已使用。

答案 1 :(得分:1)

您只需要一张表来存储令牌,电子邮件地址,生成日期,激活日期

当您生成电子邮件时,您会存储令牌电子邮件&生成日期/时间

在电子邮件中,您放置了一个网址,其中包含指向您网页的链接以及令牌&电子邮件。 e.g:

http://mysite.co.uk/activate.aspx?token=jhsdjsdslkwww7474&email=blah@blah.com

然后,网页必须找到令牌和电子邮件地址,检查日期并更新激活的日期(如果有效。)

答案 2 :(得分:0)

我会将随机UUID存储在分布式缓存中(对于负载平衡的多节点系统),并按照上面提到的woliveirajr进行操作。您还需要确保用户不会滥用您的系统,因此在负载均衡器(F5)中进行一些配置以检测人员与程序化请求将有助于引入一定程度的保护。在您认为必要时修改您的安全策略。

答案 3 :(得分:-1)

如果开发了一个系统来生成唯一密钥,请通过电子邮件发送这些密钥,并使用这些密钥接收来自电子邮件的http请求。然后是的。