【发布时间】:2019-10-03 19:18:26
【问题描述】:
我使用默认的 GeneratePasswordResetToken 方法在用户的电子邮件中发送密码重置令牌,但它非常大,有 200 到 300 个字符长。我想制作更小的令牌,如 5/6 位长,并在 3 分钟内过期。我该怎么做?
【问题讨论】:
-
有什么特别的原因吗?大概您将其作为链接的一部分发送,因此用户不需要键入它,对吗?另外,3 分钟似乎很短——如果他们的电子邮件客户端只同步 15 分钟呢?
-
是的,3 分钟可能太短,以至于电子邮件甚至无法到达客户端的 SMTP 服务器。
-
是的。我不想通过链接发送它。因为我有角度作为我的前端。用户必须复制令牌并将其粘贴到另一个表单中。
-
有什么意义?这不是一种确认。它不使用不同的频道,这就是重点。
-
into user's email.这不是您在 cmets 中要求的。您要求将某些内容发送到浏览器。当前令牌没有有问题,实际上链接应该保持原样 - 该令牌是唯一的、加密和签名的,以确保它不会被劫持并且不能重播
标签: c# asp.net-web-api asp.net-identity websecurity