美文网首页
rails中用户激活和密码重设

rails中用户激活和密码重设

作者: kamionayuki | 来源:发表于2015-05-30 09:47 被阅读378次

    只是记录一下思路,具体实现可参考rails tutorial第10章节,非常详细。
    用户激活

    1. 在注册的时候,随机生成一个唯一的token
    2. 然后根据token生成一个加密的字符串存储在数据库中activation_digest
    3. 同时生成一个链接(该链接中包含刚刚生成的token和用户的email),发送到用户的邮箱中。
    4. 当用户打开该链接时,判断链接中传过来的emailtoken是否正确,如果正确,则激活用户并登录。

    密码重设

    1. 通过views,获得忘记登录密码的邮箱
    2. 随机生成一个token
    3. 根据token生成一个加密的字符串存储在数据库中reset_digest,同时还生成一个reset_sent_at时间,用来判断reset_digest的过期时间
    4. 生成一个链接(包含刚刚生成的token和用户的email),发送到用户的邮箱中。
    5. 用户打开链接后,得到一个重新输入密码的页面(该页面需要包含emailtoken的属性,以便后续的操作。因为token是公开的,所以可以显示在url中,email则可以通过hidden_tag_field来隐藏显示
    6. 用户提交后,判断两次密码是否都为空,判断emailtoken是否正确,判断用户是否是激活用户,再判断reset_diget是否过期。如果都正确,则密码重设成功。

    相关文章

      网友评论

          本文标题:rails中用户激活和密码重设

          本文链接:https://www.haomeiwen.com/subject/cqarqttx.html