相关疑难解决方法(0)

在使用nonce的电子邮件中激活/注册/密码重置链接的最佳做法是什么

应用程序发送电子邮件以验证用户帐户或重置密码.我相信以下是应该的方式,我要求参考和实现.

如果应用程序必须在电子邮件中发送链接以验证用户的地址,根据我的观点,链接和应用程序对链接的处理应具有以下特征:

  1. 该链接在请求URI()中包含一个noncehttp://host/path?nonce.
  2. 在链接(GET)之后,向用户呈现表单,可选地具有随机数.
  3. 用户确认输入(POST).
  4. 服务器接收请求和
    • 检查输入参数,
    • 执行更改,
    • 并使nonce无效.

根据安全和幂等方法的HTTP RFC,这应该是正确的.

问题是这个过程涉及一个额外的页面或用户操作(第3项),这被很多人认为是多余的(如果不是无用的).我在向同行和客户介绍这种方法时遇到了问题,因此我要求更广泛的技术小组提供相关信息.我跳过POST步骤的唯一论点是可能从浏览器预加载链接.

  • 是否有关于这个主题的参考资料可以更好地解释这个想法并说服一个非技术人员(来自期刊,博客......的最佳实践)?
  • 是否有实施此方法的参考站点(最好是受欢迎且有许多用户)?
    • 如果没有,是否有记录原因或等效替代方案?

谢谢你,
Kariem


细节幸免

我保持主要部分简短,但为了减少关于我故意遗漏的细节的太多讨论,我将添加一些假设:

  • 电子邮件的内容不是此讨论的一部分.用户知道她必须单击链接才能执行操作.如果用户没有反应,则不会发生任何事情,这也是已知的.
  • 我们不必说明我们邮寄用户的原因,也没有说明通信政策.我们假设用户希望收到电子邮件.
  • nonce具有到期时间戳,并且与收件人电子邮件地址直接关联以减少重复.

笔记

使用OpenID等,普通的Web应用程序可以免于实施标准的用户帐户管理(密码,电子邮件......),但仍有一些客户需要" 他们自己的用户 "

奇怪的是,我还没有找到令人满意的问题,也没有回答.到目前为止我发现了什么:

security authentication http idempotent

58
推荐指数
2
解决办法
3万
查看次数

标签 统计

authentication ×1

http ×1

idempotent ×1

security ×1