【问题标题】:What is the workflow for a secure 'verify by email' system?安全的“通过电子邮件验证”系统的工作流程是什么?
【发布时间】:2012-11-02 07:02:04
【问题描述】:

我正在考虑一个论坛类型的系统,它允许用户在没有帐户但通过电子邮件验证的情况下发布/编辑帖子。

因此,您需要填写表格、提供电子邮件地址、提交,然后在电子邮件中收到一个链接,该链接将“激活”您的帖子。同样的事情要编辑。单击“编辑”,接收带有链接的电子邮件,链接将带您编辑表单。

我正在尝试了解安全执行此操作的确切步骤。如何创建将在一段时间后过期的链接?我如何确保它来自电子邮件地址,而不仅仅是一些通过潜在网址循环的机器人?

感谢您在正确方向上的任何帮助。

我在 Heroku 上使用 Python,flaskPostgres

【问题讨论】:

  • 我理解您试图阻止 SO 用户为我工作,但我已经明确指出,我只是在寻找此类系统如何运行的大致方向。我想在浪费我的时间“尝试”做错误的事情之前,我会来请专家们了解一下。

标签: python email flask email-verification


【解决方案1】:

由于你使用的是烧瓶,你可能想看看它的危险库:

https://itsdangerous.palletsprojects.com/en/2.0.x/

使用 itsdangerous,工作流程可能是这样的:

  1. 用户输入电子邮件并发布。
  2. 使用可绑定到特定电子邮件的itsdangerous 模块生成安全链接
  3. 一旦用户收到电子邮件和步骤 2 中生成的特定 URL,他们可以单击它以确认发布。您甚至可以在用户单击此 URL 时添加额外的检查层,您可以要求他们再次输入他们的电子邮件地址,然后将其与与该 URL 关联的电子邮件进行匹配。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-05
    • 2010-12-02
    • 1970-01-01
    • 1970-01-01
    • 2021-09-21
    • 2020-12-14
    • 2022-01-04
    • 1970-01-01
    相关资源
    最近更新 更多